diff --git "a/Refatora\303\247\303\243o, manuten\303\247a\303\265 de software_compressed.pdf" "b/Refatora\303\247\303\243o, manuten\303\247a\303\265 de software_compressed.pdf" new file mode 100644 index 0000000000..54c13e2c68 Binary files /dev/null and "b/Refatora\303\247\303\243o, manuten\303\247a\303\265 de software_compressed.pdf" differ diff --git "a/Relat\303\263rio Trabalho Manuten\303\247\303\243o.pdf" "b/Relat\303\263rio Trabalho Manuten\303\247\303\243o.pdf" new file mode 100644 index 0000000000..bc1ed683d2 Binary files /dev/null and "b/Relat\303\263rio Trabalho Manuten\303\247\303\243o.pdf" differ diff --git a/code_smells_dist_antes.png b/code_smells_dist_antes.png new file mode 100644 index 0000000000..7e8c7d2f31 Binary files /dev/null and b/code_smells_dist_antes.png differ diff --git a/extract_metrics_after_codecarbon.py b/extract_metrics_after_codecarbon.py new file mode 100644 index 0000000000..cbc6ed0fd1 --- /dev/null +++ b/extract_metrics_after_codecarbon.py @@ -0,0 +1,66 @@ +from codecarbon import EmissionsTracker +import subprocess +import sys +import os + +# Configuração + +# Nome do projeto +PROJETO = "supervision" + +# Ponto de entrada do projeto (define como o Python vai executar o projeto). +SCRIPT = "-m" + +# Argumentos necessários para a execução do projeto. +# Se o projeto não precisar de argumentos, deixe vazio: ARGS = [] +ARGS = ["pytest"] + + +# Tempo máximo que o CodeCarbon vai aguardar a execução do projeto antes de encerrar a +# medição e salvar os resultados. +# None -> sem limite — o CodeCarbon aguarda o projeto terminar sozinho. +# Use para scripts e pipelines que executam e terminam naturalmente. +# +# 60 -> encerra após 60 segundos, mesmo que o projeto ainda esteja rodando. +# Use para servidores (Flask, FastAPI, Django) que ficam rodando continuamente e nunca terminariam sozinhos. +TIMEOUT = None + +# Não altere o nome dessa pasta, os relatórios vão ser salvos nela. +PASTA = "metrics-after-codecarbon" + +# Executa com medição +os.makedirs(PASTA, exist_ok=True) + +tracker = EmissionsTracker( + project_name=PROJETO, + measure_power_secs=1, + output_dir=PASTA, + output_file="emissions_depois.csv", + allow_multiple_runs=True, + log_level="error", +) + +print(f"Iniciando medição de emissões para: {PROJETO}") +print(f"Comando: python {SCRIPT} {' '.join(ARGS)}") +if TIMEOUT: + print(f"Timeout: {TIMEOUT} segundos") + +tracker.start() + +try: + resultado = subprocess.run( + [sys.executable, SCRIPT] + ARGS, + timeout=TIMEOUT + ) + exit_code = resultado.returncode +except subprocess.TimeoutExpired: + print("Tempo de medição encerrado.") + exit_code = 0 + +emissions = tracker.stop() + +print(f"\nResultados:") +print(f" Exit code: {exit_code}") +print(f" COâ‚‚ emitido: {emissions * 1000:.6f} g COâ‚‚") +print(f" Arquivo salvo em: {os.path.join(PASTA, 'emissions_depois.csv')}") +print("\nConcluído.") \ No newline at end of file diff --git a/extract_metrics_after_pylint.py b/extract_metrics_after_pylint.py new file mode 100644 index 0000000000..5e3438e6d6 --- /dev/null +++ b/extract_metrics_after_pylint.py @@ -0,0 +1,112 @@ +import json +import os +import subprocess +import sys +from collections import defaultdict, Counter + +# Configuração +PROJETO = "./src" # diretório do código fonte +PASTA = "metrics-after-pylint" # Não altere o nome dessa pasta, os relatórios vão ser salvos nela. + +os.makedirs(PASTA, exist_ok=True) + +# Roda o Pylint +print(f"Rodando pylint em {PROJETO}...") + +resultado = subprocess.run( + ["pylint", PROJETO, "--output-format=json", "--score=y"], + capture_output=True, + text=True, + encoding="utf-8", +) + +# Salva o JSON bruto +caminho_json = os.path.join(PASTA, "pylint_depois.json") +with open(caminho_json, "w", encoding="utf-8") as f: + f.write(resultado.stdout) +print(f"JSON completo salvo em: {caminho_json}") + +# Processa mensagens +try: + mensagens = json.loads(resultado.stdout) +except json.JSONDecodeError: + print("Erro ao processar JSON do Pylint.") + sys.exit(1) + +if not mensagens: + print("Nenhuma mensagem encontrada.") + sys.exit(0) + +# Salva JSONs por categoria +por_tipo = defaultdict(list) +for msg in mensagens: + tipo = msg.get("type", "unknown") + por_tipo[tipo].append(msg) + +tipos_nomes = { + "convention": "pylint_convention_depois.json", + "refactor": "pylint_refactor_depois.json", + "warning": "pylint_warning_depois.json", + "error": "pylint_error_depois.json", + "fatal": "pylint_fatal_depois.json", +} + +for tipo, nome_arquivo in tipos_nomes.items(): + caminho = os.path.join(PASTA, nome_arquivo) + with open(caminho, "w", encoding="utf-8") as f: + json.dump(por_tipo.get(tipo, []), f, indent=2, ensure_ascii=False) + print(f"{len(por_tipo.get(tipo, [])):>5} mensagens → {caminho}") + +print(f"\nTotal: {len(mensagens)} mensagens encontradas.") + +# Ranking da categoria refactor +mensagens_refactor = [msg for msg in mensagens if msg.get("type") == "refactor"] +contagem_simbolos = Counter(msg["symbol"] for msg in mensagens_refactor) +caminho_ranking = os.path.join(PASTA, "pylint_ranking_smells_depois.json") +with open(caminho_ranking, "w", encoding="utf-8") as f: + json.dump( + [{"simbolo": s, "ocorrencias": t} for s, t in contagem_simbolos.most_common()], + f, + indent=2, + ensure_ascii=False, + ) +print(f"Ranking de símbolos salvo em: {caminho_ranking}") + +# Arquivos com mais problemas +por_arquivo = defaultdict(lambda: defaultdict(int)) +for msg in mensagens: + path = msg.get("path", "desconhecido") + tipo = msg.get("type", "unknown") + por_arquivo[path][tipo] += 1 + por_arquivo[path]["total"] += 1 + +arquivos_ordenados = sorted( + [ + {"arquivo": path, **contagens} + for path, contagens in por_arquivo.items() + ], + key=lambda x: x["total"], + reverse=True, +) +caminho_arquivos = os.path.join(PASTA, "pylint_arquivos_criticos_depois.json") +with open(caminho_arquivos, "w", encoding="utf-8") as f: + json.dump(arquivos_ordenados, f, indent=2, ensure_ascii=False) +print(f"Arquivos críticos salvo em: {caminho_arquivos}") + +# Distribuição por categoria +total = len(mensagens) +distribuicao = [ + { + "categoria": tipo, + "ocorrencias": len(msgs), + "percentual": round(len(msgs) / total * 100, 2), + } + for tipo, msgs in por_tipo.items() +] +distribuicao.sort(key=lambda x: x["ocorrencias"], reverse=True) +caminho_dist = os.path.join(PASTA, "pylint_distribuicao_categorias_depois.json") +with open(caminho_dist, "w", encoding="utf-8") as f: + json.dump(distribuicao, f, indent=2, ensure_ascii=False) +print(f"Distribuição por categoria salva em: {caminho_dist}") + +print("\nConcluído.") \ No newline at end of file diff --git a/extract_metrics_after_pytest.py b/extract_metrics_after_pytest.py new file mode 100644 index 0000000000..8c2030c6bb --- /dev/null +++ b/extract_metrics_after_pytest.py @@ -0,0 +1,68 @@ +import os +import subprocess +import sys +from pathlib import Path + +# Configuração, ajuste apenas se necessário. + +# Diretório raiz do projeto, os testes vai começar a execução a petir dele. +PROJETO = "." + +# Diretório dos testes detectado automaticamente, mas pode forçar manualmente +# Exemplos: TESTES = "./tests" ou TESTES = "./test" +TESTES = None + +# Pasta onde os relatórios serão salvos (não altere) +PASTA = "metrics-after-pytest" + +# Detecção automática do diretório de testes +CANDIDATOS = ["tests", "test", "src/tests", "src/test"] + +if TESTES is None: + for candidato in CANDIDATOS: + if Path(candidato).exists(): + TESTES = candidato + break + +if TESTES is None: + print("Erro: diretório de testes não encontrado.") + print(f"Procurado em: {CANDIDATOS}") + print("Defina manualmente a variável TESTES no script.") + sys.exit(1) + +# Execução +os.makedirs(PASTA, exist_ok=True) + +print(f"Projeto : {os.path.abspath(PROJETO)}") +print(f"Testes : {TESTES}") +print(f"Relatórios em: {PASTA}/") +print() + +resultado = subprocess.run( + [ + sys.executable, "-m", "pytest", TESTES, + "-v", + f"--junit-xml={os.path.join(PASTA, 'pytest_depois.xml')}", + f"--html={os.path.join(PASTA, 'pytest_depois.html')}", + "--self-contained-html", + f"--cov={PROJETO}", + "--cov-branch", + f"--cov-report=xml:{os.path.join(PASTA, 'coverage_depois.xml')}", + f"--cov-report=json:{os.path.join(PASTA, 'coverage_depois.json')}", + f"--cov-report=html:{os.path.join(PASTA, 'coverage_depois_html')}", + "--cov-report=term-missing", + ], + cwd=PROJETO, + + text=True, + encoding="utf-8", +) + +print(f"\nExit code: {resultado.returncode}") +print(f"\nArquivos gerados em '{PASTA}':") +print(f" pytest_depois.xml → resultados dos testes em XML") +print(f" pytest_depois.html → relatório visual dos testes") +print(f" coverage_depois.xml → cobertura de código em XML") +print(f" coverage_depois.json → cobertura de código em JSON") +print(f" coverage_depois_html/ → relatório visual de cobertura") +print("\nConcluído.") \ No newline at end of file diff --git a/extract_metrics_after_radon.py b/extract_metrics_after_radon.py new file mode 100644 index 0000000000..24aa586ca0 --- /dev/null +++ b/extract_metrics_after_radon.py @@ -0,0 +1,180 @@ +import csv +import json +import os +import subprocess + +def normalizar_caminho(path): + return path.replace("\\", "/") + +# Gera JSONs via Radon +def rodar_radon(comando): + resultado = subprocess.run(comando, capture_output=True, text=True, encoding="utf-8") + return json.loads(resultado.stdout) + +print("Rodando radon cc...") +cc_data = rodar_radon(["radon", "cc", "./src", "-j"]) +print("Rodando radon mi...") +mi_data = rodar_radon(["radon", "mi", "./src", "-j"]) +print("Rodando radon hal...") +hal_data = rodar_radon(["radon", "hal", "./src", "-j"]) +print("Rodando radon raw...") +raw_data = rodar_radon(["radon", "raw", "./src", "-j"]) + +# Não altere o nome dessa pasta, os relatórios vão ser salvos nela. +pasta = "metrics-after-radon" +os.makedirs(pasta, exist_ok=True) + +with open(os.path.join(pasta, "cc_depois.json"), "w", encoding="utf-8") as f: + json.dump(cc_data, f, indent=2) +with open(os.path.join(pasta, "mi_depois.json"), "w", encoding="utf-8") as f: + json.dump(mi_data, f, indent=2) +with open(os.path.join(pasta, "hal_depois.json"), "w", encoding="utf-8") as f: + json.dump(hal_data, f, indent=2) +with open(os.path.join(pasta, "raw_depois.json"), "w", encoding="utf-8") as f: + json.dump(raw_data, f, indent=2) + +print("JSONs salvos.") + +HAL_FIELDS = ["h1", "h2", "N1", "N2", "vocabulary", "length", + "calculated_length", "volume", "difficulty", + "effort", "time", "bugs"] + +RAW_FIELDS = ["loc", "lloc", "sloc", "comments", "multi", "blank", + "single_comments"] + +rows_cc = [] +rows_cc_arquivo = [] +rows_mi = [] +rows_hal_arquivo = [] +rows_hal_funcao = [] +rows_raw = [] + +# MI por arquivo +for arquivo, dados in mi_data.items(): + rows_mi.append({ + "arquivo": normalizar_caminho(arquivo), + "mi": round(dados["mi"], 4), + "rank_mi": dados["rank"], + }) + +# CC por função e por arquivo +def extrair_funcoes(blocos, arquivo): + resultado = [] + for bloco in blocos: + if bloco["type"] == "class": + continue + resultado.append({ + "arquivo": normalizar_caminho(arquivo), + "tipo": bloco["type"], + "classe": bloco.get("classname") or "", + "nome": bloco["name"], + "rank_cc": bloco["rank"], + "complexity": bloco["complexity"], + "linha_ini": bloco["lineno"], + "linha_fim": bloco["endline"], + }) + if bloco.get("closures"): + resultado += extrair_funcoes(bloco["closures"], arquivo) + return resultado + +vistas = set() + +for arquivo, blocos in cc_data.items(): + funcoes_arquivo = [] + for bloco in extrair_funcoes(blocos, arquivo): + chave = (bloco["arquivo"], bloco["nome"], bloco["linha_ini"]) + if chave in vistas: + continue + vistas.add(chave) + rows_cc.append(bloco) + funcoes_arquivo.append(bloco) + + if funcoes_arquivo: + complexidades = [f["complexity"] for f in funcoes_arquivo] + pior = max(funcoes_arquivo, key=lambda x: x["complexity"]) + rows_cc_arquivo.append({ + "arquivo": normalizar_caminho(arquivo), + "funcoes": len(funcoes_arquivo), + "cc_media": round(sum(complexidades) / len(complexidades), 2), + "cc_max": max(complexidades), + "cc_soma": sum(complexidades), + "pior_rank": pior["rank_cc"], + "pior_classe": pior["classe"], + "pior_funcao": pior["nome"], + "pior_linha_ini": pior["linha_ini"], + }) + else: + rows_cc_arquivo.append({ + "arquivo": normalizar_caminho(arquivo), + "funcoes": 0, + "cc_media": "", + "cc_max": "", + "cc_soma": "", + "pior_rank": "", + "pior_classe": "", + "pior_funcao": "", + "pior_linha_ini": "", + }) + +# Halstead por arquivo e por função +vistos_hal = set() + +for arquivo, dados in hal_data.items(): + arq_norm = normalizar_caminho(arquivo) + + t = dados["total"] + row = {"arquivo": arq_norm, "escopo": "arquivo", "nome": ""} + for field in HAL_FIELDS: + val = t.get(field, 0) or 0 + row[field] = round(val, 4) + rows_hal_arquivo.append(row) + + for nome_func, func_hal in dados.get("functions", {}).items(): + chave = (arq_norm, nome_func) + nome_final = nome_func + if chave in vistos_hal: + count = sum(1 for k in vistos_hal if k[0] == arq_norm and k[1].startswith(nome_func)) + nome_final = f"{nome_func}_{count}" + vistos_hal.add((arq_norm, nome_final)) + + row = {"arquivo": arq_norm, "escopo": "funcao", "nome": nome_final} + for field in HAL_FIELDS: + val = func_hal.get(field, 0) or 0 + row[field] = round(val, 4) + rows_hal_funcao.append(row) + +# Raw por arquivo e total +total_raw = {field: 0 for field in RAW_FIELDS} + +for arquivo, dados in raw_data.items(): + row = {"arquivo": normalizar_caminho(arquivo)} + for field in RAW_FIELDS: + val = dados.get(field, 0) or 0 + row[field] = val + total_raw[field] += val + rows_raw.append(row) + +rows_raw.append({"arquivo": "TOTAL", **total_raw}) + +# Exporta CSVs +def salvar_csv(nome, linhas, ordenar_por=None): + if not linhas: + print(f"Sem dados para {nome}") + return + if ordenar_por: + linhas = sorted(linhas, key=lambda x: (x[ordenar_por] == "", x[ordenar_por])) + caminho = os.path.join(pasta, nome) + with open(caminho, "w", newline="", encoding="utf-8") as f: + writer = csv.DictWriter(f, fieldnames=linhas[0].keys()) + writer.writeheader() + writer.writerows(linhas) + print(f"{len(linhas):>5} linhas → {caminho}") + +salvar_csv("mi_por_arquivo_depois.csv", rows_mi, ordenar_por="mi") +salvar_csv("cc_por_funcao_depois.csv", rows_cc, ordenar_por="complexity") +salvar_csv("cc_por_arquivo_depois.csv", rows_cc_arquivo, ordenar_por="cc_media") +salvar_csv("hal_por_arquivo_depois.csv", rows_hal_arquivo, ordenar_por="effort") +salvar_csv("hal_por_funcao_depois.csv", rows_hal_funcao) +salvar_csv("raw_por_arquivo_e_total_depois.csv", rows_raw, ordenar_por="sloc") + +print("\nConcluído.") \ No newline at end of file diff --git a/extract_metrics_before_codecarbon.py b/extract_metrics_before_codecarbon.py new file mode 100644 index 0000000000..d4a9965a03 --- /dev/null +++ b/extract_metrics_before_codecarbon.py @@ -0,0 +1,63 @@ +from codecarbon import EmissionsTracker +import subprocess +import sys +import os + +# Configuração + +# Nome do projeto +PROJETO = "supervision" + +# Ponto de entrada do projeto (define como o Python vai executar o projeto). +SCRIPT = "-m" + +# Argumentos necessários para a execução do projeto. +# Se o projeto não precisar de argumentos, deixe vazio: ARGS = [] +ARGS = ["pytest"] + + +# Tempo máximo que o CodeCarbon vai aguardar a execução do projeto antes de encerrar a +# medição e salvar os resultados. +# None -> sem limite — o CodeCarbon aguarda o projeto terminar sozinho. +# Use para scripts e pipelines que executam e terminam naturalmente. +# +# 60 -> encerra após 60 segundos, mesmo que o projeto ainda esteja rodando. +# Use para servidores (Flask, FastAPI, Django) que ficam rodando continuamente e nunca terminariam sozinhos. +TIMEOUT = None + +# Não altere o nome dessa pasta, os relatórios vão ser salvos nela. +PASTA = "metrics-before-codecarbon" + +# Executa com medição +os.makedirs(PASTA, exist_ok=True) + +tracker = EmissionsTracker( + project_name=PROJETO, + measure_power_secs=1, + output_dir=PASTA, + output_file="emissions_antes.csv", + allow_multiple_runs=True, + log_level="error", +) + +print(f"Iniciando medição de emissões para: {PROJETO}") +print(f"Comando: python {SCRIPT} {' '.join(ARGS)}") +if TIMEOUT: + print(f"Timeout: {TIMEOUT} segundos") + +tracker.start() + +try: + resultado = subprocess.run([sys.executable, SCRIPT] + ARGS, timeout=TIMEOUT) + exit_code = resultado.returncode +except subprocess.TimeoutExpired: + print("Tempo de medição encerrado.") + exit_code = 0 + +emissions = tracker.stop() + +print(f"\nResultados:") +print(f" Exit code: {exit_code}") +print(f" COâ‚‚ emitido: {emissions * 1000:.6f} g COâ‚‚") +print(f" Arquivo salvo em: {os.path.join(PASTA, 'emissions.csv')}") +print("\nConcluído.") diff --git a/extract_metrics_before_pylint.py b/extract_metrics_before_pylint.py new file mode 100644 index 0000000000..492f8ba2a7 --- /dev/null +++ b/extract_metrics_before_pylint.py @@ -0,0 +1,109 @@ +import json +import os +import subprocess +import sys +from collections import defaultdict, Counter + +# Configuração +PROJETO = "./src" # diretório do código fonte +PASTA = "metrics-before-pylint" # Não altere o nome dessa pasta, os relatórios vão ser salvos nela. + +os.makedirs(PASTA, exist_ok=True) + +# Roda o Pylint +print(f"Rodando pylint em {PROJETO}...") + +resultado = subprocess.run( + ["pylint", PROJETO, "--output-format=json", "--score=y"], + capture_output=True, + text=True, + encoding="utf-8", +) + +# Salva o JSON bruto +caminho_json = os.path.join(PASTA, "pylint_antes.json") +with open(caminho_json, "w", encoding="utf-8") as f: + f.write(resultado.stdout) +print(f"JSON completo salvo em: {caminho_json}") + +# Processa mensagens +try: + mensagens = json.loads(resultado.stdout) +except json.JSONDecodeError: + print("Erro ao processar JSON do Pylint.") + sys.exit(1) + +if not mensagens: + print("Nenhuma mensagem encontrada.") + sys.exit(0) + +# Salva JSONs por categoria +por_tipo = defaultdict(list) +for msg in mensagens: + tipo = msg.get("type", "unknown") + por_tipo[tipo].append(msg) + +tipos_nomes = { + "convention": "pylint_convention_antes.json", + "refactor": "pylint_refactor_antes.json", + "warning": "pylint_warning_antes.json", + "error": "pylint_error_antes.json", + "fatal": "pylint_fatal_antes.json", +} + +for tipo, nome_arquivo in tipos_nomes.items(): + caminho = os.path.join(PASTA, nome_arquivo) + with open(caminho, "w", encoding="utf-8") as f: + json.dump(por_tipo.get(tipo, []), f, indent=2, ensure_ascii=False) + print(f"{len(por_tipo.get(tipo, [])):>5} mensagens → {caminho}") + +print(f"\nTotal: {len(mensagens)} mensagens encontradas.") + +# Ranking da da categoria refactor +mensagens_refactor = [msg for msg in mensagens if msg.get("type") == "refactor"] +contagem_simbolos = Counter(msg["symbol"] for msg in mensagens_refactor) +caminho_ranking = os.path.join(PASTA, "pylint_ranking_smells_antes.json") +with open(caminho_ranking, "w", encoding="utf-8") as f: + json.dump( + [{"simbolo": s, "ocorrencias": t} for s, t in contagem_simbolos.most_common()], + f, + indent=2, + ensure_ascii=False, + ) +print(f"Ranking de símbolos salvo em: {caminho_ranking}") + +# Arquivos com mais problemas +por_arquivo = defaultdict(lambda: defaultdict(int)) +for msg in mensagens: + path = msg.get("path", "desconhecido") + tipo = msg.get("type", "unknown") + por_arquivo[path][tipo] += 1 + por_arquivo[path]["total"] += 1 + +arquivos_ordenados = sorted( + [{"arquivo": path, **contagens} for path, contagens in por_arquivo.items()], + key=lambda x: x["total"], + reverse=True, +) +caminho_arquivos = os.path.join(PASTA, "pylint_arquivos_criticos_antes.json") +with open(caminho_arquivos, "w", encoding="utf-8") as f: + json.dump(arquivos_ordenados, f, indent=2, ensure_ascii=False) +print(f"Arquivos críticos salvo em: {caminho_arquivos}") + +# Distribuição por categoria +total = len(mensagens) +distribuicao = [ + { + "categoria": tipo, + "ocorrencias": len(msgs), + "percentual": round(len(msgs) / total * 100, 2), + } + for tipo, msgs in por_tipo.items() +] +distribuicao.sort(key=lambda x: x["ocorrencias"], reverse=True) +caminho_dist = os.path.join(PASTA, "pylint_distribuicao_categorias_antes.json") +with open(caminho_dist, "w", encoding="utf-8") as f: + json.dump(distribuicao, f, indent=2, ensure_ascii=False) +print(f"Distribuição por categoria salva em: {caminho_dist}") + +print("\nConcluído.") diff --git a/extract_metrics_before_pytest.py b/extract_metrics_before_pytest.py new file mode 100644 index 0000000000..24c3c6866d --- /dev/null +++ b/extract_metrics_before_pytest.py @@ -0,0 +1,70 @@ +import os +import subprocess +import sys +from pathlib import Path + +# Configuração, ajuste apenas se necessário. + +# Diretório raiz do projeto clonado, os testes vai começar a execução a petir dele. +PROJETO = "." + +# Diretório dos testes detectado automaticamente, mas pode forçar manualmente +# Exemplos: TESTES = "./tests" ou TESTES = "./test" +TESTES = None + +# Pasta onde os relatórios serão salvos (não altere) +PASTA = "metrics-before-pytest" + +# Detecção automática do diretório de testes +CANDIDATOS = ["tests", "test", "src/tests", "src/test"] + +if TESTES is None: + for candidato in CANDIDATOS: + if Path(candidato).exists(): + TESTES = candidato + break + +if TESTES is None: + print("Erro: diretório de testes não encontrado.") + print(f"Procurado em: {CANDIDATOS}") + print("Defina manualmente a variável TESTES no script.") + sys.exit(1) + +# Execução +os.makedirs(PASTA, exist_ok=True) + +print(f"Projeto : {os.path.abspath(PROJETO)}") +print(f"Testes : {TESTES}") +print(f"Relatórios em: {PASTA}/") +print() + +resultado = subprocess.run( + [ + sys.executable, + "-m", + "pytest", + TESTES, + "-v", + f"--junit-xml={os.path.join(PASTA, 'pytest_antes.xml')}", + f"--html={os.path.join(PASTA, 'pytest_antes.html')}", + "--self-contained-html", + f"--cov={PROJETO}", + "--cov-branch", + f"--cov-report=xml:{os.path.join(PASTA, 'coverage_antes.xml')}", + f"--cov-report=json:{os.path.join(PASTA, 'coverage_antes.json')}", + f"--cov-report=html:{os.path.join(PASTA, 'coverage_antes_html')}", + "--cov-report=term-missing", + ], + cwd=PROJETO, + text=True, + encoding="utf-8", +) + +print(f"\nExit code: {resultado.returncode}") +print(f"\nArquivos gerados em '{PASTA}':") +print(f" pytest_antes.xml → resultados dos testes em XML") +print(f" pytest_antes.html → relatório visual dos testes") +print(f" coverage_antes.xml → cobertura de código em XML") +print(f" coverage_antes.json → cobertura de código em JSON") +print(f" coverage_antes_html/ → relatório visual de cobertura") +print("\nConcluído.") diff --git a/extract_metrics_before_radon.py b/extract_metrics_before_radon.py new file mode 100644 index 0000000000..a03c057359 --- /dev/null +++ b/extract_metrics_before_radon.py @@ -0,0 +1,209 @@ +import csv +import json +import os +import subprocess + + +def normalizar_caminho(path): + return path.replace("\\", "/") + + +# Gera JSONs via Radon +def rodar_radon(comando): + resultado = subprocess.run( + comando, capture_output=True, text=True, encoding="utf-8" + ) + return json.loads(resultado.stdout) + + +print("Rodando radon cc...") +cc_data = rodar_radon(["radon", "cc", "./src", "-j"]) +print("Rodando radon mi...") +mi_data = rodar_radon(["radon", "mi", "./src", "-j"]) +print("Rodando radon hal...") +hal_data = rodar_radon(["radon", "hal", "./src", "-j"]) +print("Rodando radon raw...") +raw_data = rodar_radon(["radon", "raw", "./src", "-j"]) + +# Não altere o nome dessa pasta, os relatórios vão ser salvos nela. +pasta = "metrics-before-radon" +os.makedirs(pasta, exist_ok=True) + +with open(os.path.join(pasta, "cc_antes.json"), "w", encoding="utf-8") as f: + json.dump(cc_data, f, indent=2) +with open(os.path.join(pasta, "mi_antes.json"), "w", encoding="utf-8") as f: + json.dump(mi_data, f, indent=2) +with open(os.path.join(pasta, "hal_antes.json"), "w", encoding="utf-8") as f: + json.dump(hal_data, f, indent=2) +with open(os.path.join(pasta, "raw_antes.json"), "w", encoding="utf-8") as f: + json.dump(raw_data, f, indent=2) + +print("JSONs salvos.") + +HAL_FIELDS = [ + "h1", + "h2", + "N1", + "N2", + "vocabulary", + "length", + "calculated_length", + "volume", + "difficulty", + "effort", + "time", + "bugs", +] + +RAW_FIELDS = ["loc", "lloc", "sloc", "comments", "multi", "blank", "single_comments"] + +rows_cc = [] +rows_cc_arquivo = [] +rows_mi = [] +rows_hal_arquivo = [] +rows_hal_funcao = [] +rows_raw = [] + +# MI por arquivo +for arquivo, dados in mi_data.items(): + rows_mi.append( + { + "arquivo": normalizar_caminho(arquivo), + "mi": round(dados["mi"], 4), + "rank_mi": dados["rank"], + } + ) + + +# CC por função e por arquivo +def extrair_funcoes(blocos, arquivo): + resultado = [] + for bloco in blocos: + if bloco["type"] == "class": + continue + resultado.append( + { + "arquivo": normalizar_caminho(arquivo), + "tipo": bloco["type"], + "classe": bloco.get("classname") or "", + "nome": bloco["name"], + "rank_cc": bloco["rank"], + "complexity": bloco["complexity"], + "linha_ini": bloco["lineno"], + "linha_fim": bloco["endline"], + } + ) + if bloco.get("closures"): + resultado += extrair_funcoes(bloco["closures"], arquivo) + return resultado + + +vistas = set() + +for arquivo, blocos in cc_data.items(): + funcoes_arquivo = [] + for bloco in extrair_funcoes(blocos, arquivo): + chave = (bloco["arquivo"], bloco["nome"], bloco["linha_ini"]) + if chave in vistas: + continue + vistas.add(chave) + rows_cc.append(bloco) + funcoes_arquivo.append(bloco) + + if funcoes_arquivo: + complexidades = [f["complexity"] for f in funcoes_arquivo] + pior = max(funcoes_arquivo, key=lambda x: x["complexity"]) + rows_cc_arquivo.append( + { + "arquivo": normalizar_caminho(arquivo), + "funcoes": len(funcoes_arquivo), + "cc_media": round(sum(complexidades) / len(complexidades), 2), + "cc_max": max(complexidades), + "cc_soma": sum(complexidades), + "pior_rank": pior["rank_cc"], + "pior_classe": pior["classe"], + "pior_funcao": pior["nome"], + "pior_linha_ini": pior["linha_ini"], + } + ) + else: + rows_cc_arquivo.append( + { + "arquivo": normalizar_caminho(arquivo), + "funcoes": 0, + "cc_media": "", + "cc_max": "", + "cc_soma": "", + "pior_rank": "", + "pior_classe": "", + "pior_funcao": "", + "pior_linha_ini": "", + } + ) + +# Halstead por arquivo e por função +vistos_hal = set() + +for arquivo, dados in hal_data.items(): + arq_norm = normalizar_caminho(arquivo) + + t = dados["total"] + row = {"arquivo": arq_norm, "escopo": "arquivo", "nome": ""} + for field in HAL_FIELDS: + val = t.get(field, 0) or 0 + row[field] = round(val, 4) + rows_hal_arquivo.append(row) + + for nome_func, func_hal in dados.get("functions", {}).items(): + chave = (arq_norm, nome_func) + nome_final = nome_func + if chave in vistos_hal: + count = sum( + 1 for k in vistos_hal if k[0] == arq_norm and k[1].startswith(nome_func) + ) + nome_final = f"{nome_func}_{count}" + vistos_hal.add((arq_norm, nome_final)) + + row = {"arquivo": arq_norm, "escopo": "funcao", "nome": nome_final} + for field in HAL_FIELDS: + val = func_hal.get(field, 0) or 0 + row[field] = round(val, 4) + rows_hal_funcao.append(row) + +# Raw por arquivo e total +total_raw = {field: 0 for field in RAW_FIELDS} + +for arquivo, dados in raw_data.items(): + row = {"arquivo": normalizar_caminho(arquivo)} + for field in RAW_FIELDS: + val = dados.get(field, 0) or 0 + row[field] = val + total_raw[field] += val + rows_raw.append(row) + +rows_raw.append({"arquivo": "TOTAL", **total_raw}) + + +# Exporta CSVs +def salvar_csv(nome, linhas, ordenar_por=None): + if not linhas: + print(f"Sem dados para {nome}") + return + if ordenar_por: + linhas = sorted(linhas, key=lambda x: (x[ordenar_por] == "", x[ordenar_por])) + caminho = os.path.join(pasta, nome) + with open(caminho, "w", newline="", encoding="utf-8") as f: + writer = csv.DictWriter(f, fieldnames=linhas[0].keys()) + writer.writeheader() + writer.writerows(linhas) + print(f"{len(linhas):>5} linhas → {caminho}") + + +salvar_csv("mi_por_arquivo_antes.csv", rows_mi, ordenar_por="mi") +salvar_csv("cc_por_funcao_antes.csv", rows_cc, ordenar_por="complexity") +salvar_csv("cc_por_arquivo_antes.csv", rows_cc_arquivo, ordenar_por="cc_media") +salvar_csv("hal_por_arquivo_antes.csv", rows_hal_arquivo, ordenar_por="effort") +salvar_csv("hal_por_funcao_antes.csv", rows_hal_funcao) +salvar_csv("raw_por_arquivo_e_total_antes.csv", rows_raw, ordenar_por="sloc") + +print("\nConcluído.") diff --git a/extract_score_after_pylint.py b/extract_score_after_pylint.py new file mode 100644 index 0000000000..27b0a16f15 --- /dev/null +++ b/extract_score_after_pylint.py @@ -0,0 +1,23 @@ +import subprocess +import os + +PROJETO = "./src" +PASTA = "metrics-after-pylint" + +os.makedirs(PASTA, exist_ok=True) + +resultado = subprocess.run( + ["pylint", PROJETO, "--score=y"], + capture_output=True, + text=True, + encoding="utf-8", +) + +caminho_score = os.path.join(PASTA, "pylint_score_depois.txt") +with open(caminho_score, "w", encoding="utf-8") as f: + for linha in resultado.stdout.splitlines(): + if "Your code has been rated at" in linha: + f.write(linha + "\n") + print(linha) + +print(f"Score salvo em: {caminho_score}") \ No newline at end of file diff --git a/extract_score_before_pylint.py b/extract_score_before_pylint.py new file mode 100644 index 0000000000..956b1fc5b6 --- /dev/null +++ b/extract_score_before_pylint.py @@ -0,0 +1,23 @@ +import subprocess +import os + +PROJETO = "./src" +PASTA = "metrics-before-pylint" + +os.makedirs(PASTA, exist_ok=True) + +resultado = subprocess.run( + ["pylint", PROJETO, "--score=y"], + capture_output=True, + text=True, + encoding="utf-8", +) + +caminho_score = os.path.join(PASTA, "pylint_score_antes.txt") +with open(caminho_score, "w", encoding="utf-8") as f: + for linha in resultado.stdout.splitlines(): + if "Your code has been rated at" in linha: + f.write(linha + "\n") + print(linha) + +print(f"Score salvo em: {caminho_score}") diff --git a/metrics-after-codecarbon/emissions_depois.csv b/metrics-after-codecarbon/emissions_depois.csv new file mode 100644 index 0000000000..4ccdc8ed97 --- /dev/null +++ b/metrics-after-codecarbon/emissions_depois.csv @@ -0,0 +1,2 @@ +timestamp,project_name,run_id,experiment_id,duration,emissions,emissions_rate,cpu_power,gpu_power,ram_power,cpu_energy,gpu_energy,ram_energy,energy_consumed,water_consumed,country_name,country_iso_code,region,cloud_provider,cloud_region,os,python_version,codecarbon_version,cpu_count,cpu_model,gpu_count,gpu_model,longitude,latitude,ram_total_size,tracking_mode,cpu_utilization_percent,gpu_utilization_percent,ram_utilization_percent,ram_used_gb,on_cloud,pue,wue +2026-06-30T11:35:12,supervision,f5badfa4-fbd6-4c5c-ba6a-bff10859ee52,5b0fa12a-3dd7-45bb-9766-cc326314d9f1,6.8855676999999105,1.9270122431762963e-06,2.798625076587834e-07,4.5082849756500005,0.0,10.0,6.042477765017746e-06,0.0,1.3551334444445553e-05,1.9593812209463297e-05,0.0,Brazil,BRA,ceará,,,Windows-11-10.0.26200-SP0,3.12.10,3.2.8,16,AMD Ryzen 7 7735HS with Radeon Graphics,0,,-39.0159,-4.9702,5.691925048828125,machine,20.0,0,93.16,5.3021995544433596,N,1.0,0.0 diff --git a/metrics-after-pylint/pylint_arquivos_criticos_depois.json b/metrics-after-pylint/pylint_arquivos_criticos_depois.json new file mode 100644 index 0000000000..7b9a7d2397 --- /dev/null +++ b/metrics-after-pylint/pylint_arquivos_criticos_depois.json @@ -0,0 +1,424 @@ +[ + { + "arquivo": "src\\supervision\\annotators\\core.py", + "convention": 15, + "total": 142, + "error": 50, + "refactor": 55, + "warning": 22 + }, + { + "arquivo": "src\\supervision\\validators\\__init__.py", + "convention": 14, + "total": 72, + "refactor": 58 + }, + { + "arquivo": "src\\supervision\\detection\\core.py", + "convention": 39, + "total": 60, + "refactor": 8, + "warning": 1, + "error": 12 + }, + { + "arquivo": "src\\supervision\\metrics\\mean_average_precision.py", + "convention": 21, + "total": 53, + "refactor": 18, + "warning": 4, + "error": 10 + }, + { + "arquivo": "src\\supervision\\detection\\line_zone.py", + "convention": 10, + "total": 48, + "refactor": 13, + "warning": 2, + "error": 23 + }, + { + "arquivo": "src\\supervision\\metrics\\recall.py", + "convention": 8, + "total": 48, + "refactor": 4, + "warning": 4, + "error": 32 + }, + { + "arquivo": "src\\supervision\\tracker\\byte_tracker\\core.py", + "convention": 4, + "total": 42, + "refactor": 4, + "error": 15, + "warning": 19 + }, + { + "arquivo": "src\\supervision\\utils\\image.py", + "convention": 8, + "total": 37, + "error": 19, + "refactor": 10 + }, + { + "arquivo": "src\\supervision\\__init__.py", + "convention": 34, + "total": 34 + }, + { + "arquivo": "src\\supervision\\draw\\color.py", + "convention": 22, + "total": 34, + "refactor": 1, + "error": 11 + }, + { + "arquivo": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "convention": 25, + "total": 34, + "refactor": 2, + "warning": 7 + }, + { + "arquivo": "src\\supervision\\key_points\\annotators.py", + "convention": 4, + "total": 27, + "refactor": 12, + "error": 11 + }, + { + "arquivo": "src\\supervision\\utils\\video.py", + "convention": 4, + "total": 27, + "error": 11, + "warning": 8, + "refactor": 4 + }, + { + "arquivo": "src\\supervision\\draw\\utils.py", + "convention": 1, + "total": 23, + "error": 20, + "refactor": 2 + }, + { + "arquivo": "src\\supervision\\detection\\vlm.py", + "convention": 8, + "total": 22, + "warning": 5, + "refactor": 5, + "error": 4 + }, + { + "arquivo": "src\\supervision\\key_points\\core.py", + "convention": 14, + "total": 22, + "refactor": 6, + "error": 1, + "warning": 1 + }, + { + "arquivo": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "convention": 10, + "total": 21, + "warning": 3, + "refactor": 7, + "error": 1 + }, + { + "arquivo": "src\\supervision\\assets\\list.py", + "convention": 19, + "total": 19 + }, + { + "arquivo": "src\\supervision\\metrics\\mean_average_recall.py", + "convention": 12, + "total": 19, + "refactor": 4, + "warning": 3 + }, + { + "arquivo": "src\\supervision\\dataset\\core.py", + "convention": 4, + "total": 17, + "error": 3, + "warning": 4, + "refactor": 6 + }, + { + "arquivo": "src\\supervision\\dataset\\formats\\yolo.py", + "convention": 5, + "total": 17, + "refactor": 10, + "warning": 1, + "error": 1 + }, + { + "arquivo": "src\\supervision\\detection\\tools\\inference_slicer.py", + "convention": 9, + "total": 17, + "refactor": 5, + "error": 3 + }, + { + "arquivo": "src\\supervision\\annotators\\utils.py", + "convention": 11, + "total": 16, + "refactor": 5 + }, + { + "arquivo": "src\\supervision\\detection\\tools\\polygon_zone.py", + "convention": 11, + "total": 16, + "error": 1, + "refactor": 4 + }, + { + "arquivo": "src\\supervision\\metrics\\f1_score.py", + "convention": 8, + "total": 16, + "warning": 3, + "error": 1, + "refactor": 4 + }, + { + "arquivo": "src\\supervision\\dataset\\formats\\coco.py", + "convention": 5, + "total": 15, + "refactor": 10 + }, + { + "arquivo": "src\\supervision\\detection\\compact_mask.py", + "convention": 3, + "total": 15, + "error": 2, + "refactor": 4, + "warning": 6 + }, + { + "arquivo": "src\\supervision\\metrics\\detection.py", + "convention": 3, + "total": 15, + "refactor": 12 + }, + { + "arquivo": "src\\supervision\\detection\\utils\\masks.py", + "convention": 3, + "total": 14, + "refactor": 3, + "error": 8 + }, + { + "arquivo": "src\\supervision\\metrics\\precision.py", + "convention": 6, + "total": 14, + "refactor": 4, + "warning": 3, + "error": 1 + }, + { + "arquivo": "src\\supervision\\dataset\\utils.py", + "convention": 7, + "total": 10, + "warning": 2, + "error": 1 + }, + { + "arquivo": "src\\supervision\\utils\\file.py", + "convention": 2, + "total": 9, + "warning": 7 + }, + { + "arquivo": "src\\supervision\\dataset\\formats\\pascal_voc.py", + "convention": 2, + "total": 8, + "refactor": 5, + "error": 1 + }, + { + "arquivo": "src\\supervision\\detection\\tools\\csv_sink.py", + "convention": 4, + "total": 8, + "refactor": 2, + "warning": 2 + }, + { + "arquivo": "src\\supervision\\utils\\conversion.py", + "convention": 4, + "total": 8, + "error": 4 + }, + { + "arquivo": "src\\supervision\\detection\\tools\\transformers.py", + "convention": 1, + "total": 7, + "refactor": 6 + }, + { + "arquivo": "src\\supervision\\geometry\\core.py", + "convention": 7, + "total": 7 + }, + { + "arquivo": "src\\supervision\\metrics\\utils\\object_size.py", + "convention": 7, + "total": 7 + }, + { + "arquivo": "src\\supervision\\utils\\internal.py", + "convention": 2, + "total": 7, + "warning": 4, + "refactor": 1 + }, + { + "arquivo": "src\\supervision\\detection\\utils\\internal.py", + "convention": 2, + "total": 6, + "error": 3, + "refactor": 1 + }, + { + "arquivo": "src\\supervision\\keypoint\\annotators.py", + "convention": 2, + "total": 6, + "warning": 4 + }, + { + "arquivo": "src\\supervision\\detection\\tools\\smoother.py", + "convention": 4, + "total": 5, + "refactor": 1 + }, + { + "arquivo": "src\\supervision\\detection\\utils\\converters.py", + "convention": 1, + "total": 5, + "error": 4 + }, + { + "arquivo": "src\\supervision\\metrics\\utils\\utils.py", + "convention": 3, + "total": 5, + "warning": 2 + }, + { + "arquivo": "src\\supervision\\tracker\\byte_tracker\\matching.py", + "convention": 5, + "total": 5 + }, + { + "arquivo": "src\\supervision\\utils\\notebook.py", + "convention": 1, + "total": 5, + "error": 4 + }, + { + "arquivo": "src\\supervision\\annotators\\base.py", + "convention": 3, + "total": 4, + "refactor": 1 + }, + { + "arquivo": "src\\supervision\\tracker\\byte_tracker\\utils.py", + "convention": 4, + "total": 4 + }, + { + "arquivo": "src\\supervision\\detection\\tools\\json_sink.py", + "convention": 1, + "total": 3, + "warning": 1, + "refactor": 1 + }, + { + "arquivo": "src\\supervision\\detection\\utils\\boxes.py", + "convention": 1, + "total": 3, + "error": 1, + "warning": 1 + }, + { + "arquivo": "src\\supervision\\detection\\utils\\polygons.py", + "convention": 1, + "total": 3, + "error": 2 + }, + { + "arquivo": "src\\supervision\\keypoint\\core.py", + "convention": 2, + "total": 3, + "warning": 1 + }, + { + "arquivo": "src\\supervision\\keypoint\\__init__.py", + "convention": 3, + "total": 3 + }, + { + "arquivo": "src\\supervision\\key_points\\skeletons.py", + "convention": 3, + "total": 3 + }, + { + "arquivo": "src\\supervision\\classification\\core.py", + "convention": 2, + "total": 2 + }, + { + "arquivo": "src\\supervision\\draw\\base.py", + "convention": 2, + "total": 2 + }, + { + "arquivo": "src\\supervision\\config.py", + "convention": 1, + "total": 1 + }, + { + "arquivo": "src\\supervision\\assets\\downloader.py", + "convention": 1, + "total": 1 + }, + { + "arquivo": "src\\supervision\\assets\\__init__.py", + "convention": 1, + "total": 1 + }, + { + "arquivo": "src\\supervision\\detection\\utils\\vlms.py", + "convention": 1, + "total": 1 + }, + { + "arquivo": "src\\supervision\\geometry\\utils.py", + "convention": 1, + "total": 1 + }, + { + "arquivo": "src\\supervision\\metrics\\core.py", + "convention": 1, + "total": 1 + }, + { + "arquivo": "src\\supervision\\metrics\\__init__.py", + "convention": 1, + "total": 1 + }, + { + "arquivo": "src\\supervision\\tracker\\byte_tracker\\kalman_filter.py", + "convention": 1, + "total": 1 + }, + { + "arquivo": "src\\supervision\\utils\\iterables.py", + "convention": 1, + "total": 1 + }, + { + "arquivo": "src\\supervision\\utils\\logger.py", + "convention": 1, + "total": 1 + } +] \ No newline at end of file diff --git a/metrics-after-pylint/pylint_convention_depois.json b/metrics-after-pylint/pylint_convention_depois.json new file mode 100644 index 0000000000..400d980f83 --- /dev/null +++ b/metrics-after-pylint/pylint_convention_depois.json @@ -0,0 +1,5540 @@ +[ + { + "type": "convention", + "module": "supervision.config", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\config.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\__init__.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 9, + "column": 0, + "endLine": 33, + "endColumn": 1, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.annotators.core import BackgroundOverlayAnnotator, BlurAnnotator, BoxAnnotator, BoxCornerAnnotator, CircleAnnotator, ColorAnnotator, ComparisonAnnotator, CropAnnotator, DotAnnotator, EllipseAnnotator, HaloAnnotator, HeatMapAnnotator, IconAnnotator, LabelAnnotator, MaskAnnotator, OrientedBoxAnnotator, PercentageBarAnnotator, PixelateAnnotator, PolygonAnnotator, RichLabelAnnotator, RoundBoxAnnotator, TraceAnnotator, TriangleAnnotator\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 34, + "column": 0, + "endLine": 39, + "endColumn": 1, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.annotators.utils import ColorLookup, hex_to_rgba, is_valid_hex, rgba_to_hex\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 40, + "column": 0, + "endLine": 40, + "endColumn": 59, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.classification.core import Classifications\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 41, + "column": 0, + "endLine": 45, + "endColumn": 1, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.dataset.core import BaseDataset, ClassificationDataset, DetectionDataset\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 46, + "column": 0, + "endLine": 46, + "endColumn": 73, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.dataset.formats.coco import get_coco_class_index_mapping\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 47, + "column": 0, + "endLine": 47, + "endColumn": 58, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.detection.compact_mask import CompactMask\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 48, + "column": 0, + "endLine": 48, + "endColumn": 49, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.detection.core import Detections\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 49, + "column": 0, + "endLine": 53, + "endColumn": 1, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.detection.line_zone import LineZone, LineZoneAnnotator, LineZoneAnnotatorMulticlass\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 54, + "column": 0, + "endLine": 54, + "endColumn": 56, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.detection.tools.csv_sink import CSVSink\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 55, + "column": 0, + "endLine": 55, + "endColumn": 72, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.detection.tools.inference_slicer import InferenceSlicer\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 56, + "column": 0, + "endLine": 56, + "endColumn": 58, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.detection.tools.json_sink import JSONSink\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 57, + "column": 0, + "endLine": 57, + "endColumn": 86, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.detection.tools.polygon_zone import PolygonZone, PolygonZoneAnnotator\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 58, + "column": 0, + "endLine": 58, + "endColumn": 67, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.detection.tools.smoother import DetectionsSmoother\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 59, + "column": 0, + "endLine": 66, + "endColumn": 1, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.detection.utils.boxes import clip_boxes, denormalize_boxes, move_boxes, pad_boxes, scale_boxes, xyxyxyxy_to_xyxy\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 67, + "column": 0, + "endLine": 81, + "endColumn": 1, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.detection.utils.converters import is_compressed_rle, mask_to_polygons, mask_to_rle, mask_to_xyxy, polygon_to_mask, polygon_to_xyxy, rle_to_mask, xcycwh_to_xyxy, xywh_to_xyxy, xyxy_to_mask, xyxy_to_polygons, xyxy_to_xcycarh, xyxy_to_xywh\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 82, + "column": 0, + "endLine": 96, + "endColumn": 1, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.detection.utils.iou_and_nms import OverlapFilter, OverlapMetric, box_iou, box_iou_batch, box_iou_batch_with_jaccard, box_non_max_merge, box_non_max_suppression, mask_iou_batch, mask_non_max_merge, mask_non_max_suppression, oriented_box_iou_batch, oriented_box_non_max_merge, oriented_box_non_max_suppression\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 97, + "column": 0, + "endLine": 103, + "endColumn": 1, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.detection.utils.masks import calculate_masks_centroids, contains_holes, contains_multiple_segments, filter_segments_by_distance, move_masks\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 104, + "column": 0, + "endLine": 107, + "endColumn": 1, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.detection.utils.polygons import approximate_polygon, filter_polygons_by_area\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 108, + "column": 0, + "endLine": 108, + "endColumn": 77, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.detection.utils.vlms import edit_distance, fuzzy_match_index\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 109, + "column": 0, + "endLine": 109, + "endColumn": 46, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.detection.vlm import LMM, VLM\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 110, + "column": 0, + "endLine": 110, + "endColumn": 54, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.draw.color import Color, ColorPalette\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 111, + "column": 0, + "endLine": 121, + "endColumn": 1, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.draw.utils import calculate_optimal_line_thickness, calculate_optimal_text_scale, draw_filled_polygon, draw_filled_rectangle, draw_image, draw_line, draw_polygon, draw_rectangle, draw_text\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 122, + "column": 0, + "endLine": 122, + "endColumn": 59, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.geometry.core import Point, Position, Rect\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 123, + "column": 0, + "endLine": 123, + "endColumn": 57, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.geometry.utils import get_polygon_center\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 124, + "column": 0, + "endLine": 132, + "endColumn": 1, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.key_points.annotators import EdgeAnnotator, VertexAnnotator, VertexEllipseAnnotator, VertexEllipseAreaAnnotator, VertexEllipseHaloAnnotator, VertexEllipseOutlineAnnotator, VertexLabelAnnotator\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 133, + "column": 0, + "endLine": 133, + "endColumn": 49, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.key_points.core import KeyPoints\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 134, + "column": 0, + "endLine": 134, + "endColumn": 79, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.metrics.detection import ConfusionMatrix, MeanAveragePrecision\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 135, + "column": 0, + "endLine": 135, + "endColumn": 59, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.tracker.byte_tracker.core import ByteTrack\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 136, + "column": 0, + "endLine": 136, + "endColumn": 69, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.utils.conversion import cv2_to_pillow, pillow_to_cv2\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 137, + "column": 0, + "endLine": 137, + "endColumn": 61, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.utils.file import list_files_with_extensions\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 138, + "column": 0, + "endLine": 148, + "endColumn": 1, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.utils.image import ImageSink, crop_image, get_image_resolution_wh, grayscale_image, letterbox_image, overlay_image, resize_image, scale_image, tint_image\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 149, + "column": 0, + "endLine": 149, + "endColumn": 67, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.utils.notebook import plot_image, plot_images_grid\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 150, + "column": 0, + "endLine": 156, + "endColumn": 1, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.utils.video import FPSMonitor, VideoInfo, VideoSink, get_video_frames_generator, process_video\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision.annotators.base", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\annotators\\base.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.annotators.base", + "obj": "BaseAnnotator", + "line": 7, + "column": 0, + "endLine": 7, + "endColumn": 19, + "path": "src\\supervision\\annotators\\base.py", + "symbol": "missing-class-docstring", + "message": "Missing class docstring", + "message-id": "C0115" + }, + { + "type": "convention", + "module": "supervision.annotators.base", + "obj": "BaseAnnotator.annotate", + "line": 9, + "column": 4, + "endLine": 9, + "endColumn": 16, + "path": "src\\supervision\\annotators\\base.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.annotators.core", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-lines", + "message": "Too many lines in module (3382/1000)", + "message-id": "C0302" + }, + { + "type": "convention", + "module": "supervision.annotators.core", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.annotators.core", + "obj": "_BaseLabelAnnotator.color", + "line": 149, + "column": 4, + "endLine": 149, + "endColumn": 13, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.annotators.core", + "obj": "_BaseLabelAnnotator.color_lookup", + "line": 157, + "column": 4, + "endLine": 157, + "endColumn": 20, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.annotators.core", + "obj": "_BaseLabelAnnotator.text_color", + "line": 165, + "column": 4, + "endLine": 165, + "endColumn": 18, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.annotators.core", + "obj": "_BaseLabelAnnotator.text_padding", + "line": 173, + "column": 4, + "endLine": 173, + "endColumn": 20, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.annotators.core", + "obj": "_BaseLabelAnnotator.text_anchor", + "line": 181, + "column": 4, + "endLine": 181, + "endColumn": 19, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.annotators.core", + "obj": "_BaseLabelAnnotator.text_offset", + "line": 189, + "column": 4, + "endLine": 189, + "endColumn": 19, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.annotators.core", + "obj": "_BaseLabelAnnotator.border_radius", + "line": 197, + "column": 4, + "endLine": 197, + "endColumn": 21, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.annotators.core", + "obj": "_BaseLabelAnnotator.smart_position", + "line": 205, + "column": 4, + "endLine": 205, + "endColumn": 22, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.annotators.core", + "obj": "_BaseLabelAnnotator.max_line_length", + "line": 213, + "column": 4, + "endLine": 213, + "endColumn": 23, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.annotators.core", + "obj": "LabelAnnotator.draw_rounded_rectangle", + "line": 1543, + "column": 4, + "endLine": 1543, + "endColumn": 30, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.annotators.core", + "obj": "PercentageBarAnnotator.calculate_border_coordinates", + "line": 2795, + "column": 4, + "endLine": 2795, + "endColumn": 36, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.annotators.core", + "obj": "PercentageBarAnnotator.validate_custom_values", + "line": 2856, + "column": 4, + "endLine": 2856, + "endColumn": 30, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.annotators.core", + "obj": "CropAnnotator.calculate_crop_coordinates", + "line": 2977, + "column": 4, + "endLine": 2977, + "endColumn": 34, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.annotators.utils", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\annotators\\utils.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.annotators.utils", + "obj": "ColorLookup.list", + "line": 36, + "column": 4, + "endLine": 36, + "endColumn": 12, + "path": "src\\supervision\\annotators\\utils.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.annotators.utils", + "obj": "resolve_color_idx", + "line": 40, + "column": 0, + "endLine": 40, + "endColumn": 21, + "path": "src\\supervision\\annotators\\utils.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.annotators.utils", + "obj": "resolve_text_background_xyxy", + "line": 80, + "column": 0, + "endLine": 80, + "endColumn": 32, + "path": "src\\supervision\\annotators\\utils.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.annotators.utils", + "obj": "get_color_by_index", + "line": 133, + "column": 0, + "endLine": 133, + "endColumn": 22, + "path": "src\\supervision\\annotators\\utils.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.annotators.utils", + "obj": "resolve_color", + "line": 139, + "column": 0, + "endLine": 139, + "endColumn": 17, + "path": "src\\supervision\\annotators\\utils.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.annotators.utils", + "obj": "validate_labels", + "line": 231, + "column": 0, + "endLine": 231, + "endColumn": 19, + "path": "src\\supervision\\annotators\\utils.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.annotators.utils", + "obj": "Trace", + "line": 332, + "column": 0, + "endLine": 332, + "endColumn": 11, + "path": "src\\supervision\\annotators\\utils.py", + "symbol": "missing-class-docstring", + "message": "Missing class docstring", + "message-id": "C0115" + }, + { + "type": "convention", + "module": "supervision.annotators.utils", + "obj": "Trace.put", + "line": 347, + "column": 4, + "endLine": 347, + "endColumn": 11, + "path": "src\\supervision\\annotators\\utils.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.annotators.utils", + "obj": "Trace.get", + "line": 377, + "column": 4, + "endLine": 377, + "endColumn": 11, + "path": "src\\supervision\\annotators\\utils.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.annotators.utils", + "obj": "rgba_to_hex", + "line": 427, + "column": 11, + "endLine": 427, + "endColumn": 38, + "path": "src\\supervision\\annotators\\utils.py", + "symbol": "consider-using-f-string", + "message": "Formatting a regular string which could be an f-string", + "message-id": "C0209" + }, + { + "type": "convention", + "module": "supervision.assets.downloader", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\assets\\downloader.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.assets.list", + "obj": "", + "line": 28, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\assets\\list.py", + "symbol": "line-too-long", + "message": "Line too long (147/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.assets.list", + "obj": "", + "line": 29, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\assets\\list.py", + "symbol": "line-too-long", + "message": "Line too long (147/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.assets.list", + "obj": "", + "line": 30, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\assets\\list.py", + "symbol": "line-too-long", + "message": "Line too long (147/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.assets.list", + "obj": "", + "line": 31, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\assets\\list.py", + "symbol": "line-too-long", + "message": "Line too long (147/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.assets.list", + "obj": "", + "line": 32, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\assets\\list.py", + "symbol": "line-too-long", + "message": "Line too long (147/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.assets.list", + "obj": "", + "line": 33, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\assets\\list.py", + "symbol": "line-too-long", + "message": "Line too long (147/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.assets.list", + "obj": "", + "line": 34, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\assets\\list.py", + "symbol": "line-too-long", + "message": "Line too long (147/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.assets.list", + "obj": "", + "line": 35, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\assets\\list.py", + "symbol": "line-too-long", + "message": "Line too long (147/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.assets.list", + "obj": "", + "line": 36, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\assets\\list.py", + "symbol": "line-too-long", + "message": "Line too long (147/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.assets.list", + "obj": "", + "line": 37, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\assets\\list.py", + "symbol": "line-too-long", + "message": "Line too long (147/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.assets.list", + "obj": "", + "line": 38, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\assets\\list.py", + "symbol": "line-too-long", + "message": "Line too long (147/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.assets.list", + "obj": "", + "line": 39, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\assets\\list.py", + "symbol": "line-too-long", + "message": "Line too long (147/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.assets.list", + "obj": "", + "line": 62, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\assets\\list.py", + "symbol": "line-too-long", + "message": "Line too long (139/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.assets.list", + "obj": "", + "line": 63, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\assets\\list.py", + "symbol": "line-too-long", + "message": "Line too long (139/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.assets.list", + "obj": "", + "line": 64, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\assets\\list.py", + "symbol": "line-too-long", + "message": "Line too long (139/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.assets.list", + "obj": "", + "line": 65, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\assets\\list.py", + "symbol": "line-too-long", + "message": "Line too long (139/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.assets.list", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\assets\\list.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.assets.list", + "obj": "Assets", + "line": 7, + "column": 0, + "endLine": 7, + "endColumn": 12, + "path": "src\\supervision\\assets\\list.py", + "symbol": "missing-class-docstring", + "message": "Missing class docstring", + "message-id": "C0115" + }, + { + "type": "convention", + "module": "supervision.assets.list", + "obj": "Assets.list", + "line": 19, + "column": 4, + "endLine": 19, + "endColumn": 12, + "path": "src\\supervision\\assets\\list.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.assets", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\assets\\__init__.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.classification.core", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\classification\\core.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.classification.core", + "obj": "Classifications", + "line": 33, + "column": 0, + "endLine": 33, + "endColumn": 21, + "path": "src\\supervision\\classification\\core.py", + "symbol": "missing-class-docstring", + "message": "Missing class docstring", + "message-id": "C0115" + }, + { + "type": "convention", + "module": "supervision.dataset.core", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\dataset\\core.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.dataset.core", + "obj": "BaseDataset", + "line": 41, + "column": 0, + "endLine": 41, + "endColumn": 17, + "path": "src\\supervision\\dataset\\core.py", + "symbol": "missing-class-docstring", + "message": "Missing class docstring", + "message-id": "C0115" + }, + { + "type": "convention", + "module": "supervision.dataset.core", + "obj": "BaseDataset.split", + "line": 47, + "column": 4, + "endLine": 47, + "endColumn": 13, + "path": "src\\supervision\\dataset\\core.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.dataset.core", + "obj": "DetectionDataset.as_yolo", + "line": 552, + "column": 12, + "endLine": 552, + "endColumn": 27, + "path": "src\\supervision\\dataset\\core.py", + "symbol": "import-outside-toplevel", + "message": "Import outside toplevel (warnings)", + "message-id": "C0415" + }, + { + "type": "convention", + "module": "supervision.dataset.utils", + "obj": "", + "line": 29, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\dataset\\utils.py", + "symbol": "line-too-long", + "message": "Line too long (111/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.dataset.utils", + "obj": "", + "line": 37, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\dataset\\utils.py", + "symbol": "line-too-long", + "message": "Line too long (111/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.dataset.utils", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\dataset\\utils.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.dataset.utils", + "obj": "approximate_mask_with_polygons", + "line": 52, + "column": 0, + "endLine": 52, + "endColumn": 34, + "path": "src\\supervision\\dataset\\utils.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.dataset.utils", + "obj": "merge_class_lists", + "line": 80, + "column": 0, + "endLine": 80, + "endColumn": 21, + "path": "src\\supervision\\dataset\\utils.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.dataset.utils", + "obj": "map_detections_class_id", + "line": 108, + "column": 0, + "endLine": 108, + "endColumn": 27, + "path": "src\\supervision\\dataset\\utils.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.dataset.utils", + "obj": "save_dataset_images", + "line": 128, + "column": 0, + "endLine": 128, + "endColumn": 23, + "path": "src\\supervision\\dataset\\utils.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.dataset.formats.coco", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\dataset\\formats\\coco.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.dataset.formats.coco", + "obj": "coco_categories_to_classes", + "line": 30, + "column": 0, + "endLine": 30, + "endColumn": 30, + "path": "src\\supervision\\dataset\\formats\\coco.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.dataset.formats.coco", + "obj": "build_coco_class_index_mapping", + "line": 37, + "column": 0, + "endLine": 37, + "endColumn": 34, + "path": "src\\supervision\\dataset\\formats\\coco.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.dataset.formats.coco", + "obj": "group_coco_annotations_by_image_id", + "line": 85, + "column": 0, + "endLine": 85, + "endColumn": 38, + "path": "src\\supervision\\dataset\\formats\\coco.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.dataset.formats.coco", + "obj": "coco_annotations_to_masks", + "line": 97, + "column": 0, + "endLine": 97, + "endColumn": 29, + "path": "src\\supervision\\dataset\\formats\\coco.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.dataset.formats.pascal_voc", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\dataset\\formats\\pascal_voc.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.dataset.formats.pascal_voc", + "obj": "parse_polygon_points", + "line": 339, + "column": 0, + "endLine": 339, + "endColumn": 24, + "path": "src\\supervision\\dataset\\formats\\pascal_voc.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.dataset.formats.yolo", + "obj": "", + "line": 252, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\dataset\\formats\\yolo.py", + "symbol": "line-too-long", + "message": "Line too long (124/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.dataset.formats.yolo", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\dataset\\formats\\yolo.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.dataset.formats.yolo", + "obj": "yolo_annotations_to_detections", + "line": 138, + "column": 0, + "endLine": 138, + "endColumn": 34, + "path": "src\\supervision\\dataset\\formats\\yolo.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.dataset.formats.yolo", + "obj": "object_to_yolo", + "line": 274, + "column": 0, + "endLine": 274, + "endColumn": 18, + "path": "src\\supervision\\dataset\\formats\\yolo.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.dataset.formats.yolo", + "obj": "save_data_yaml", + "line": 474, + "column": 0, + "endLine": 474, + "endColumn": 18, + "path": "src\\supervision\\dataset\\formats\\yolo.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.compact_mask", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\compact_mask.py", + "symbol": "too-many-lines", + "message": "Too many lines in module (1306/1000)", + "message-id": "C0302" + }, + { + "type": "convention", + "module": "supervision.detection.compact_mask", + "obj": "_resize_crop", + "line": 369, + "column": 4, + "endLine": 369, + "endColumn": 14, + "path": "src\\supervision\\detection\\compact_mask.py", + "symbol": "import-outside-toplevel", + "message": "Import outside toplevel (cv2)", + "message-id": "C0415" + }, + { + "type": "convention", + "module": "supervision.detection.compact_mask", + "obj": "CompactMask.resize", + "line": 1233, + "column": 8, + "endLine": 1233, + "endColumn": 57, + "path": "src\\supervision\\detection\\compact_mask.py", + "symbol": "import-outside-toplevel", + "message": "Import outside toplevel (concurrent.futures.ThreadPoolExecutor)", + "message-id": "C0415" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 73, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (143/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 77, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (115/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 93, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (119/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 109, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (121/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 437, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (101/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 953, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (132/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 954, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (132/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 955, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (132/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 956, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (132/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 957, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (132/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 958, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (132/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 959, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (132/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 960, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (132/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 961, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (132/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 1014, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (102/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 1376, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (204/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 1390, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (106/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 1439, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (132/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 1440, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (132/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 1441, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (132/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 1442, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (132/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 1443, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (132/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 1444, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (132/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 1445, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (132/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 1446, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (132/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 1447, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (132/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 1448, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (132/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 1501, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (102/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 1834, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (204/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 1848, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (106/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 2550, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (119/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "too-many-lines", + "message": "Too many lines in module (2960/1000)", + "message-id": "C0302" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "Detections.__iter__", + "line": 196, + "column": 8, + "endLine": 204, + "endColumn": 13, + "path": "src\\supervision\\detection\\core.py", + "symbol": "consider-using-enumerate", + "message": "Consider using enumerate instead of iterating with range and len", + "message-id": "C0200" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "Detections.merge.stack_or_none", + "line": 2155, + "column": 19, + "endLine": 2155, + "endColumn": 43, + "path": "src\\supervision\\detection\\core.py", + "symbol": "unnecessary-dunder-call", + "message": "Unnecessarily calls dunder method __getattribute__. Access attribute directly or use getattr built-in function.", + "message-id": "C2801" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "Detections.merge.stack_or_none", + "line": 2157, + "column": 19, + "endLine": 2157, + "endColumn": 43, + "path": "src\\supervision\\detection\\core.py", + "symbol": "unnecessary-dunder-call", + "message": "Unnecessarily calls dunder method __getattribute__. Access attribute directly or use getattr built-in function.", + "message-id": "C2801" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "Detections.merge.stack_or_none", + "line": 2160, + "column": 25, + "endLine": 2160, + "endColumn": 49, + "path": "src\\supervision\\detection\\core.py", + "symbol": "unnecessary-dunder-call", + "message": "Unnecessarily calls dunder method __getattribute__. Access attribute directly or use getattr built-in function.", + "message-id": "C2801" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "Detections.merge.stack_or_none", + "line": 2165, + "column": 30, + "endLine": 2165, + "endColumn": 54, + "path": "src\\supervision\\detection\\core.py", + "symbol": "unnecessary-dunder-call", + "message": "Unnecessarily calls dunder method __getattribute__. Access attribute directly or use getattr built-in function.", + "message-id": "C2801" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "validate_fields_both_defined_or_none", + "line": 2957, + "column": 0, + "endLine": 2957, + "endColumn": 40, + "path": "src\\supervision\\detection\\core.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.line_zone", + "obj": "", + "line": 80, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "line-too-long", + "message": "Line too long (118/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.line_zone", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotatorConfig", + "line": 28, + "column": 0, + "endLine": 28, + "endColumn": 29, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "missing-class-docstring", + "message": "Missing class docstring", + "message-id": "C0115" + }, + { + "type": "convention", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotatorMulticlassConfig", + "line": 46, + "column": 0, + "endLine": 46, + "endColumn": 39, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "missing-class-docstring", + "message": "Missing class docstring", + "message-id": "C0115" + }, + { + "type": "convention", + "module": "supervision.detection.line_zone", + "obj": "LineZone.in_count", + "line": 177, + "column": 4, + "endLine": 177, + "endColumn": 16, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.line_zone", + "obj": "LineZone.out_count", + "line": 181, + "column": 4, + "endLine": 181, + "endColumn": 17, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.line_zone", + "obj": "LineZone.in_count_per_class", + "line": 185, + "column": 4, + "endLine": 185, + "endColumn": 26, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.line_zone", + "obj": "LineZone.out_count_per_class", + "line": 189, + "column": 4, + "endLine": 189, + "endColumn": 27, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator", + "line": 380, + "column": 0, + "endLine": 380, + "endColumn": 23, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "missing-class-docstring", + "message": "Missing class docstring", + "message-id": "C0115" + }, + { + "type": "convention", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotatorMulticlass", + "line": 772, + "column": 0, + "endLine": 772, + "endColumn": 33, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "missing-class-docstring", + "message": "Missing class docstring", + "message-id": "C0115" + }, + { + "type": "convention", + "module": "supervision.detection.vlm", + "obj": "", + "line": 437, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "line-too-long", + "message": "Line too long (172/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.vlm", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.detection.vlm", + "obj": "LMM.list", + "line": 50, + "column": 4, + "endLine": 50, + "endColumn": 12, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.vlm", + "obj": "LMM.from_value", + "line": 54, + "column": 4, + "endLine": 54, + "endColumn": 18, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.vlm", + "obj": "VLM.list", + "line": 97, + "column": 4, + "endLine": 97, + "endColumn": 12, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.vlm", + "obj": "VLM.from_value", + "line": 101, + "column": 4, + "endLine": 101, + "endColumn": 18, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.vlm", + "obj": "validate_vlm_parameters", + "line": 211, + "column": 0, + "endLine": 211, + "endColumn": 27, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.vlm", + "obj": "_extract_json_from_backticks", + "line": 596, + "column": 21, + "endLine": 596, + "endColumn": 40, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "use-maxsplit-arg", + "message": "Use result.split('```', maxsplit=1)[0] instead", + "message-id": "C0207" + }, + { + "type": "convention", + "module": "supervision.detection.tools.csv_sink", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\tools\\csv_sink.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.detection.tools.csv_sink", + "obj": "WriterProtocol", + "line": 27, + "column": 0, + "endLine": 27, + "endColumn": 20, + "path": "src\\supervision\\detection\\tools\\csv_sink.py", + "symbol": "missing-class-docstring", + "message": "Missing class docstring", + "message-id": "C0115" + }, + { + "type": "convention", + "module": "supervision.detection.tools.csv_sink", + "obj": "WriterProtocol.writerow", + "line": 28, + "column": 4, + "endLine": 28, + "endColumn": 16, + "path": "src\\supervision\\detection\\tools\\csv_sink.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.tools.csv_sink", + "obj": "CSVSink.parse_field_names", + "line": 234, + "column": 4, + "endLine": 234, + "endColumn": 25, + "path": "src\\supervision\\detection\\tools\\csv_sink.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.tools.inference_slicer", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\tools\\inference_slicer.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.detection.tools.inference_slicer", + "obj": "InferenceSlicer.callback", + "line": 201, + "column": 4, + "endLine": 201, + "endColumn": 16, + "path": "src\\supervision\\detection\\tools\\inference_slicer.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.tools.inference_slicer", + "obj": "InferenceSlicer.slice_wh", + "line": 209, + "column": 4, + "endLine": 209, + "endColumn": 16, + "path": "src\\supervision\\detection\\tools\\inference_slicer.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.tools.inference_slicer", + "obj": "InferenceSlicer.overlap_wh", + "line": 218, + "column": 4, + "endLine": 218, + "endColumn": 18, + "path": "src\\supervision\\detection\\tools\\inference_slicer.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.tools.inference_slicer", + "obj": "InferenceSlicer.iou_threshold", + "line": 227, + "column": 4, + "endLine": 227, + "endColumn": 21, + "path": "src\\supervision\\detection\\tools\\inference_slicer.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.tools.inference_slicer", + "obj": "InferenceSlicer.overlap_metric", + "line": 235, + "column": 4, + "endLine": 235, + "endColumn": 22, + "path": "src\\supervision\\detection\\tools\\inference_slicer.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.tools.inference_slicer", + "obj": "InferenceSlicer.overlap_filter", + "line": 243, + "column": 4, + "endLine": 243, + "endColumn": 22, + "path": "src\\supervision\\detection\\tools\\inference_slicer.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.tools.inference_slicer", + "obj": "InferenceSlicer.thread_workers", + "line": 251, + "column": 4, + "endLine": 251, + "endColumn": 22, + "path": "src\\supervision\\detection\\tools\\inference_slicer.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.tools.inference_slicer", + "obj": "InferenceSlicer.compact_masks", + "line": 264, + "column": 4, + "endLine": 264, + "endColumn": 21, + "path": "src\\supervision\\detection\\tools\\inference_slicer.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.tools.json_sink", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\tools\\json_sink.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.detection.tools.polygon_zone", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\tools\\polygon_zone.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.detection.tools.polygon_zone", + "obj": "PolygonZoneAnnotator.color", + "line": 171, + "column": 4, + "endLine": 171, + "endColumn": 13, + "path": "src\\supervision\\detection\\tools\\polygon_zone.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.tools.polygon_zone", + "obj": "PolygonZoneAnnotator.thickness", + "line": 179, + "column": 4, + "endLine": 179, + "endColumn": 17, + "path": "src\\supervision\\detection\\tools\\polygon_zone.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.tools.polygon_zone", + "obj": "PolygonZoneAnnotator.text_color", + "line": 187, + "column": 4, + "endLine": 187, + "endColumn": 18, + "path": "src\\supervision\\detection\\tools\\polygon_zone.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.tools.polygon_zone", + "obj": "PolygonZoneAnnotator.text_scale", + "line": 195, + "column": 4, + "endLine": 195, + "endColumn": 18, + "path": "src\\supervision\\detection\\tools\\polygon_zone.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.tools.polygon_zone", + "obj": "PolygonZoneAnnotator.text_thickness", + "line": 203, + "column": 4, + "endLine": 203, + "endColumn": 22, + "path": "src\\supervision\\detection\\tools\\polygon_zone.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.tools.polygon_zone", + "obj": "PolygonZoneAnnotator.text_padding", + "line": 211, + "column": 4, + "endLine": 211, + "endColumn": 20, + "path": "src\\supervision\\detection\\tools\\polygon_zone.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.tools.polygon_zone", + "obj": "PolygonZoneAnnotator.display_in_zone_count", + "line": 219, + "column": 4, + "endLine": 219, + "endColumn": 29, + "path": "src\\supervision\\detection\\tools\\polygon_zone.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.tools.polygon_zone", + "obj": "PolygonZoneAnnotator.opacity", + "line": 227, + "column": 4, + "endLine": 227, + "endColumn": 15, + "path": "src\\supervision\\detection\\tools\\polygon_zone.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.tools.polygon_zone", + "obj": "PolygonZoneAnnotator.font", + "line": 235, + "column": 4, + "endLine": 235, + "endColumn": 12, + "path": "src\\supervision\\detection\\tools\\polygon_zone.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.tools.polygon_zone", + "obj": "PolygonZoneAnnotator.center", + "line": 239, + "column": 4, + "endLine": 239, + "endColumn": 14, + "path": "src\\supervision\\detection\\tools\\polygon_zone.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.tools.smoother", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\tools\\smoother.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.detection.tools.smoother", + "obj": "DetectionsSmoother.update_with_detections", + "line": 117, + "column": 8, + "endLine": 121, + "endColumn": 87, + "path": "src\\supervision\\detection\\tools\\smoother.py", + "symbol": "consider-using-enumerate", + "message": "Consider using enumerate instead of iterating with range and len", + "message-id": "C0200" + }, + { + "type": "convention", + "module": "supervision.detection.tools.smoother", + "obj": "DetectionsSmoother.update_with_detections", + "line": 123, + "column": 8, + "endLine": 125, + "endColumn": 50, + "path": "src\\supervision\\detection\\tools\\smoother.py", + "symbol": "consider-using-dict-items", + "message": "Consider iterating with .items()", + "message-id": "C0206" + }, + { + "type": "convention", + "module": "supervision.detection.tools.smoother", + "obj": "DetectionsSmoother.get_smoothed_detections", + "line": 166, + "column": 4, + "endLine": 166, + "endColumn": 31, + "path": "src\\supervision\\detection\\tools\\smoother.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.tools.transformers", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\tools\\transformers.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.detection.utils.boxes", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\utils\\boxes.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.detection.utils.converters", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\utils\\converters.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.detection.utils.internal", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\utils\\internal.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.detection.utils.internal", + "obj": "extract_ultralytics_masks", + "line": 18, + "column": 0, + "endLine": 18, + "endColumn": 29, + "path": "src\\supervision\\detection\\utils\\internal.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "too-many-lines", + "message": "Too many lines in module (1461/1000)", + "message-id": "C0302" + }, + { + "type": "convention", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "OverlapFilter.list", + "line": 35, + "column": 4, + "endLine": 35, + "endColumn": 12, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "OverlapFilter.from_value", + "line": 39, + "column": 4, + "endLine": 39, + "endColumn": 18, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "OverlapMetric.list", + "line": 71, + "column": 4, + "endLine": 71, + "endColumn": 12, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "OverlapMetric.from_value", + "line": 75, + "column": 4, + "endLine": 75, + "endColumn": 18, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "_jaccard", + "line": 280, + "column": 4, + "endLine": 280, + "endColumn": 7, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "invalid-name", + "message": "Variable name \"EPS\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "_jaccard", + "line": 294, + "column": 4, + "endLine": 294, + "endColumn": 6, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "invalid-name", + "message": "Variable name \"Aa\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "_jaccard", + "line": 295, + "column": 4, + "endLine": 295, + "endColumn": 6, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "invalid-name", + "message": "Variable name \"Ab\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "_jaccard", + "line": 296, + "column": 4, + "endLine": 296, + "endColumn": 6, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "invalid-name", + "message": "Variable name \"Ai\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.detection.utils.masks", + "obj": "", + "line": 188, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\utils\\masks.py", + "symbol": "line-too-long", + "message": "Line too long (113/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.utils.masks", + "obj": "", + "line": 249, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\utils\\masks.py", + "symbol": "line-too-long", + "message": "Line too long (137/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.utils.masks", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\utils\\masks.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.detection.utils.polygons", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\utils\\polygons.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.detection.utils.vlms", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\utils\\vlms.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.draw.base", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\draw\\base.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.draw.base", + "obj": "", + "line": 7, + "column": 0, + "endLine": 7, + "endColumn": 9, + "path": "src\\supervision\\draw\\base.py", + "symbol": "invalid-name", + "message": "Type variable name \"ImageType\" doesn't conform to predefined naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\draw\\color.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "Color.WHITE", + "line": 356, + "column": 4, + "endLine": 356, + "endColumn": 13, + "path": "src\\supervision\\draw\\color.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "Color.WHITE", + "line": 356, + "column": 4, + "endLine": 356, + "endColumn": 13, + "path": "src\\supervision\\draw\\color.py", + "symbol": "invalid-name", + "message": "Method name \"WHITE\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "Color.BLACK", + "line": 360, + "column": 4, + "endLine": 360, + "endColumn": 13, + "path": "src\\supervision\\draw\\color.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "Color.BLACK", + "line": 360, + "column": 4, + "endLine": 360, + "endColumn": 13, + "path": "src\\supervision\\draw\\color.py", + "symbol": "invalid-name", + "message": "Method name \"BLACK\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "Color.GREY", + "line": 364, + "column": 4, + "endLine": 364, + "endColumn": 12, + "path": "src\\supervision\\draw\\color.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "Color.GREY", + "line": 364, + "column": 4, + "endLine": 364, + "endColumn": 12, + "path": "src\\supervision\\draw\\color.py", + "symbol": "invalid-name", + "message": "Method name \"GREY\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "Color.RED", + "line": 368, + "column": 4, + "endLine": 368, + "endColumn": 11, + "path": "src\\supervision\\draw\\color.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "Color.RED", + "line": 368, + "column": 4, + "endLine": 368, + "endColumn": 11, + "path": "src\\supervision\\draw\\color.py", + "symbol": "invalid-name", + "message": "Method name \"RED\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "Color.GREEN", + "line": 372, + "column": 4, + "endLine": 372, + "endColumn": 13, + "path": "src\\supervision\\draw\\color.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "Color.GREEN", + "line": 372, + "column": 4, + "endLine": 372, + "endColumn": 13, + "path": "src\\supervision\\draw\\color.py", + "symbol": "invalid-name", + "message": "Method name \"GREEN\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "Color.BLUE", + "line": 376, + "column": 4, + "endLine": 376, + "endColumn": 12, + "path": "src\\supervision\\draw\\color.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "Color.BLUE", + "line": 376, + "column": 4, + "endLine": 376, + "endColumn": 12, + "path": "src\\supervision\\draw\\color.py", + "symbol": "invalid-name", + "message": "Method name \"BLUE\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "Color.YELLOW", + "line": 380, + "column": 4, + "endLine": 380, + "endColumn": 14, + "path": "src\\supervision\\draw\\color.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "Color.YELLOW", + "line": 380, + "column": 4, + "endLine": 380, + "endColumn": 14, + "path": "src\\supervision\\draw\\color.py", + "symbol": "invalid-name", + "message": "Method name \"YELLOW\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "Color.ROBOFLOW", + "line": 384, + "column": 4, + "endLine": 384, + "endColumn": 16, + "path": "src\\supervision\\draw\\color.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "Color.ROBOFLOW", + "line": 384, + "column": 4, + "endLine": 384, + "endColumn": 16, + "path": "src\\supervision\\draw\\color.py", + "symbol": "invalid-name", + "message": "Method name \"ROBOFLOW\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "ColorPalette", + "line": 406, + "column": 0, + "endLine": 406, + "endColumn": 18, + "path": "src\\supervision\\draw\\color.py", + "symbol": "missing-class-docstring", + "message": "Missing class docstring", + "message-id": "C0115" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "ColorPalette.DEFAULT", + "line": 410, + "column": 4, + "endLine": 410, + "endColumn": 15, + "path": "src\\supervision\\draw\\color.py", + "symbol": "invalid-name", + "message": "Method name \"DEFAULT\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "ColorPalette.ROBOFLOW", + "line": 431, + "column": 4, + "endLine": 431, + "endColumn": 16, + "path": "src\\supervision\\draw\\color.py", + "symbol": "invalid-name", + "message": "Method name \"ROBOFLOW\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "ColorPalette.LEGACY", + "line": 452, + "column": 4, + "endLine": 452, + "endColumn": 14, + "path": "src\\supervision\\draw\\color.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "ColorPalette.LEGACY", + "line": 452, + "column": 4, + "endLine": 452, + "endColumn": 14, + "path": "src\\supervision\\draw\\color.py", + "symbol": "invalid-name", + "message": "Method name \"LEGACY\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.draw.utils", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.geometry.core", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\geometry\\core.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.geometry.core", + "obj": "Position.list", + "line": 25, + "column": 4, + "endLine": 25, + "endColumn": 12, + "path": "src\\supervision\\geometry\\core.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.geometry.core", + "obj": "Rect.from_xyxy", + "line": 176, + "column": 4, + "endLine": 176, + "endColumn": 17, + "path": "src\\supervision\\geometry\\core.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.geometry.core", + "obj": "Rect.top_left", + "line": 181, + "column": 4, + "endLine": 181, + "endColumn": 16, + "path": "src\\supervision\\geometry\\core.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.geometry.core", + "obj": "Rect.bottom_right", + "line": 185, + "column": 4, + "endLine": 185, + "endColumn": 20, + "path": "src\\supervision\\geometry\\core.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.geometry.core", + "obj": "Rect.pad", + "line": 188, + "column": 4, + "endLine": 188, + "endColumn": 11, + "path": "src\\supervision\\geometry\\core.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.geometry.core", + "obj": "Rect.as_xyxy_int_tuple", + "line": 196, + "column": 4, + "endLine": 196, + "endColumn": 25, + "path": "src\\supervision\\geometry\\core.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.geometry.utils", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\geometry\\utils.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.keypoint.annotators", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\keypoint\\annotators.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.keypoint.annotators", + "obj": "", + "line": 8, + "column": 0, + "endLine": 13, + "endColumn": 1, + "path": "src\\supervision\\keypoint\\annotators.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.key_points.annotators import BaseKeyPointAnnotator, EdgeAnnotator, VertexAnnotator, VertexLabelAnnotator\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision.keypoint.core", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\keypoint\\core.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.keypoint.core", + "obj": "", + "line": 8, + "column": 0, + "endLine": 8, + "endColumn": 49, + "path": "src\\supervision\\keypoint\\core.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.key_points.core import KeyPoints\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision.keypoint", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\keypoint\\__init__.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.keypoint", + "obj": "", + "line": 8, + "column": 0, + "endLine": 12, + "endColumn": 1, + "path": "src\\supervision\\keypoint\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.key_points.annotators import EdgeAnnotator, VertexAnnotator, VertexLabelAnnotator\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision.keypoint", + "obj": "", + "line": 13, + "column": 0, + "endLine": 13, + "endColumn": 49, + "path": "src\\supervision\\keypoint\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.key_points.core import KeyPoints\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision.key_points.annotators", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.key_points.annotators", + "obj": "BaseKeyPointAnnotator", + "line": 24, + "column": 0, + "endLine": 24, + "endColumn": 27, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "missing-class-docstring", + "message": "Missing class docstring", + "message-id": "C0115" + }, + { + "type": "convention", + "module": "supervision.key_points.annotators", + "obj": "BaseKeyPointAnnotator.annotate", + "line": 26, + "column": 4, + "endLine": 26, + "endColumn": 16, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.key_points.annotators", + "obj": "VertexLabelAnnotator.get_text_bounding_box", + "line": 908, + "column": 4, + "endLine": 908, + "endColumn": 29, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.key_points.core", + "obj": "", + "line": 101, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "line-too-long", + "message": "Line too long (124/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.key_points.core", + "obj": "", + "line": 102, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "line-too-long", + "message": "Line too long (148/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.key_points.core", + "obj": "", + "line": 119, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "line-too-long", + "message": "Line too long (120/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.key_points.core", + "obj": "", + "line": 136, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "line-too-long", + "message": "Line too long (120/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.key_points.core", + "obj": "", + "line": 169, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "line-too-long", + "message": "Line too long (126/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.key_points.core", + "obj": "", + "line": 170, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "line-too-long", + "message": "Line too long (110/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.key_points.core", + "obj": "", + "line": 189, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "line-too-long", + "message": "Line too long (105/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.key_points.core", + "obj": "", + "line": 493, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "line-too-long", + "message": "Line too long (116/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.key_points.core", + "obj": "", + "line": 639, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "line-too-long", + "message": "Line too long (130/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.key_points.core", + "obj": "", + "line": 777, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "line-too-long", + "message": "Line too long (109/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.key_points.core", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "too-many-lines", + "message": "Too many lines in module (1342/1000)", + "message-id": "C0302" + }, + { + "type": "convention", + "module": "supervision.key_points.core", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.key_points.core", + "obj": "", + "line": 23, + "column": 0, + "endLine": 23, + "endColumn": 7, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "invalid-name", + "message": "Type alias name \"Index1D\" doesn't conform to predefined naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.key_points.core", + "obj": "KeyPoints.__iter__", + "line": 359, + "column": 8, + "endLine": 367, + "endColumn": 13, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "consider-using-enumerate", + "message": "Consider using enumerate instead of iterating with range and len", + "message-id": "C0200" + }, + { + "type": "convention", + "module": "supervision.key_points.skeletons", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\key_points\\skeletons.py", + "symbol": "too-many-lines", + "message": "Too many lines in module (2646/1000)", + "message-id": "C0302" + }, + { + "type": "convention", + "module": "supervision.key_points.skeletons", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\key_points\\skeletons.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.key_points.skeletons", + "obj": "Skeleton", + "line": 6, + "column": 0, + "endLine": 6, + "endColumn": 14, + "path": "src\\supervision\\key_points\\skeletons.py", + "symbol": "missing-class-docstring", + "message": "Missing class docstring", + "message-id": "C0115" + }, + { + "type": "convention", + "module": "supervision.metrics.core", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\metrics\\core.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.metrics.detection", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\metrics\\detection.py", + "symbol": "too-many-lines", + "message": "Too many lines in module (1148/1000)", + "message-id": "C0302" + }, + { + "type": "convention", + "module": "supervision.metrics.detection", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\metrics\\detection.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.metrics.detection", + "obj": "validate_input_tensors", + "line": 313, + "column": 0, + "endLine": 313, + "endColumn": 26, + "path": "src\\supervision\\metrics\\detection.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.metrics.f1_score", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\metrics\\f1_score.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.metrics.f1_score", + "obj": "F1ScoreResult.f1_50", + "line": 549, + "column": 4, + "endLine": 549, + "endColumn": 13, + "path": "src\\supervision\\metrics\\f1_score.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.metrics.f1_score", + "obj": "F1ScoreResult.f1_75", + "line": 553, + "column": 4, + "endLine": 553, + "endColumn": 13, + "path": "src\\supervision\\metrics\\f1_score.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.metrics.f1_score", + "obj": "F1ScoreResult.small_objects", + "line": 604, + "column": 4, + "endLine": 604, + "endColumn": 21, + "path": "src\\supervision\\metrics\\f1_score.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.metrics.f1_score", + "obj": "F1ScoreResult.medium_objects", + "line": 614, + "column": 4, + "endLine": 614, + "endColumn": 22, + "path": "src\\supervision\\metrics\\f1_score.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.metrics.f1_score", + "obj": "F1ScoreResult.large_objects", + "line": 624, + "column": 4, + "endLine": 624, + "endColumn": 21, + "path": "src\\supervision\\metrics\\f1_score.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.metrics.f1_score", + "obj": "F1ScoreResult.to_pandas", + "line": 709, + "column": 8, + "endLine": 709, + "endColumn": 27, + "path": "src\\supervision\\metrics\\f1_score.py", + "symbol": "import-outside-toplevel", + "message": "Import outside toplevel (pandas)", + "message-id": "C0415" + }, + { + "type": "convention", + "module": "supervision.metrics.f1_score", + "obj": "F1ScoreResult.plot", + "line": 780, + "column": 12, + "endLine": 780, + "endColumn": 15, + "path": "src\\supervision\\metrics\\f1_score.py", + "symbol": "disallowed-name", + "message": "Disallowed name \"bar\"", + "message-id": "C0104" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_precision", + "obj": "", + "line": 853, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "superfluous-parens", + "message": "Unnecessary parens after 'not' keyword", + "message-id": "C0325" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_precision", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "too-many-lines", + "message": "Too many lines in module (1697/1000)", + "message-id": "C0302" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_precision", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_precision", + "obj": "MeanAveragePrecisionResult", + "line": 64, + "column": 4, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "invalid-name", + "message": "Attribute name \"mAP_scores\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_precision", + "obj": "MeanAveragePrecisionResult.__init__", + "line": 76, + "column": 8, + "endLine": 76, + "endColumn": 43, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "invalid-name", + "message": "Argument name \"mAP_scores\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_precision", + "obj": "MeanAveragePrecisionResult.to_pandas", + "line": 243, + "column": 8, + "endLine": 243, + "endColumn": 27, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "import-outside-toplevel", + "message": "Import outside toplevel (pandas)", + "message-id": "C0415" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_precision", + "obj": "MeanAveragePrecisionResult.plot", + "line": 323, + "column": 12, + "endLine": 323, + "endColumn": 15, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "disallowed-name", + "message": "Disallowed name \"bar\"", + "message-id": "C0104" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_precision", + "obj": "EvaluationDataset.empty", + "line": 371, + "column": 4, + "endLine": 371, + "endColumn": 13, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluator._compute_average_precision", + "line": 1170, + "column": 8, + "endLine": 1170, + "endColumn": 18, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "invalid-name", + "message": "Variable name \"mAP_scores\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluator._compute_average_precision_by_size", + "line": 1184, + "column": 8, + "endLine": 1184, + "endColumn": 28, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "invalid-name", + "message": "Variable name \"mAP_scores_all_sizes\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluator._compute_average_precision_by_size", + "line": 1192, + "column": 8, + "endLine": 1192, + "endColumn": 24, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "invalid-name", + "message": "Variable name \"mAP_scores_small\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluator._compute_average_precision_by_size", + "line": 1200, + "column": 8, + "endLine": 1200, + "endColumn": 25, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "invalid-name", + "message": "Variable name \"mAP_scores_medium\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluator._compute_average_precision_by_size", + "line": 1208, + "column": 8, + "endLine": 1208, + "endColumn": 24, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "invalid-name", + "message": "Variable name \"mAP_scores_large\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluator._pycocotools_summarize._summarize", + "line": 1285, + "column": 12, + "endLine": 1285, + "endColumn": 16, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "invalid-name", + "message": "Variable name \"iStr\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluator._pycocotools_summarize._summarize", + "line": 1286, + "column": 12, + "endLine": 1286, + "endColumn": 20, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "invalid-name", + "message": "Variable name \"titleStr\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluator._pycocotools_summarize._summarize", + "line": 1287, + "column": 12, + "endLine": 1287, + "endColumn": 19, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "invalid-name", + "message": "Variable name \"typeStr\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_precision", + "obj": "MeanAveragePrecision.compute", + "line": 1652, + "column": 8, + "endLine": 1652, + "endColumn": 16, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "invalid-name", + "message": "Variable name \"cocoEval\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_precision", + "obj": "MeanAveragePrecision.compute", + "line": 1658, + "column": 8, + "endLine": 1658, + "endColumn": 17, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "invalid-name", + "message": "Variable name \"mAP_small\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_precision", + "obj": "MeanAveragePrecision.compute", + "line": 1667, + "column": 8, + "endLine": 1667, + "endColumn": 18, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "invalid-name", + "message": "Variable name \"mAP_medium\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_precision", + "obj": "MeanAveragePrecision.compute", + "line": 1676, + "column": 8, + "endLine": 1676, + "endColumn": 17, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "invalid-name", + "message": "Variable name \"mAP_large\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_precision", + "obj": "MeanAveragePrecision.compute", + "line": 1686, + "column": 8, + "endLine": 1686, + "endColumn": 18, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "invalid-name", + "message": "Variable name \"mAP_result\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_recall", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\metrics\\mean_average_recall.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_recall", + "obj": "_MeanAverageRecallSizeResultsMixin.small_objects", + "line": 51, + "column": 4, + "endLine": 51, + "endColumn": 21, + "path": "src\\supervision\\metrics\\mean_average_recall.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_recall", + "obj": "_MeanAverageRecallSizeResultsMixin.medium_objects", + "line": 62, + "column": 4, + "endLine": 62, + "endColumn": 22, + "path": "src\\supervision\\metrics\\mean_average_recall.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_recall", + "obj": "_MeanAverageRecallSizeResultsMixin.large_objects", + "line": 73, + "column": 4, + "endLine": 73, + "endColumn": 21, + "path": "src\\supervision\\metrics\\mean_average_recall.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_recall", + "obj": "MeanAverageRecallResult.mAR_at_1", + "line": 161, + "column": 4, + "endLine": 161, + "endColumn": 16, + "path": "src\\supervision\\metrics\\mean_average_recall.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_recall", + "obj": "MeanAverageRecallResult.mAR_at_1", + "line": 161, + "column": 4, + "endLine": 161, + "endColumn": 16, + "path": "src\\supervision\\metrics\\mean_average_recall.py", + "symbol": "invalid-name", + "message": "Attribute name \"mAR_at_1\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_recall", + "obj": "MeanAverageRecallResult.mAR_at_10", + "line": 165, + "column": 4, + "endLine": 165, + "endColumn": 17, + "path": "src\\supervision\\metrics\\mean_average_recall.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_recall", + "obj": "MeanAverageRecallResult.mAR_at_10", + "line": 165, + "column": 4, + "endLine": 165, + "endColumn": 17, + "path": "src\\supervision\\metrics\\mean_average_recall.py", + "symbol": "invalid-name", + "message": "Attribute name \"mAR_at_10\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_recall", + "obj": "MeanAverageRecallResult.mAR_at_100", + "line": 169, + "column": 4, + "endLine": 169, + "endColumn": 18, + "path": "src\\supervision\\metrics\\mean_average_recall.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_recall", + "obj": "MeanAverageRecallResult.mAR_at_100", + "line": 169, + "column": 4, + "endLine": 169, + "endColumn": 18, + "path": "src\\supervision\\metrics\\mean_average_recall.py", + "symbol": "invalid-name", + "message": "Attribute name \"mAR_at_100\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_recall", + "obj": "MeanAverageRecallResult.to_pandas", + "line": 249, + "column": 8, + "endLine": 249, + "endColumn": 27, + "path": "src\\supervision\\metrics\\mean_average_recall.py", + "symbol": "import-outside-toplevel", + "message": "Import outside toplevel (pandas)", + "message-id": "C0415" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_recall", + "obj": "MeanAverageRecallResult.plot", + "line": 330, + "column": 12, + "endLine": 330, + "endColumn": 15, + "path": "src\\supervision\\metrics\\mean_average_recall.py", + "symbol": "disallowed-name", + "message": "Disallowed name \"bar\"", + "message-id": "C0104" + }, + { + "type": "convention", + "module": "supervision.metrics.precision", + "obj": "", + "line": 826, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\metrics\\precision.py", + "symbol": "trailing-newlines", + "message": "Trailing newlines", + "message-id": "C0305" + }, + { + "type": "convention", + "module": "supervision.metrics.precision", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\metrics\\precision.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.metrics.precision", + "obj": "PrecisionResult.precision_at_50", + "line": 113, + "column": 4, + "endLine": 113, + "endColumn": 23, + "path": "src\\supervision\\metrics\\precision.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.metrics.precision", + "obj": "PrecisionResult.precision_at_75", + "line": 117, + "column": 4, + "endLine": 117, + "endColumn": 23, + "path": "src\\supervision\\metrics\\precision.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.metrics.precision", + "obj": "PrecisionResult.to_pandas", + "line": 252, + "column": 8, + "endLine": 252, + "endColumn": 27, + "path": "src\\supervision\\metrics\\precision.py", + "symbol": "import-outside-toplevel", + "message": "Import outside toplevel (pandas)", + "message-id": "C0415" + }, + { + "type": "convention", + "module": "supervision.metrics.precision", + "obj": "PrecisionResult.plot", + "line": 322, + "column": 12, + "endLine": 322, + "endColumn": 15, + "path": "src\\supervision\\metrics\\precision.py", + "symbol": "disallowed-name", + "message": "Disallowed name \"bar\"", + "message-id": "C0104" + }, + { + "type": "convention", + "module": "supervision.metrics.recall", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.metrics.recall", + "obj": "RecallResult.recall_at_50", + "line": 72, + "column": 4, + "endLine": 72, + "endColumn": 20, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.metrics.recall", + "obj": "RecallResult.recall_at_75", + "line": 76, + "column": 4, + "endLine": 76, + "endColumn": 20, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.metrics.recall", + "obj": "RecallResult.small_objects", + "line": 127, + "column": 4, + "endLine": 127, + "endColumn": 21, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.metrics.recall", + "obj": "RecallResult.medium_objects", + "line": 138, + "column": 4, + "endLine": 138, + "endColumn": 22, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.metrics.recall", + "obj": "RecallResult.large_objects", + "line": 149, + "column": 4, + "endLine": 149, + "endColumn": 21, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.metrics.recall", + "obj": "Recall.to_pandas", + "line": 684, + "column": 8, + "endLine": 684, + "endColumn": 27, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "import-outside-toplevel", + "message": "Import outside toplevel (pandas)", + "message-id": "C0415" + }, + { + "type": "convention", + "module": "supervision.metrics.recall", + "obj": "Recall.plot", + "line": 755, + "column": 12, + "endLine": 755, + "endColumn": 15, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "disallowed-name", + "message": "Disallowed name \"bar\"", + "message-id": "C0104" + }, + { + "type": "convention", + "module": "supervision.metrics", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\metrics\\__init__.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.metrics.utils.object_size", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\metrics\\utils\\object_size.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.metrics.utils.object_size", + "obj": "get_bbox_size_category", + "line": 119, + "column": 4, + "endLine": 119, + "endColumn": 6, + "path": "src\\supervision\\metrics\\utils\\object_size.py", + "symbol": "invalid-name", + "message": "Variable name \"SM\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.utils.object_size", + "obj": "get_bbox_size_category", + "line": 119, + "column": 8, + "endLine": 119, + "endColumn": 10, + "path": "src\\supervision\\metrics\\utils\\object_size.py", + "symbol": "invalid-name", + "message": "Variable name \"LG\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.utils.object_size", + "obj": "get_mask_size_category", + "line": 161, + "column": 4, + "endLine": 161, + "endColumn": 6, + "path": "src\\supervision\\metrics\\utils\\object_size.py", + "symbol": "invalid-name", + "message": "Variable name \"SM\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.utils.object_size", + "obj": "get_mask_size_category", + "line": 161, + "column": 8, + "endLine": 161, + "endColumn": 10, + "path": "src\\supervision\\metrics\\utils\\object_size.py", + "symbol": "invalid-name", + "message": "Variable name \"LG\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.utils.object_size", + "obj": "get_obb_size_category", + "line": 207, + "column": 4, + "endLine": 207, + "endColumn": 6, + "path": "src\\supervision\\metrics\\utils\\object_size.py", + "symbol": "invalid-name", + "message": "Variable name \"SM\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.utils.object_size", + "obj": "get_obb_size_category", + "line": 207, + "column": 8, + "endLine": 207, + "endColumn": 10, + "path": "src\\supervision\\metrics\\utils\\object_size.py", + "symbol": "invalid-name", + "message": "Variable name \"LG\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.utils.utils", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\metrics\\utils\\utils.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.metrics.utils.utils", + "obj": "ensure_pandas_installed", + "line": 1, + "column": 0, + "endLine": 1, + "endColumn": 27, + "path": "src\\supervision\\metrics\\utils\\utils.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.metrics.utils.utils", + "obj": "ensure_pandas_installed", + "line": 3, + "column": 8, + "endLine": 3, + "endColumn": 21, + "path": "src\\supervision\\metrics\\utils\\utils.py", + "symbol": "import-outside-toplevel", + "message": "Import outside toplevel (pandas)", + "message-id": "C0415" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.core", + "obj": "", + "line": 60, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "line-too-long", + "message": "Line too long (145/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.core", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack.frame_id", + "line": 104, + "column": 4, + "endLine": 104, + "endColumn": 16, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.core", + "obj": "remove_duplicate_tracks", + "line": 518, + "column": 0, + "endLine": 518, + "endColumn": 27, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.kalman_filter", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\tracker\\byte_tracker\\kalman_filter.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.matching", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\tracker\\byte_tracker\\matching.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.matching", + "obj": "indices_to_matches", + "line": 15, + "column": 0, + "endLine": 15, + "endColumn": 22, + "path": "src\\supervision\\tracker\\byte_tracker\\matching.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.matching", + "obj": "linear_assignment", + "line": 27, + "column": 0, + "endLine": 27, + "endColumn": 21, + "path": "src\\supervision\\tracker\\byte_tracker\\matching.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.matching", + "obj": "iou_distance", + "line": 44, + "column": 0, + "endLine": 44, + "endColumn": 16, + "path": "src\\supervision\\tracker\\byte_tracker\\matching.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.matching", + "obj": "fuse_score", + "line": 65, + "column": 0, + "endLine": 65, + "endColumn": 14, + "path": "src\\supervision\\tracker\\byte_tracker\\matching.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "TrackState", + "line": 13, + "column": 0, + "endLine": 13, + "endColumn": 16, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "missing-class-docstring", + "message": "Missing class docstring", + "message-id": "C0115" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "TrackState", + "line": 14, + "column": 4, + "endLine": 14, + "endColumn": 7, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "invalid-name", + "message": "Class constant name \"New\" doesn't conform to UPPER_CASE naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "TrackState", + "line": 15, + "column": 4, + "endLine": 15, + "endColumn": 11, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "invalid-name", + "message": "Class constant name \"Tracked\" doesn't conform to UPPER_CASE naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "TrackState", + "line": 16, + "column": 4, + "endLine": 16, + "endColumn": 8, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "invalid-name", + "message": "Class constant name \"Lost\" doesn't conform to UPPER_CASE naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "TrackState", + "line": 17, + "column": 4, + "endLine": 17, + "endColumn": 11, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "invalid-name", + "message": "Class constant name \"Removed\" doesn't conform to UPPER_CASE naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "STrack", + "line": 44, + "column": 0, + "endLine": 44, + "endColumn": 12, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "missing-class-docstring", + "message": "Missing class docstring", + "message-id": "C0115" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "STrack.state", + "line": 62, + "column": 4, + "endLine": 62, + "endColumn": 13, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "STrack.is_activated", + "line": 70, + "column": 4, + "endLine": 70, + "endColumn": 20, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "STrack.start_frame", + "line": 78, + "column": 4, + "endLine": 78, + "endColumn": 19, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "STrack.frame_id", + "line": 86, + "column": 4, + "endLine": 86, + "endColumn": 16, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "STrack.kalman_filter", + "line": 94, + "column": 4, + "endLine": 94, + "endColumn": 21, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "STrack.mean", + "line": 102, + "column": 4, + "endLine": 102, + "endColumn": 12, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "STrack.covariance", + "line": 110, + "column": 4, + "endLine": 110, + "endColumn": 18, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "STrack.score", + "line": 118, + "column": 4, + "endLine": 118, + "endColumn": 13, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "STrack.tracklet_len", + "line": 126, + "column": 4, + "endLine": 126, + "endColumn": 20, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "STrack.minimum_consecutive_frames", + "line": 134, + "column": 4, + "endLine": 134, + "endColumn": 34, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "STrack.internal_track_id", + "line": 138, + "column": 4, + "endLine": 138, + "endColumn": 25, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "STrack.external_track_id", + "line": 146, + "column": 4, + "endLine": 146, + "endColumn": 25, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "STrack.predict", + "line": 153, + "column": 4, + "endLine": 153, + "endColumn": 15, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "STrack.multi_predict", + "line": 165, + "column": 4, + "endLine": 165, + "endColumn": 21, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "STrack.re_activate", + "line": 202, + "column": 4, + "endLine": 202, + "endColumn": 19, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "STrack.to_xyah", + "line": 272, + "column": 4, + "endLine": 272, + "endColumn": 15, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "STrack.tlbr_to_tlwh", + "line": 276, + "column": 4, + "endLine": 276, + "endColumn": 20, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "STrack.tlwh_to_tlbr", + "line": 282, + "column": 4, + "endLine": 282, + "endColumn": 20, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.utils", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\tracker\\byte_tracker\\utils.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.utils", + "obj": "IdCounter", + "line": 4, + "column": 0, + "endLine": 4, + "endColumn": 15, + "path": "src\\supervision\\tracker\\byte_tracker\\utils.py", + "symbol": "missing-class-docstring", + "message": "Missing class docstring", + "message-id": "C0115" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.utils", + "obj": "IdCounter.NO_ID", + "line": 36, + "column": 4, + "endLine": 36, + "endColumn": 13, + "path": "src\\supervision\\tracker\\byte_tracker\\utils.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.utils", + "obj": "IdCounter.NO_ID", + "line": 36, + "column": 4, + "endLine": 36, + "endColumn": 13, + "path": "src\\supervision\\tracker\\byte_tracker\\utils.py", + "symbol": "invalid-name", + "message": "Attribute name \"NO_ID\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.utils.conversion", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\utils\\conversion.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.utils.conversion", + "obj": "ensure_cv2_image_for_annotation", + "line": 48, + "column": 0, + "endLine": 48, + "endColumn": 35, + "path": "src\\supervision\\utils\\conversion.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.utils.conversion", + "obj": "ensure_pil_image_for_annotation", + "line": 110, + "column": 0, + "endLine": 110, + "endColumn": 35, + "path": "src\\supervision\\utils\\conversion.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.utils.conversion", + "obj": "ensure_cv2_image_for_processing", + "line": 121, + "column": 0, + "endLine": 121, + "endColumn": 35, + "path": "src\\supervision\\utils\\conversion.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.utils.file", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\utils\\file.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.utils.file", + "obj": "NumpyJsonEncoder", + "line": 11, + "column": 0, + "endLine": 11, + "endColumn": 22, + "path": "src\\supervision\\utils\\file.py", + "symbol": "missing-class-docstring", + "message": "Missing class docstring", + "message-id": "C0115" + }, + { + "type": "convention", + "module": "supervision.utils.image", + "obj": "", + "line": 75, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\utils\\image.py", + "symbol": "line-too-long", + "message": "Line too long (125/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.utils.image", + "obj": "", + "line": 133, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\utils\\image.py", + "symbol": "line-too-long", + "message": "Line too long (127/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.utils.image", + "obj": "", + "line": 191, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\utils\\image.py", + "symbol": "line-too-long", + "message": "Line too long (129/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.utils.image", + "obj": "", + "line": 253, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\utils\\image.py", + "symbol": "line-too-long", + "message": "Line too long (135/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.utils.image", + "obj": "", + "line": 390, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\utils\\image.py", + "symbol": "line-too-long", + "message": "Line too long (125/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.utils.image", + "obj": "", + "line": 428, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\utils\\image.py", + "symbol": "line-too-long", + "message": "Line too long (135/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.utils.image", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\utils\\image.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.utils.image", + "obj": "ImageSink", + "line": 481, + "column": 0, + "endLine": 481, + "endColumn": 15, + "path": "src\\supervision\\utils\\image.py", + "symbol": "missing-class-docstring", + "message": "Missing class docstring", + "message-id": "C0115" + }, + { + "type": "convention", + "module": "supervision.utils.internal", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\utils\\internal.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.utils.internal", + "obj": "classproperty", + "line": 133, + "column": 0, + "endLine": 133, + "endColumn": 19, + "path": "src\\supervision\\utils\\internal.py", + "symbol": "invalid-name", + "message": "Class name \"classproperty\" doesn't conform to PascalCase naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.utils.iterables", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\utils\\iterables.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.utils.logger", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\utils\\logger.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.utils.notebook", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\utils\\notebook.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.utils.video", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\utils\\video.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.utils.video", + "obj": "VideoInfo.from_video_path", + "line": 59, + "column": 4, + "endLine": 59, + "endColumn": 23, + "path": "src\\supervision\\utils\\video.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.utils.video", + "obj": "VideoInfo.resolution_wh", + "line": 72, + "column": 4, + "endLine": 72, + "endColumn": 21, + "path": "src\\supervision\\utils\\video.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.utils.video", + "obj": "_VideoProcessor.run", + "line": 401, + "column": 4, + "endLine": 401, + "endColumn": 11, + "path": "src\\supervision\\utils\\video.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.validators", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.validators", + "obj": "validate_xyxy", + "line": 33, + "column": 0, + "endLine": 33, + "endColumn": 17, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.validators", + "obj": "validate_mask", + "line": 80, + "column": 0, + "endLine": 80, + "endColumn": 17, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.validators", + "obj": "validate_class_id", + "line": 102, + "column": 0, + "endLine": 102, + "endColumn": 21, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.validators", + "obj": "validate_confidence", + "line": 125, + "column": 0, + "endLine": 125, + "endColumn": 23, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.validators", + "obj": "validate_key_point_confidence", + "line": 156, + "column": 0, + "endLine": 156, + "endColumn": 33, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.validators", + "obj": "validate_keypoint_confidence", + "line": 165, + "column": 0, + "endLine": 165, + "endColumn": 32, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.validators", + "obj": "validate_tracker_id", + "line": 187, + "column": 0, + "endLine": 187, + "endColumn": 23, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.validators", + "obj": "validate_data", + "line": 212, + "column": 0, + "endLine": 212, + "endColumn": 17, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.validators", + "obj": "validate_xy", + "line": 232, + "column": 0, + "endLine": 232, + "endColumn": 15, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.validators", + "obj": "validate_detections_fields", + "line": 281, + "column": 0, + "endLine": 281, + "endColumn": 30, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.validators", + "obj": "validate_key_points_fields", + "line": 317, + "column": 0, + "endLine": 317, + "endColumn": 30, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.validators", + "obj": "validate_keypoints_fields", + "line": 328, + "column": 0, + "endLine": 328, + "endColumn": 29, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.validators", + "obj": "validate_resolution", + "line": 362, + "column": 0, + "endLine": 362, + "endColumn": 23, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + } +] \ No newline at end of file diff --git a/metrics-after-pylint/pylint_depois.json b/metrics-after-pylint/pylint_depois.json new file mode 100644 index 0000000000..5ba0573c8a --- /dev/null +++ b/metrics-after-pylint/pylint_depois.json @@ -0,0 +1,14354 @@ +[ + { + "type": "convention", + "module": "supervision.config", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\config.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\__init__.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 9, + "column": 0, + "endLine": 33, + "endColumn": 1, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.annotators.core import BackgroundOverlayAnnotator, BlurAnnotator, BoxAnnotator, BoxCornerAnnotator, CircleAnnotator, ColorAnnotator, ComparisonAnnotator, CropAnnotator, DotAnnotator, EllipseAnnotator, HaloAnnotator, HeatMapAnnotator, IconAnnotator, LabelAnnotator, MaskAnnotator, OrientedBoxAnnotator, PercentageBarAnnotator, PixelateAnnotator, PolygonAnnotator, RichLabelAnnotator, RoundBoxAnnotator, TraceAnnotator, TriangleAnnotator\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 34, + "column": 0, + "endLine": 39, + "endColumn": 1, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.annotators.utils import ColorLookup, hex_to_rgba, is_valid_hex, rgba_to_hex\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 40, + "column": 0, + "endLine": 40, + "endColumn": 59, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.classification.core import Classifications\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 41, + "column": 0, + "endLine": 45, + "endColumn": 1, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.dataset.core import BaseDataset, ClassificationDataset, DetectionDataset\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 46, + "column": 0, + "endLine": 46, + "endColumn": 73, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.dataset.formats.coco import get_coco_class_index_mapping\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 47, + "column": 0, + "endLine": 47, + "endColumn": 58, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.detection.compact_mask import CompactMask\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 48, + "column": 0, + "endLine": 48, + "endColumn": 49, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.detection.core import Detections\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 49, + "column": 0, + "endLine": 53, + "endColumn": 1, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.detection.line_zone import LineZone, LineZoneAnnotator, LineZoneAnnotatorMulticlass\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 54, + "column": 0, + "endLine": 54, + "endColumn": 56, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.detection.tools.csv_sink import CSVSink\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 55, + "column": 0, + "endLine": 55, + "endColumn": 72, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.detection.tools.inference_slicer import InferenceSlicer\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 56, + "column": 0, + "endLine": 56, + "endColumn": 58, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.detection.tools.json_sink import JSONSink\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 57, + "column": 0, + "endLine": 57, + "endColumn": 86, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.detection.tools.polygon_zone import PolygonZone, PolygonZoneAnnotator\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 58, + "column": 0, + "endLine": 58, + "endColumn": 67, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.detection.tools.smoother import DetectionsSmoother\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 59, + "column": 0, + "endLine": 66, + "endColumn": 1, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.detection.utils.boxes import clip_boxes, denormalize_boxes, move_boxes, pad_boxes, scale_boxes, xyxyxyxy_to_xyxy\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 67, + "column": 0, + "endLine": 81, + "endColumn": 1, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.detection.utils.converters import is_compressed_rle, mask_to_polygons, mask_to_rle, mask_to_xyxy, polygon_to_mask, polygon_to_xyxy, rle_to_mask, xcycwh_to_xyxy, xywh_to_xyxy, xyxy_to_mask, xyxy_to_polygons, xyxy_to_xcycarh, xyxy_to_xywh\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 82, + "column": 0, + "endLine": 96, + "endColumn": 1, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.detection.utils.iou_and_nms import OverlapFilter, OverlapMetric, box_iou, box_iou_batch, box_iou_batch_with_jaccard, box_non_max_merge, box_non_max_suppression, mask_iou_batch, mask_non_max_merge, mask_non_max_suppression, oriented_box_iou_batch, oriented_box_non_max_merge, oriented_box_non_max_suppression\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 97, + "column": 0, + "endLine": 103, + "endColumn": 1, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.detection.utils.masks import calculate_masks_centroids, contains_holes, contains_multiple_segments, filter_segments_by_distance, move_masks\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 104, + "column": 0, + "endLine": 107, + "endColumn": 1, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.detection.utils.polygons import approximate_polygon, filter_polygons_by_area\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 108, + "column": 0, + "endLine": 108, + "endColumn": 77, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.detection.utils.vlms import edit_distance, fuzzy_match_index\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 109, + "column": 0, + "endLine": 109, + "endColumn": 46, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.detection.vlm import LMM, VLM\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 110, + "column": 0, + "endLine": 110, + "endColumn": 54, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.draw.color import Color, ColorPalette\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 111, + "column": 0, + "endLine": 121, + "endColumn": 1, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.draw.utils import calculate_optimal_line_thickness, calculate_optimal_text_scale, draw_filled_polygon, draw_filled_rectangle, draw_image, draw_line, draw_polygon, draw_rectangle, draw_text\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 122, + "column": 0, + "endLine": 122, + "endColumn": 59, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.geometry.core import Point, Position, Rect\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 123, + "column": 0, + "endLine": 123, + "endColumn": 57, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.geometry.utils import get_polygon_center\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 124, + "column": 0, + "endLine": 132, + "endColumn": 1, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.key_points.annotators import EdgeAnnotator, VertexAnnotator, VertexEllipseAnnotator, VertexEllipseAreaAnnotator, VertexEllipseHaloAnnotator, VertexEllipseOutlineAnnotator, VertexLabelAnnotator\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 133, + "column": 0, + "endLine": 133, + "endColumn": 49, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.key_points.core import KeyPoints\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 134, + "column": 0, + "endLine": 134, + "endColumn": 79, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.metrics.detection import ConfusionMatrix, MeanAveragePrecision\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 135, + "column": 0, + "endLine": 135, + "endColumn": 59, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.tracker.byte_tracker.core import ByteTrack\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 136, + "column": 0, + "endLine": 136, + "endColumn": 69, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.utils.conversion import cv2_to_pillow, pillow_to_cv2\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 137, + "column": 0, + "endLine": 137, + "endColumn": 61, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.utils.file import list_files_with_extensions\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 138, + "column": 0, + "endLine": 148, + "endColumn": 1, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.utils.image import ImageSink, crop_image, get_image_resolution_wh, grayscale_image, letterbox_image, overlay_image, resize_image, scale_image, tint_image\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 149, + "column": 0, + "endLine": 149, + "endColumn": 67, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.utils.notebook import plot_image, plot_images_grid\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 150, + "column": 0, + "endLine": 156, + "endColumn": 1, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.utils.video import FPSMonitor, VideoInfo, VideoSink, get_video_frames_generator, process_video\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision.annotators.base", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\annotators\\base.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.annotators.base", + "obj": "BaseAnnotator", + "line": 7, + "column": 0, + "endLine": 7, + "endColumn": 19, + "path": "src\\supervision\\annotators\\base.py", + "symbol": "missing-class-docstring", + "message": "Missing class docstring", + "message-id": "C0115" + }, + { + "type": "convention", + "module": "supervision.annotators.base", + "obj": "BaseAnnotator.annotate", + "line": 9, + "column": 4, + "endLine": 9, + "endColumn": 16, + "path": "src\\supervision\\annotators\\base.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "refactor", + "module": "supervision.annotators.base", + "obj": "BaseAnnotator", + "line": 7, + "column": 0, + "endLine": 7, + "endColumn": 19, + "path": "src\\supervision\\annotators\\base.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "convention", + "module": "supervision.annotators.core", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-lines", + "message": "Too many lines in module (3382/1000)", + "message-id": "C0302" + }, + { + "type": "convention", + "module": "supervision.annotators.core", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "", + "line": 81, + "column": 11, + "endLine": 81, + "endColumn": 35, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'FONT_HERSHEY_SIMPLEX' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "_LabelAnnotatorConfig", + "line": 85, + "column": 0, + "endLine": 85, + "endColumn": 27, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-instance-attributes", + "message": "Too many instance attributes (9/7)", + "message-id": "R0902" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "_BaseLabelAnnotator.__init__", + "line": 102, + "column": 4, + "endLine": 102, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (9/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "_BaseLabelAnnotator.__init__", + "line": 102, + "column": 4, + "endLine": 102, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (9/5)", + "message-id": "R0917" + }, + { + "type": "convention", + "module": "supervision.annotators.core", + "obj": "_BaseLabelAnnotator.color", + "line": 149, + "column": 4, + "endLine": 149, + "endColumn": 13, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.annotators.core", + "obj": "_BaseLabelAnnotator.color_lookup", + "line": 157, + "column": 4, + "endLine": 157, + "endColumn": 20, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.annotators.core", + "obj": "_BaseLabelAnnotator.text_color", + "line": 165, + "column": 4, + "endLine": 165, + "endColumn": 18, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.annotators.core", + "obj": "_BaseLabelAnnotator.text_padding", + "line": 173, + "column": 4, + "endLine": 173, + "endColumn": 20, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.annotators.core", + "obj": "_BaseLabelAnnotator.text_anchor", + "line": 181, + "column": 4, + "endLine": 181, + "endColumn": 19, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.annotators.core", + "obj": "_BaseLabelAnnotator.text_offset", + "line": 189, + "column": 4, + "endLine": 189, + "endColumn": 19, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.annotators.core", + "obj": "_BaseLabelAnnotator.border_radius", + "line": 197, + "column": 4, + "endLine": 197, + "endColumn": 21, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.annotators.core", + "obj": "_BaseLabelAnnotator.smart_position", + "line": 205, + "column": 4, + "endLine": 205, + "endColumn": 22, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.annotators.core", + "obj": "_BaseLabelAnnotator.max_line_length", + "line": 213, + "column": 4, + "endLine": 213, + "endColumn": 23, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "BoxAnnotator.annotate", + "line": 287, + "column": 4, + "endLine": 287, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'BoxAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "BoxAnnotator.annotate", + "line": 340, + "column": 12, + "endLine": 340, + "endColumn": 25, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'rectangle' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "BoxAnnotator", + "line": 263, + "column": 0, + "endLine": 263, + "endColumn": 18, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "OrientedBoxAnnotator.annotate", + "line": 374, + "column": 4, + "endLine": 374, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'OrientedBoxAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "OrientedBoxAnnotator.annotate", + "line": 432, + "column": 12, + "endLine": 432, + "endColumn": 28, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'drawContours' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "OrientedBoxAnnotator", + "line": 350, + "column": 0, + "endLine": 350, + "endColumn": 26, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "_paint_masks_by_area", + "line": 438, + "column": 0, + "endLine": 438, + "endColumn": 24, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-locals", + "message": "Too many local variables (16/15)", + "message-id": "R0914" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "MaskAnnotator.annotate", + "line": 524, + "column": 4, + "endLine": 524, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'MaskAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "MaskAnnotator.annotate", + "line": 578, + "column": 8, + "endLine": 578, + "endColumn": 23, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'addWeighted' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "MaskAnnotator", + "line": 496, + "column": 0, + "endLine": 496, + "endColumn": 19, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "PolygonAnnotator.annotate", + "line": 612, + "column": 4, + "endLine": 612, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'PolygonAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "PolygonAnnotator", + "line": 584, + "column": 0, + "endLine": 584, + "endColumn": 22, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "ColorAnnotator.annotate", + "line": 703, + "column": 4, + "endLine": 703, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'ColorAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "ColorAnnotator.annotate", + "line": 757, + "column": 12, + "endLine": 757, + "endColumn": 25, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'rectangle' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "ColorAnnotator.annotate", + "line": 765, + "column": 8, + "endLine": 765, + "endColumn": 23, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'addWeighted' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "ColorAnnotator", + "line": 679, + "column": 0, + "endLine": 679, + "endColumn": 20, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "HaloAnnotator.annotate", + "line": 803, + "column": 4, + "endLine": 803, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'HaloAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "HaloAnnotator.annotate", + "line": 859, + "column": 23, + "endLine": 859, + "endColumn": 31, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'blur' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "HaloAnnotator.annotate", + "line": 861, + "column": 15, + "endLine": 861, + "endColumn": 27, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'cvtColor' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "HaloAnnotator.annotate", + "line": 861, + "column": 42, + "endLine": 861, + "endColumn": 60, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'COLOR_BGR2GRAY' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "HaloAnnotator", + "line": 771, + "column": 0, + "endLine": 771, + "endColumn": 19, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "EllipseAnnotator.annotate", + "line": 903, + "column": 4, + "endLine": 903, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'EllipseAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "EllipseAnnotator.annotate", + "line": 958, + "column": 12, + "endLine": 958, + "endColumn": 23, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'ellipse' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "EllipseAnnotator.annotate", + "line": 967, + "column": 25, + "endLine": 967, + "endColumn": 35, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'LINE_4' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "EllipseAnnotator", + "line": 873, + "column": 0, + "endLine": 873, + "endColumn": 22, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "BoxCornerAnnotator.annotate", + "line": 999, + "column": 4, + "endLine": 999, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'BoxCornerAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "BoxCornerAnnotator.annotate", + "line": 1056, + "column": 16, + "endLine": 1056, + "endColumn": 24, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'line' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "BoxCornerAnnotator.annotate", + "line": 1061, + "column": 16, + "endLine": 1061, + "endColumn": 24, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'line' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "BoxCornerAnnotator", + "line": 972, + "column": 0, + "endLine": 972, + "endColumn": 24, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "CircleAnnotator.annotate", + "line": 1092, + "column": 4, + "endLine": 1092, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'CircleAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "CircleAnnotator.annotate", + "line": 1148, + "column": 12, + "endLine": 1148, + "endColumn": 22, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'circle' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "CircleAnnotator", + "line": 1067, + "column": 0, + "endLine": 1067, + "endColumn": 21, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "DotAnnotator.__init__", + "line": 1165, + "column": 4, + "endLine": 1165, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (6/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "DotAnnotator.__init__", + "line": 1165, + "column": 4, + "endLine": 1165, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (6/5)", + "message-id": "R0917" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "DotAnnotator.annotate", + "line": 1195, + "column": 4, + "endLine": 1195, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'DotAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "DotAnnotator.annotate", + "line": 1250, + "column": 12, + "endLine": 1250, + "endColumn": 22, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'circle' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "DotAnnotator.annotate", + "line": 1260, + "column": 16, + "endLine": 1260, + "endColumn": 26, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'circle' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "DotAnnotator", + "line": 1159, + "column": 0, + "endLine": 1159, + "endColumn": 18, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "LabelAnnotator.__init__", + "line": 1275, + "column": 4, + "endLine": 1275, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (11/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "LabelAnnotator.__init__", + "line": 1275, + "column": 4, + "endLine": 1275, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (11/5)", + "message-id": "R0917" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "LabelAnnotator.annotate", + "line": 1325, + "column": 4, + "endLine": 1325, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'LabelAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "LabelAnnotator._get_label_properties", + "line": 1406, + "column": 4, + "endLine": 1406, + "endColumn": 29, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-locals", + "message": "Too many local variables (18/15)", + "message-id": "R0914" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "LabelAnnotator._get_label_properties", + "line": 1427, + "column": 35, + "endLine": 1427, + "endColumn": 50, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'getTextSize' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "LabelAnnotator._draw_labels", + "line": 1460, + "column": 4, + "endLine": 1460, + "endColumn": 20, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-locals", + "message": "Too many local variables (18/15)", + "message-id": "R0914" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "LabelAnnotator._draw_labels", + "line": 1510, + "column": 34, + "endLine": 1510, + "endColumn": 49, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'getTextSize' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "LabelAnnotator._draw_labels", + "line": 1519, + "column": 30, + "endLine": 1519, + "endColumn": 45, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'getTextSize' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "LabelAnnotator._draw_labels", + "line": 1529, + "column": 16, + "endLine": 1529, + "endColumn": 27, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'putText' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "LabelAnnotator._draw_labels", + "line": 1537, + "column": 29, + "endLine": 1537, + "endColumn": 40, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'LINE_AA' member", + "message-id": "E1101" + }, + { + "type": "convention", + "module": "supervision.annotators.core", + "obj": "LabelAnnotator.draw_rounded_rectangle", + "line": 1543, + "column": 4, + "endLine": 1543, + "endColumn": 30, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "LabelAnnotator.draw_rounded_rectangle", + "line": 1567, + "column": 12, + "endLine": 1567, + "endColumn": 25, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'rectangle' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "LabelAnnotator.draw_rounded_rectangle", + "line": 1575, + "column": 12, + "endLine": 1575, + "endColumn": 22, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'circle' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "RichLabelAnnotator.__init__", + "line": 1591, + "column": 4, + "endLine": 1591, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (11/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "RichLabelAnnotator.__init__", + "line": 1591, + "column": 4, + "endLine": 1591, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (11/5)", + "message-id": "R0917" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "RichLabelAnnotator.annotate", + "line": 1642, + "column": 4, + "endLine": 1642, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'RichLabelAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "RichLabelAnnotator._get_label_properties", + "line": 1722, + "column": 4, + "endLine": 1722, + "endColumn": 29, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-locals", + "message": "Too many local variables (24/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "RichLabelAnnotator._draw_labels", + "line": 1774, + "column": 4, + "endLine": 1774, + "endColumn": 20, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-locals", + "message": "Too many local variables (23/15)", + "message-id": "R0914" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "IconAnnotator.annotate", + "line": 1885, + "column": 4, + "endLine": 1885, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'IconAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "IconAnnotator.annotate", + "line": 1953, + "column": 23, + "endLine": 1953, + "endColumn": 57, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-function-args", + "message": "Too many positional arguments for classmethod call", + "message-id": "E1121" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "IconAnnotator._load_icon", + "line": 1958, + "column": 15, + "endLine": 1958, + "endColumn": 25, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'imread' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "IconAnnotator._load_icon", + "line": 1958, + "column": 37, + "endLine": 1958, + "endColumn": 57, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'IMREAD_UNCHANGED' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "IconAnnotator", + "line": 1861, + "column": 0, + "endLine": 1861, + "endColumn": 19, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "BlurAnnotator.annotate", + "line": 1987, + "column": 4, + "endLine": 1987, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'BlurAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "BlurAnnotator.annotate", + "line": 2041, + "column": 18, + "endLine": 2041, + "endColumn": 26, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'blur' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "BlurAnnotator", + "line": 1970, + "column": 0, + "endLine": 1970, + "endColumn": 19, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "TraceAnnotator.__init__", + "line": 2058, + "column": 4, + "endLine": 2058, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (6/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "TraceAnnotator.__init__", + "line": 2058, + "column": 4, + "endLine": 2058, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (6/5)", + "message-id": "R0917" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "TraceAnnotator.annotate", + "line": 2090, + "column": 4, + "endLine": 2090, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'TraceAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "TraceAnnotator.annotate", + "line": 2090, + "column": 4, + "endLine": 2090, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-locals", + "message": "Too many local variables (17/15)", + "message-id": "R0914" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "TraceAnnotator.annotate", + "line": 2182, + "column": 16, + "endLine": 2182, + "endColumn": 29, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'polylines' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "TraceAnnotator", + "line": 2047, + "column": 0, + "endLine": 2047, + "endColumn": 20, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "HeatMapAnnotator.__init__", + "line": 2199, + "column": 4, + "endLine": 2199, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (6/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "HeatMapAnnotator.__init__", + "line": 2199, + "column": 4, + "endLine": 2199, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (6/5)", + "message-id": "R0917" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "HeatMapAnnotator.annotate", + "line": 2228, + "column": 4, + "endLine": 2228, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'HeatMapAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "HeatMapAnnotator.annotate", + "line": 2279, + "column": 12, + "endLine": 2279, + "endColumn": 22, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'circle' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "HeatMapAnnotator.annotate", + "line": 2293, + "column": 19, + "endLine": 2293, + "endColumn": 27, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'blur' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "HeatMapAnnotator.annotate", + "line": 2296, + "column": 15, + "endLine": 2296, + "endColumn": 27, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'cvtColor' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "HeatMapAnnotator.annotate", + "line": 2296, + "column": 33, + "endLine": 2296, + "endColumn": 50, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'COLOR_HSV2BGR' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "HeatMapAnnotator.annotate", + "line": 2297, + "column": 15, + "endLine": 2297, + "endColumn": 27, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'cvtColor' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "HeatMapAnnotator.annotate", + "line": 2297, + "column": 61, + "endLine": 2297, + "endColumn": 79, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'COLOR_GRAY2BGR' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "HeatMapAnnotator.annotate", + "line": 2298, + "column": 22, + "endLine": 2298, + "endColumn": 37, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'addWeighted' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "HeatMapAnnotator", + "line": 2192, + "column": 0, + "endLine": 2192, + "endColumn": 22, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "PixelateAnnotator.annotate", + "line": 2323, + "column": 4, + "endLine": 2323, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'PixelateAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "PixelateAnnotator.annotate", + "line": 2378, + "column": 42, + "endLine": 2378, + "endColumn": 50, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'mean' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "PixelateAnnotator.annotate", + "line": 2381, + "column": 42, + "endLine": 2381, + "endColumn": 50, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'mean' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "PixelateAnnotator.annotate", + "line": 2384, + "column": 28, + "endLine": 2384, + "endColumn": 38, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'resize' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "PixelateAnnotator.annotate", + "line": 2387, + "column": 30, + "endLine": 2387, + "endColumn": 40, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'resize' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "PixelateAnnotator.annotate", + "line": 2390, + "column": 30, + "endLine": 2390, + "endColumn": 47, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'INTER_NEAREST' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "PixelateAnnotator", + "line": 2304, + "column": 0, + "endLine": 2304, + "endColumn": 23, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "TriangleAnnotator.__init__", + "line": 2404, + "column": 4, + "endLine": 2404, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (7/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "TriangleAnnotator.__init__", + "line": 2404, + "column": 4, + "endLine": 2404, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (7/5)", + "message-id": "R0917" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "TriangleAnnotator.annotate", + "line": 2437, + "column": 4, + "endLine": 2437, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'TriangleAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "TriangleAnnotator.annotate", + "line": 2500, + "column": 12, + "endLine": 2500, + "endColumn": 24, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'fillPoly' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "TriangleAnnotator.annotate", + "line": 2510, + "column": 16, + "endLine": 2510, + "endColumn": 29, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'polylines' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "TriangleAnnotator", + "line": 2398, + "column": 0, + "endLine": 2398, + "endColumn": 23, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "RoundBoxAnnotator.annotate", + "line": 2553, + "column": 4, + "endLine": 2553, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'RoundBoxAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "RoundBoxAnnotator.annotate", + "line": 2553, + "column": 4, + "endLine": 2553, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-locals", + "message": "Too many local variables (19/15)", + "message-id": "R0914" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "RoundBoxAnnotator.annotate", + "line": 2634, + "column": 16, + "endLine": 2634, + "endColumn": 27, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'ellipse' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "RoundBoxAnnotator.annotate", + "line": 2645, + "column": 16, + "endLine": 2645, + "endColumn": 24, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'line' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "RoundBoxAnnotator", + "line": 2520, + "column": 0, + "endLine": 2520, + "endColumn": 23, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "PercentageBarAnnotator.__init__", + "line": 2661, + "column": 4, + "endLine": 2661, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (7/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "PercentageBarAnnotator.__init__", + "line": 2661, + "column": 4, + "endLine": 2661, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (7/5)", + "message-id": "R0917" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "PercentageBarAnnotator.annotate", + "line": 2697, + "column": 4, + "endLine": 2697, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'PercentageBarAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "PercentageBarAnnotator.annotate", + "line": 2775, + "column": 12, + "endLine": 2775, + "endColumn": 25, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'rectangle' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "PercentageBarAnnotator.annotate", + "line": 2785, + "column": 12, + "endLine": 2785, + "endColumn": 25, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'rectangle' member", + "message-id": "E1101" + }, + { + "type": "convention", + "module": "supervision.annotators.core", + "obj": "PercentageBarAnnotator.calculate_border_coordinates", + "line": 2795, + "column": 4, + "endLine": 2795, + "endColumn": 36, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "PercentageBarAnnotator.calculate_border_coordinates", + "line": 2801, + "column": 8, + "endLine": 2821, + "endColumn": 54, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-else-return", + "message": "Unnecessary \"elif\" after \"return\", remove the leading \"el\" from \"elif\"", + "message-id": "R1705" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "PercentageBarAnnotator.calculate_border_coordinates", + "line": 2809, + "column": 13, + "endLine": 2809, + "endColumn": 79, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "consider-using-in", + "message": "Consider merging these comparisons with 'in' by using 'position in (Position.CENTER, Position.CENTER_OF_MASS)'. Use a set instead if elements are hashable.", + "message-id": "R1714" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "PercentageBarAnnotator.calculate_border_coordinates", + "line": 2795, + "column": 4, + "endLine": 2795, + "endColumn": 36, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-return-statements", + "message": "Too many return statements (9/6)", + "message-id": "R0911" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "PercentageBarAnnotator.calculate_border_coordinates", + "line": 2795, + "column": 4, + "endLine": 2795, + "endColumn": 36, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "inconsistent-return-statements", + "message": "Either all return statements in a function should return an expression, or none of them should.", + "message-id": "R1710" + }, + { + "type": "convention", + "module": "supervision.annotators.core", + "obj": "PercentageBarAnnotator.validate_custom_values", + "line": 2856, + "column": 4, + "endLine": 2856, + "endColumn": 30, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "CropAnnotator.annotate", + "line": 2896, + "column": 4, + "endLine": 2896, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'CropAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "CropAnnotator.annotate", + "line": 2896, + "column": 4, + "endLine": 2896, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-locals", + "message": "Too many local variables (16/15)", + "message-id": "R0914" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "CropAnnotator.annotate", + "line": 2957, + "column": 20, + "endLine": 2957, + "endColumn": 85, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "redundant-keyword-arg", + "message": "Argument 'image' passed by position and keyword in classmethod call", + "message-id": "E1124" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "CropAnnotator.annotate", + "line": 2966, + "column": 12, + "endLine": 2966, + "endColumn": 25, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'rectangle' member", + "message-id": "E1101" + }, + { + "type": "convention", + "module": "supervision.annotators.core", + "obj": "CropAnnotator.calculate_crop_coordinates", + "line": 2977, + "column": 4, + "endLine": 2977, + "endColumn": 34, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "CropAnnotator.calculate_crop_coordinates", + "line": 2983, + "column": 8, + "endLine": 3015, + "endColumn": 78, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-else-return", + "message": "Unnecessary \"elif\" after \"return\", remove the leading \"el\" from \"elif\"", + "message-id": "R1705" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "CropAnnotator.calculate_crop_coordinates", + "line": 2997, + "column": 13, + "endLine": 2997, + "endColumn": 79, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "consider-using-in", + "message": "Consider merging these comparisons with 'in' by using 'position in (Position.CENTER, Position.CENTER_OF_MASS)'. Use a set instead if elements are hashable.", + "message-id": "R1714" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "CropAnnotator.calculate_crop_coordinates", + "line": 2977, + "column": 4, + "endLine": 2977, + "endColumn": 34, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-return-statements", + "message": "Too many return statements (9/6)", + "message-id": "R0911" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "CropAnnotator.calculate_crop_coordinates", + "line": 2977, + "column": 4, + "endLine": 2977, + "endColumn": 34, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "inconsistent-return-statements", + "message": "Either all return statements in a function should return an expression, or none of them should.", + "message-id": "R1710" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "BackgroundOverlayAnnotator.annotate", + "line": 3051, + "column": 4, + "endLine": 3051, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'BackgroundOverlayAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "BackgroundOverlayAnnotator.annotate", + "line": 3089, + "column": 8, + "endLine": 3089, + "endColumn": 23, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'addWeighted' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "BackgroundOverlayAnnotator", + "line": 3018, + "column": 0, + "endLine": 3018, + "endColumn": 32, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "_ComparisonAnnotatorConfig", + "line": 3106, + "column": 0, + "endLine": 3106, + "endColumn": 32, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-instance-attributes", + "message": "Too many instance attributes (8/7)", + "message-id": "R0902" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "ComparisonAnnotator.__init__", + "line": 3128, + "column": 4, + "endLine": 3128, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (8/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "ComparisonAnnotator._draw_labels", + "line": 3311, + "column": 4, + "endLine": 3311, + "endColumn": 20, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-locals", + "message": "Too many local variables (21/15)", + "message-id": "R0914" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "ComparisonAnnotator._draw_labels", + "line": 3344, + "column": 26, + "endLine": 3344, + "endColumn": 41, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'getTextSize' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "ComparisonAnnotator", + "line": 3117, + "column": 0, + "endLine": 3117, + "endColumn": 25, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "convention", + "module": "supervision.annotators.utils", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\annotators\\utils.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.annotators.utils", + "obj": "ColorLookup.list", + "line": 36, + "column": 4, + "endLine": 36, + "endColumn": 12, + "path": "src\\supervision\\annotators\\utils.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.annotators.utils", + "obj": "resolve_color_idx", + "line": 40, + "column": 0, + "endLine": 40, + "endColumn": 21, + "path": "src\\supervision\\annotators\\utils.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "refactor", + "module": "supervision.annotators.utils", + "obj": "resolve_color_idx", + "line": 51, + "column": 4, + "endLine": 76, + "endColumn": 56, + "path": "src\\supervision\\annotators\\utils.py", + "symbol": "no-else-return", + "message": "Unnecessary \"elif\" after \"return\", remove the leading \"el\" from \"elif\"", + "message-id": "R1705" + }, + { + "type": "convention", + "module": "supervision.annotators.utils", + "obj": "resolve_text_background_xyxy", + "line": 80, + "column": 0, + "endLine": 80, + "endColumn": 32, + "path": "src\\supervision\\annotators\\utils.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "refactor", + "module": "supervision.annotators.utils", + "obj": "resolve_text_background_xyxy", + "line": 88, + "column": 4, + "endLine": 130, + "endColumn": 9, + "path": "src\\supervision\\annotators\\utils.py", + "symbol": "no-else-return", + "message": "Unnecessary \"elif\" after \"return\", remove the leading \"el\" from \"elif\"", + "message-id": "R1705" + }, + { + "type": "refactor", + "module": "supervision.annotators.utils", + "obj": "resolve_text_background_xyxy", + "line": 99, + "column": 9, + "endLine": 99, + "endColumn": 75, + "path": "src\\supervision\\annotators\\utils.py", + "symbol": "consider-using-in", + "message": "Consider merging these comparisons with 'in' by using 'position in (Position.CENTER, Position.CENTER_OF_MASS)'. Use a set instead if elements are hashable.", + "message-id": "R1714" + }, + { + "type": "refactor", + "module": "supervision.annotators.utils", + "obj": "resolve_text_background_xyxy", + "line": 80, + "column": 0, + "endLine": 80, + "endColumn": 32, + "path": "src\\supervision\\annotators\\utils.py", + "symbol": "too-many-return-statements", + "message": "Too many return statements (9/6)", + "message-id": "R0911" + }, + { + "type": "refactor", + "module": "supervision.annotators.utils", + "obj": "resolve_text_background_xyxy", + "line": 80, + "column": 0, + "endLine": 80, + "endColumn": 32, + "path": "src\\supervision\\annotators\\utils.py", + "symbol": "inconsistent-return-statements", + "message": "Either all return statements in a function should return an expression, or none of them should.", + "message-id": "R1710" + }, + { + "type": "convention", + "module": "supervision.annotators.utils", + "obj": "get_color_by_index", + "line": 133, + "column": 0, + "endLine": 133, + "endColumn": 22, + "path": "src\\supervision\\annotators\\utils.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.annotators.utils", + "obj": "resolve_color", + "line": 139, + "column": 0, + "endLine": 139, + "endColumn": 17, + "path": "src\\supervision\\annotators\\utils.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.annotators.utils", + "obj": "validate_labels", + "line": 231, + "column": 0, + "endLine": 231, + "endColumn": 19, + "path": "src\\supervision\\annotators\\utils.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.annotators.utils", + "obj": "Trace", + "line": 332, + "column": 0, + "endLine": 332, + "endColumn": 11, + "path": "src\\supervision\\annotators\\utils.py", + "symbol": "missing-class-docstring", + "message": "Missing class docstring", + "message-id": "C0115" + }, + { + "type": "convention", + "module": "supervision.annotators.utils", + "obj": "Trace.put", + "line": 347, + "column": 4, + "endLine": 347, + "endColumn": 11, + "path": "src\\supervision\\annotators\\utils.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.annotators.utils", + "obj": "Trace.get", + "line": 377, + "column": 4, + "endLine": 377, + "endColumn": 11, + "path": "src\\supervision\\annotators\\utils.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.annotators.utils", + "obj": "rgba_to_hex", + "line": 427, + "column": 11, + "endLine": 427, + "endColumn": 38, + "path": "src\\supervision\\annotators\\utils.py", + "symbol": "consider-using-f-string", + "message": "Formatting a regular string which could be an f-string", + "message-id": "C0209" + }, + { + "type": "convention", + "module": "supervision.assets.downloader", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\assets\\downloader.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.assets.list", + "obj": "", + "line": 28, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\assets\\list.py", + "symbol": "line-too-long", + "message": "Line too long (147/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.assets.list", + "obj": "", + "line": 29, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\assets\\list.py", + "symbol": "line-too-long", + "message": "Line too long (147/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.assets.list", + "obj": "", + "line": 30, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\assets\\list.py", + "symbol": "line-too-long", + "message": "Line too long (147/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.assets.list", + "obj": "", + "line": 31, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\assets\\list.py", + "symbol": "line-too-long", + "message": "Line too long (147/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.assets.list", + "obj": "", + "line": 32, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\assets\\list.py", + "symbol": "line-too-long", + "message": "Line too long (147/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.assets.list", + "obj": "", + "line": 33, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\assets\\list.py", + "symbol": "line-too-long", + "message": "Line too long (147/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.assets.list", + "obj": "", + "line": 34, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\assets\\list.py", + "symbol": "line-too-long", + "message": "Line too long (147/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.assets.list", + "obj": "", + "line": 35, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\assets\\list.py", + "symbol": "line-too-long", + "message": "Line too long (147/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.assets.list", + "obj": "", + "line": 36, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\assets\\list.py", + "symbol": "line-too-long", + "message": "Line too long (147/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.assets.list", + "obj": "", + "line": 37, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\assets\\list.py", + "symbol": "line-too-long", + "message": "Line too long (147/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.assets.list", + "obj": "", + "line": 38, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\assets\\list.py", + "symbol": "line-too-long", + "message": "Line too long (147/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.assets.list", + "obj": "", + "line": 39, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\assets\\list.py", + "symbol": "line-too-long", + "message": "Line too long (147/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.assets.list", + "obj": "", + "line": 62, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\assets\\list.py", + "symbol": "line-too-long", + "message": "Line too long (139/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.assets.list", + "obj": "", + "line": 63, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\assets\\list.py", + "symbol": "line-too-long", + "message": "Line too long (139/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.assets.list", + "obj": "", + "line": 64, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\assets\\list.py", + "symbol": "line-too-long", + "message": "Line too long (139/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.assets.list", + "obj": "", + "line": 65, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\assets\\list.py", + "symbol": "line-too-long", + "message": "Line too long (139/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.assets.list", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\assets\\list.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.assets.list", + "obj": "Assets", + "line": 7, + "column": 0, + "endLine": 7, + "endColumn": 12, + "path": "src\\supervision\\assets\\list.py", + "symbol": "missing-class-docstring", + "message": "Missing class docstring", + "message-id": "C0115" + }, + { + "type": "convention", + "module": "supervision.assets.list", + "obj": "Assets.list", + "line": 19, + "column": 4, + "endLine": 19, + "endColumn": 12, + "path": "src\\supervision\\assets\\list.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.assets", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\assets\\__init__.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.classification.core", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\classification\\core.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.classification.core", + "obj": "Classifications", + "line": 33, + "column": 0, + "endLine": 33, + "endColumn": 21, + "path": "src\\supervision\\classification\\core.py", + "symbol": "missing-class-docstring", + "message": "Missing class docstring", + "message-id": "C0115" + }, + { + "type": "convention", + "module": "supervision.dataset.core", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\dataset\\core.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.dataset.core", + "obj": "BaseDataset", + "line": 41, + "column": 0, + "endLine": 41, + "endColumn": 17, + "path": "src\\supervision\\dataset\\core.py", + "symbol": "missing-class-docstring", + "message": "Missing class docstring", + "message-id": "C0115" + }, + { + "type": "convention", + "module": "supervision.dataset.core", + "obj": "BaseDataset.split", + "line": 47, + "column": 4, + "endLine": 47, + "endColumn": 13, + "path": "src\\supervision\\dataset\\core.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "error", + "module": "supervision.dataset.core", + "obj": "DetectionDataset._get_image", + "line": 105, + "column": 16, + "endLine": 105, + "endColumn": 26, + "path": "src\\supervision\\dataset\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'imread' member", + "message-id": "E1101" + }, + { + "type": "warning", + "module": "supervision.dataset.core", + "obj": "DetectionDataset.merge.is_in_memory", + "line": 280, + "column": 23, + "endLine": 280, + "endColumn": 48, + "path": "src\\supervision\\dataset\\core.py", + "symbol": "protected-access", + "message": "Access to a protected member _images_in_memory of a client class", + "message-id": "W0212" + }, + { + "type": "warning", + "module": "supervision.dataset.core", + "obj": "DetectionDataset.merge.is_lazy", + "line": 283, + "column": 23, + "endLine": 283, + "endColumn": 48, + "path": "src\\supervision\\dataset\\core.py", + "symbol": "protected-access", + "message": "Access to a protected member _images_in_memory of a client class", + "message-id": "W0212" + }, + { + "type": "refactor", + "module": "supervision.dataset.core", + "obj": "DetectionDataset.merge", + "line": 285, + "column": 24, + "endLine": 285, + "endColumn": 80, + "path": "src\\supervision\\dataset\\core.py", + "symbol": "use-a-generator", + "message": "Use a generator instead 'all(is_in_memory(dataset) for dataset in dataset_list)'", + "message-id": "R1729" + }, + { + "type": "refactor", + "module": "supervision.dataset.core", + "obj": "DetectionDataset.merge", + "line": 286, + "column": 19, + "endLine": 286, + "endColumn": 70, + "path": "src\\supervision\\dataset\\core.py", + "symbol": "use-a-generator", + "message": "Use a generator instead 'all(is_lazy(dataset) for dataset in dataset_list)'", + "message-id": "R1729" + }, + { + "type": "warning", + "module": "supervision.dataset.core", + "obj": "DetectionDataset.merge", + "line": 294, + "column": 36, + "endLine": 294, + "endColumn": 61, + "path": "src\\supervision\\dataset\\core.py", + "symbol": "protected-access", + "message": "Access to a protected member _images_in_memory of a client class", + "message-id": "W0212" + }, + { + "type": "warning", + "module": "supervision.dataset.core", + "obj": "DetectionDataset.as_pascal_voc", + "line": 384, + "column": 21, + "endLine": 384, + "endColumn": 48, + "path": "src\\supervision\\dataset\\core.py", + "symbol": "unspecified-encoding", + "message": "Using open without explicitly specifying an encoding", + "message-id": "W1514" + }, + { + "type": "refactor", + "module": "supervision.dataset.core", + "obj": "DetectionDataset.as_yolo", + "line": 504, + "column": 4, + "endLine": 504, + "endColumn": 15, + "path": "src\\supervision\\dataset\\core.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (7/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.dataset.core", + "obj": "DetectionDataset.as_yolo", + "line": 504, + "column": 4, + "endLine": 504, + "endColumn": 15, + "path": "src\\supervision\\dataset\\core.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (7/5)", + "message-id": "R0917" + }, + { + "type": "convention", + "module": "supervision.dataset.core", + "obj": "DetectionDataset.as_yolo", + "line": 552, + "column": 12, + "endLine": 552, + "endColumn": 27, + "path": "src\\supervision\\dataset\\core.py", + "symbol": "import-outside-toplevel", + "message": "Import outside toplevel (warnings)", + "message-id": "C0415" + }, + { + "type": "refactor", + "module": "supervision.dataset.core", + "obj": "DetectionDataset.as_coco", + "line": 626, + "column": 4, + "endLine": 626, + "endColumn": 15, + "path": "src\\supervision\\dataset\\core.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (7/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.dataset.core", + "obj": "DetectionDataset.as_coco", + "line": 626, + "column": 4, + "endLine": 626, + "endColumn": 15, + "path": "src\\supervision\\dataset\\core.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (7/5)", + "message-id": "R0917" + }, + { + "type": "error", + "module": "supervision.dataset.core", + "obj": "ClassificationDataset._get_image", + "line": 770, + "column": 16, + "endLine": 770, + "endColumn": 26, + "path": "src\\supervision\\dataset\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'imread' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.dataset.core", + "obj": "ClassificationDataset.as_folder_structure", + "line": 919, + "column": 12, + "endLine": 919, + "endColumn": 23, + "path": "src\\supervision\\dataset\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'imwrite' member", + "message-id": "E1101" + }, + { + "type": "convention", + "module": "supervision.dataset.utils", + "obj": "", + "line": 29, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\dataset\\utils.py", + "symbol": "line-too-long", + "message": "Line too long (111/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.dataset.utils", + "obj": "", + "line": 37, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\dataset\\utils.py", + "symbol": "line-too-long", + "message": "Line too long (111/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.dataset.utils", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\dataset\\utils.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.dataset.utils", + "obj": "approximate_mask_with_polygons", + "line": 52, + "column": 0, + "endLine": 52, + "endColumn": 34, + "path": "src\\supervision\\dataset\\utils.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.dataset.utils", + "obj": "merge_class_lists", + "line": 80, + "column": 0, + "endLine": 80, + "endColumn": 21, + "path": "src\\supervision\\dataset\\utils.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.dataset.utils", + "obj": "map_detections_class_id", + "line": 108, + "column": 0, + "endLine": 108, + "endColumn": 27, + "path": "src\\supervision\\dataset\\utils.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.dataset.utils", + "obj": "save_dataset_images", + "line": 128, + "column": 0, + "endLine": 128, + "endColumn": 23, + "path": "src\\supervision\\dataset\\utils.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "warning", + "module": "supervision.dataset.utils", + "obj": "save_dataset_images", + "line": 132, + "column": 25, + "endLine": 132, + "endColumn": 50, + "path": "src\\supervision\\dataset\\utils.py", + "symbol": "protected-access", + "message": "Access to a protected member _images_in_memory of a client class", + "message-id": "W0212" + }, + { + "type": "warning", + "module": "supervision.dataset.utils", + "obj": "save_dataset_images", + "line": 133, + "column": 20, + "endLine": 133, + "endColumn": 45, + "path": "src\\supervision\\dataset\\utils.py", + "symbol": "protected-access", + "message": "Access to a protected member _images_in_memory of a client class", + "message-id": "W0212" + }, + { + "type": "error", + "module": "supervision.dataset.utils", + "obj": "save_dataset_images", + "line": 134, + "column": 12, + "endLine": 134, + "endColumn": 23, + "path": "src\\supervision\\dataset\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'imwrite' member", + "message-id": "E1101" + }, + { + "type": "convention", + "module": "supervision.dataset.formats.coco", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\dataset\\formats\\coco.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.dataset.formats.coco", + "obj": "coco_categories_to_classes", + "line": 30, + "column": 0, + "endLine": 30, + "endColumn": 30, + "path": "src\\supervision\\dataset\\formats\\coco.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.dataset.formats.coco", + "obj": "build_coco_class_index_mapping", + "line": 37, + "column": 0, + "endLine": 37, + "endColumn": 34, + "path": "src\\supervision\\dataset\\formats\\coco.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.dataset.formats.coco", + "obj": "group_coco_annotations_by_image_id", + "line": 85, + "column": 0, + "endLine": 85, + "endColumn": 38, + "path": "src\\supervision\\dataset\\formats\\coco.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.dataset.formats.coco", + "obj": "coco_annotations_to_masks", + "line": 97, + "column": 0, + "endLine": 97, + "endColumn": 29, + "path": "src\\supervision\\dataset\\formats\\coco.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.coco", + "obj": "coco_annotations_to_detections", + "line": 194, + "column": 15, + "endLine": 196, + "endColumn": 9, + "path": "src\\supervision\\dataset\\formats\\coco.py", + "symbol": "use-dict-literal", + "message": "Consider using '{\"iscrowd\": np.asarray(iscrowd, dtype=int), \"area\": np.asarray(area, dtype=float), ... }' instead of a call to 'dict'.", + "message-id": "R1735" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.coco", + "obj": "_build_coco_segmentation_from_mask", + "line": 218, + "column": 0, + "endLine": 218, + "endColumn": 38, + "path": "src\\supervision\\dataset\\formats\\coco.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (6/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.coco", + "obj": "_build_coco_segmentation_from_mask", + "line": 218, + "column": 0, + "endLine": 218, + "endColumn": 38, + "path": "src\\supervision\\dataset\\formats\\coco.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (6/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.coco", + "obj": "detections_to_coco_annotations", + "line": 283, + "column": 0, + "endLine": 283, + "endColumn": 34, + "path": "src\\supervision\\dataset\\formats\\coco.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (6/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.coco", + "obj": "detections_to_coco_annotations", + "line": 283, + "column": 0, + "endLine": 283, + "endColumn": 34, + "path": "src\\supervision\\dataset\\formats\\coco.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (6/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.coco", + "obj": "detections_to_coco_annotations", + "line": 283, + "column": 0, + "endLine": 283, + "endColumn": 34, + "path": "src\\supervision\\dataset\\formats\\coco.py", + "symbol": "too-many-locals", + "message": "Too many local variables (18/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.coco", + "obj": "load_coco_annotations", + "line": 423, + "column": 0, + "endLine": 423, + "endColumn": 25, + "path": "src\\supervision\\dataset\\formats\\coco.py", + "symbol": "too-many-locals", + "message": "Too many local variables (22/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.coco", + "obj": "save_coco_annotations", + "line": 534, + "column": 0, + "endLine": 534, + "endColumn": 25, + "path": "src\\supervision\\dataset\\formats\\coco.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (7/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.coco", + "obj": "save_coco_annotations", + "line": 534, + "column": 0, + "endLine": 534, + "endColumn": 25, + "path": "src\\supervision\\dataset\\formats\\coco.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (7/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.coco", + "obj": "save_coco_annotations", + "line": 534, + "column": 0, + "endLine": 534, + "endColumn": 25, + "path": "src\\supervision\\dataset\\formats\\coco.py", + "symbol": "too-many-locals", + "message": "Too many local variables (22/15)", + "message-id": "R0914" + }, + { + "type": "convention", + "module": "supervision.dataset.formats.pascal_voc", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\dataset\\formats\\pascal_voc.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.pascal_voc", + "obj": "object_to_pascal_voc", + "line": 19, + "column": 0, + "endLine": 19, + "endColumn": 24, + "path": "src\\supervision\\dataset\\formats\\pascal_voc.py", + "symbol": "too-many-locals", + "message": "Too many local variables (17/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.pascal_voc", + "obj": "detections_to_pascal_voc", + "line": 84, + "column": 0, + "endLine": 84, + "endColumn": 28, + "path": "src\\supervision\\dataset\\formats\\pascal_voc.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (7/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.pascal_voc", + "obj": "detections_to_pascal_voc", + "line": 84, + "column": 0, + "endLine": 84, + "endColumn": 28, + "path": "src\\supervision\\dataset\\formats\\pascal_voc.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (7/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.pascal_voc", + "obj": "detections_to_pascal_voc", + "line": 84, + "column": 0, + "endLine": 84, + "endColumn": 28, + "path": "src\\supervision\\dataset\\formats\\pascal_voc.py", + "symbol": "too-many-locals", + "message": "Too many local variables (28/15)", + "message-id": "R0914" + }, + { + "type": "error", + "module": "supervision.dataset.formats.pascal_voc", + "obj": "load_pascal_voc_annotations", + "line": 223, + "column": 16, + "endLine": 223, + "endColumn": 26, + "path": "src\\supervision\\dataset\\formats\\pascal_voc.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'imread' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.pascal_voc", + "obj": "detections_from_xml_obj", + "line": 235, + "column": 0, + "endLine": 235, + "endColumn": 27, + "path": "src\\supervision\\dataset\\formats\\pascal_voc.py", + "symbol": "too-many-locals", + "message": "Too many local variables (24/15)", + "message-id": "R0914" + }, + { + "type": "convention", + "module": "supervision.dataset.formats.pascal_voc", + "obj": "parse_polygon_points", + "line": 339, + "column": 0, + "endLine": 339, + "endColumn": 24, + "path": "src\\supervision\\dataset\\formats\\pascal_voc.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.dataset.formats.yolo", + "obj": "", + "line": 252, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\dataset\\formats\\yolo.py", + "symbol": "line-too-long", + "message": "Line too long (124/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.dataset.formats.yolo", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\dataset\\formats\\yolo.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.yolo", + "obj": "_with_seg_mask", + "line": 67, + "column": 11, + "endLine": 67, + "endColumn": 57, + "path": "src\\supervision\\dataset\\formats\\yolo.py", + "symbol": "use-a-generator", + "message": "Use a generator instead 'any(len(line.split()) > 5 for line in lines)'", + "message-id": "R1729" + }, + { + "type": "warning", + "module": "supervision.dataset.formats.yolo", + "obj": "_extract_class_names.", + "line": 121, + "column": 43, + "endLine": 121, + "endColumn": 59, + "path": "src\\supervision\\dataset\\formats\\yolo.py", + "symbol": "unnecessary-lambda", + "message": "Lambda may not be necessary", + "message-id": "W0108" + }, + { + "type": "convention", + "module": "supervision.dataset.formats.yolo", + "obj": "yolo_annotations_to_detections", + "line": 138, + "column": 0, + "endLine": 138, + "endColumn": 34, + "path": "src\\supervision\\dataset\\formats\\yolo.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.yolo", + "obj": "yolo_annotations_to_detections", + "line": 138, + "column": 0, + "endLine": 138, + "endColumn": 34, + "path": "src\\supervision\\dataset\\formats\\yolo.py", + "symbol": "too-many-locals", + "message": "Too many local variables (19/15)", + "message-id": "R0914" + }, + { + "type": "error", + "module": "supervision.dataset.formats.yolo", + "obj": "yolo_annotations_to_detections", + "line": 172, + "column": 19, + "endLine": 172, + "endColumn": 54, + "path": "src\\supervision\\dataset\\formats\\yolo.py", + "symbol": "too-many-function-args", + "message": "Too many positional arguments for method call", + "message-id": "E1121" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.yolo", + "obj": "load_yolo_annotations", + "line": 187, + "column": 0, + "endLine": 187, + "endColumn": 25, + "path": "src\\supervision\\dataset\\formats\\yolo.py", + "symbol": "too-many-locals", + "message": "Too many local variables (18/15)", + "message-id": "R0914" + }, + { + "type": "convention", + "module": "supervision.dataset.formats.yolo", + "obj": "object_to_yolo", + "line": 274, + "column": 0, + "endLine": 274, + "endColumn": 18, + "path": "src\\supervision\\dataset\\formats\\yolo.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.yolo", + "obj": "object_to_yolo", + "line": 274, + "column": 0, + "endLine": 274, + "endColumn": 18, + "path": "src\\supervision\\dataset\\formats\\yolo.py", + "symbol": "too-many-locals", + "message": "Too many local variables (17/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.yolo", + "obj": "object_to_yolo", + "line": 281, + "column": 4, + "endLine": 293, + "endColumn": 50, + "path": "src\\supervision\\dataset\\formats\\yolo.py", + "symbol": "no-else-return", + "message": "Unnecessary \"else\" after \"return\", remove the \"else\" and de-indent the code inside it", + "message-id": "R1705" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.yolo", + "obj": "detections_to_yolo_annotations", + "line": 296, + "column": 0, + "endLine": 296, + "endColumn": 34, + "path": "src\\supervision\\dataset\\formats\\yolo.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (6/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.yolo", + "obj": "detections_to_yolo_annotations", + "line": 296, + "column": 0, + "endLine": 296, + "endColumn": 34, + "path": "src\\supervision\\dataset\\formats\\yolo.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (6/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.yolo", + "obj": "detections_to_yolo_annotations", + "line": 296, + "column": 0, + "endLine": 296, + "endColumn": 34, + "path": "src\\supervision\\dataset\\formats\\yolo.py", + "symbol": "too-many-locals", + "message": "Too many local variables (16/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.yolo", + "obj": "save_yolo_annotations", + "line": 422, + "column": 0, + "endLine": 422, + "endColumn": 25, + "path": "src\\supervision\\dataset\\formats\\yolo.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (6/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.yolo", + "obj": "save_yolo_annotations", + "line": 422, + "column": 0, + "endLine": 422, + "endColumn": 25, + "path": "src\\supervision\\dataset\\formats\\yolo.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (6/5)", + "message-id": "R0917" + }, + { + "type": "convention", + "module": "supervision.dataset.formats.yolo", + "obj": "save_data_yaml", + "line": 474, + "column": 0, + "endLine": 474, + "endColumn": 18, + "path": "src\\supervision\\dataset\\formats\\yolo.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.compact_mask", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\compact_mask.py", + "symbol": "too-many-lines", + "message": "Too many lines in module (1306/1000)", + "message-id": "C0302" + }, + { + "type": "convention", + "module": "supervision.detection.compact_mask", + "obj": "_resize_crop", + "line": 369, + "column": 4, + "endLine": 369, + "endColumn": 14, + "path": "src\\supervision\\detection\\compact_mask.py", + "symbol": "import-outside-toplevel", + "message": "Import outside toplevel (cv2)", + "message-id": "C0415" + }, + { + "type": "error", + "module": "supervision.detection.compact_mask", + "obj": "_resize_crop", + "line": 381, + "column": 14, + "endLine": 381, + "endColumn": 24, + "path": "src\\supervision\\detection\\compact_mask.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'resize' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.compact_mask", + "obj": "_resize_crop", + "line": 384, + "column": 22, + "endLine": 384, + "endColumn": 39, + "path": "src\\supervision\\detection\\compact_mask.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'INTER_NEAREST' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.detection.compact_mask", + "obj": "CompactMask.from_dense", + "line": 476, + "column": 4, + "endLine": 476, + "endColumn": 18, + "path": "src\\supervision\\detection\\compact_mask.py", + "symbol": "too-many-locals", + "message": "Too many local variables (24/15)", + "message-id": "R0914" + }, + { + "type": "warning", + "module": "supervision.detection.compact_mask", + "obj": "CompactMask.merge", + "line": 958, + "column": 22, + "endLine": 958, + "endColumn": 48, + "path": "src\\supervision\\detection\\compact_mask.py", + "symbol": "protected-access", + "message": "Access to a protected member _image_shape of a client class", + "message-id": "W0212" + }, + { + "type": "warning", + "module": "supervision.detection.compact_mask", + "obj": "CompactMask.merge", + "line": 960, + "column": 15, + "endLine": 960, + "endColumn": 30, + "path": "src\\supervision\\detection\\compact_mask.py", + "symbol": "protected-access", + "message": "Access to a protected member _image_shape of a client class", + "message-id": "W0212" + }, + { + "type": "warning", + "module": "supervision.detection.compact_mask", + "obj": "CompactMask.merge", + "line": 963, + "column": 40, + "endLine": 963, + "endColumn": 55, + "path": "src\\supervision\\detection\\compact_mask.py", + "symbol": "protected-access", + "message": "Access to a protected member _image_shape of a client class", + "message-id": "W0212" + }, + { + "type": "warning", + "module": "supervision.detection.compact_mask", + "obj": "CompactMask.merge", + "line": 971, + "column": 28, + "endLine": 971, + "endColumn": 36, + "path": "src\\supervision\\detection\\compact_mask.py", + "symbol": "protected-access", + "message": "Access to a protected member _rles of a client class", + "message-id": "W0212" + }, + { + "type": "warning", + "module": "supervision.detection.compact_mask", + "obj": "CompactMask.merge", + "line": 976, + "column": 13, + "endLine": 976, + "endColumn": 28, + "path": "src\\supervision\\detection\\compact_mask.py", + "symbol": "protected-access", + "message": "Access to a protected member _crop_shapes of a client class", + "message-id": "W0212" + }, + { + "type": "warning", + "module": "supervision.detection.compact_mask", + "obj": "CompactMask.merge", + "line": 979, + "column": 13, + "endLine": 979, + "endColumn": 24, + "path": "src\\supervision\\detection\\compact_mask.py", + "symbol": "protected-access", + "message": "Access to a protected member _offsets of a client class", + "message-id": "W0212" + }, + { + "type": "refactor", + "module": "supervision.detection.compact_mask", + "obj": "CompactMask.repack", + "line": 984, + "column": 4, + "endLine": 984, + "endColumn": 14, + "path": "src\\supervision\\detection\\compact_mask.py", + "symbol": "too-many-locals", + "message": "Too many local variables (18/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.detection.compact_mask", + "obj": "CompactMask.with_offset", + "line": 1067, + "column": 4, + "endLine": 1067, + "endColumn": 19, + "path": "src\\supervision\\detection\\compact_mask.py", + "symbol": "too-many-locals", + "message": "Too many local variables (29/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.detection.compact_mask", + "obj": "CompactMask.resize", + "line": 1192, + "column": 4, + "endLine": 1192, + "endColumn": 14, + "path": "src\\supervision\\detection\\compact_mask.py", + "symbol": "too-many-locals", + "message": "Too many local variables (27/15)", + "message-id": "R0914" + }, + { + "type": "convention", + "module": "supervision.detection.compact_mask", + "obj": "CompactMask.resize", + "line": 1233, + "column": 8, + "endLine": 1233, + "endColumn": 57, + "path": "src\\supervision\\detection\\compact_mask.py", + "symbol": "import-outside-toplevel", + "message": "Import outside toplevel (concurrent.futures.ThreadPoolExecutor)", + "message-id": "C0415" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 73, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (143/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 77, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (115/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 93, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (119/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 109, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (121/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 437, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (101/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 953, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (132/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 954, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (132/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 955, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (132/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 956, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (132/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 957, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (132/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 958, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (132/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 959, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (132/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 960, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (132/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 961, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (132/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 1014, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (102/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 1376, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (204/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 1390, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (106/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 1439, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (132/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 1440, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (132/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 1441, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (132/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 1442, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (132/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 1443, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (132/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 1444, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (132/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 1445, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (132/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 1446, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (132/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 1447, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (132/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 1448, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (132/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 1501, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (102/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 1834, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (204/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 1848, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (106/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 2550, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (119/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "too-many-lines", + "message": "Too many lines in module (2960/1000)", + "message-id": "C0302" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "Detections.__iter__", + "line": 196, + "column": 8, + "endLine": 204, + "endColumn": 13, + "path": "src\\supervision\\detection\\core.py", + "symbol": "consider-using-enumerate", + "message": "Consider using enumerate instead of iterating with range and len", + "message-id": "C0200" + }, + { + "type": "refactor", + "module": "supervision.detection.core", + "obj": "Detections.from_transformers", + "line": 560, + "column": 8, + "endLine": 570, + "endColumn": 13, + "path": "src\\supervision\\detection\\core.py", + "symbol": "no-else-return", + "message": "Unnecessary \"else\" after \"return\", remove the \"else\" and de-indent the code inside it", + "message-id": "R1705" + }, + { + "type": "refactor", + "module": "supervision.detection.core", + "obj": "Detections.from_sam3", + "line": 718, + "column": 4, + "endLine": 718, + "endColumn": 17, + "path": "src\\supervision\\detection\\core.py", + "symbol": "too-many-locals", + "message": "Too many local variables (20/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.detection.core", + "obj": "Detections.from_azure_analyze_image", + "line": 813, + "column": 4, + "endLine": 813, + "endColumn": 32, + "path": "src\\supervision\\detection\\core.py", + "symbol": "too-many-locals", + "message": "Too many local variables (19/15)", + "message-id": "R0914" + }, + { + "type": "warning", + "module": "supervision.detection.core", + "obj": "Detections.from_lmm", + "line": 1417, + "column": 16, + "endLine": 1420, + "endColumn": 17, + "path": "src\\supervision\\detection\\core.py", + "symbol": "raise-missing-from", + "message": "Consider explicitly re-raising using 'except ValueError as exc' and 'raise ValueError(f\"Invalid LMM string '{lmm}'. Must be one of {[m.value for m in LMM]}\") from exc'", + "message-id": "W0707" + }, + { + "type": "refactor", + "module": "supervision.detection.core", + "obj": "Detections.from_vlm", + "line": 1431, + "column": 4, + "endLine": 1431, + "endColumn": 16, + "path": "src\\supervision\\detection\\core.py", + "symbol": "too-many-return-statements", + "message": "Too many return statements (10/6)", + "message-id": "R0911" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "Detections.merge.stack_or_none", + "line": 2155, + "column": 19, + "endLine": 2155, + "endColumn": 43, + "path": "src\\supervision\\detection\\core.py", + "symbol": "unnecessary-dunder-call", + "message": "Unnecessarily calls dunder method __getattribute__. Access attribute directly or use getattr built-in function.", + "message-id": "C2801" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "Detections.merge.stack_or_none", + "line": 2157, + "column": 19, + "endLine": 2157, + "endColumn": 43, + "path": "src\\supervision\\detection\\core.py", + "symbol": "unnecessary-dunder-call", + "message": "Unnecessarily calls dunder method __getattribute__. Access attribute directly or use getattr built-in function.", + "message-id": "C2801" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "Detections.merge.stack_or_none", + "line": 2160, + "column": 25, + "endLine": 2160, + "endColumn": 49, + "path": "src\\supervision\\detection\\core.py", + "symbol": "unnecessary-dunder-call", + "message": "Unnecessarily calls dunder method __getattribute__. Access attribute directly or use getattr built-in function.", + "message-id": "C2801" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "Detections.merge.stack_or_none", + "line": 2165, + "column": 30, + "endLine": 2165, + "endColumn": 54, + "path": "src\\supervision\\detection\\core.py", + "symbol": "unnecessary-dunder-call", + "message": "Unnecessarily calls dunder method __getattribute__. Access attribute directly or use getattr built-in function.", + "message-id": "C2801" + }, + { + "type": "refactor", + "module": "supervision.detection.core", + "obj": "Detections.get_anchors_coordinates", + "line": 2206, + "column": 8, + "endLine": 2248, + "endColumn": 75, + "path": "src\\supervision\\detection\\core.py", + "symbol": "no-else-return", + "message": "Unnecessary \"elif\" after \"return\", remove the leading \"el\" from \"elif\"", + "message-id": "R1705" + }, + { + "type": "refactor", + "module": "supervision.detection.core", + "obj": "Detections.get_anchors_coordinates", + "line": 2187, + "column": 4, + "endLine": 2187, + "endColumn": 31, + "path": "src\\supervision\\detection\\core.py", + "symbol": "too-many-return-statements", + "message": "Too many return statements (10/6)", + "message-id": "R0911" + }, + { + "type": "refactor", + "module": "supervision.detection.core", + "obj": "Detections", + "line": 68, + "column": 0, + "endLine": 68, + "endColumn": 16, + "path": "src\\supervision\\detection\\core.py", + "symbol": "too-many-public-methods", + "message": "Too many public methods (26/20)", + "message-id": "R0904" + }, + { + "type": "refactor", + "module": "supervision.detection.core", + "obj": "_merge_detection_group", + "line": 2648, + "column": 0, + "endLine": 2648, + "endColumn": 26, + "path": "src\\supervision\\detection\\core.py", + "symbol": "too-many-locals", + "message": "Too many local variables (18/15)", + "message-id": "R0914" + }, + { + "type": "error", + "module": "supervision.detection.core", + "obj": "merge_inner_detection_object_pair", + "line": 2785, + "column": 13, + "endLine": 2785, + "endColumn": 30, + "path": "src\\supervision\\detection\\core.py", + "symbol": "no-member", + "message": "Module 'supervision.detection.core' has no 'xyxy' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.core", + "obj": "merge_inner_detection_object_pair", + "line": 2787, + "column": 7, + "endLine": 2787, + "endColumn": 30, + "path": "src\\supervision\\detection\\core.py", + "symbol": "no-member", + "message": "Module 'supervision.detection.core' has no 'confidence' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.core", + "obj": "merge_inner_detection_object_pair", + "line": 2790, + "column": 15, + "endLine": 2790, + "endColumn": 38, + "path": "src\\supervision\\detection\\core.py", + "symbol": "no-member", + "message": "Module 'supervision.detection.core' has no 'confidence' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.core", + "obj": "merge_inner_detection_object_pair", + "line": 2795, + "column": 31, + "endLine": 2795, + "endColumn": 54, + "path": "src\\supervision\\detection\\core.py", + "symbol": "no-member", + "message": "Module 'supervision.detection.core' has no 'confidence' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.core", + "obj": "merge_inner_detection_object_pair", + "line": 2804, + "column": 7, + "endLine": 2804, + "endColumn": 24, + "path": "src\\supervision\\detection\\core.py", + "symbol": "no-member", + "message": "Module 'supervision.detection.core' has no 'mask' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.core", + "obj": "merge_inner_detection_object_pair", + "line": 2807, + "column": 36, + "endLine": 2807, + "endColumn": 53, + "path": "src\\supervision\\detection\\core.py", + "symbol": "no-member", + "message": "Module 'supervision.detection.core' has no 'mask' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.core", + "obj": "merge_inner_detection_object_pair", + "line": 2809, + "column": 7, + "endLine": 2809, + "endColumn": 30, + "path": "src\\supervision\\detection\\core.py", + "symbol": "no-member", + "message": "Module 'supervision.detection.core' has no 'confidence' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.core", + "obj": "merge_inner_detection_object_pair", + "line": 2811, + "column": 9, + "endLine": 2811, + "endColumn": 32, + "path": "src\\supervision\\detection\\core.py", + "symbol": "no-member", + "message": "Module 'supervision.detection.core' has no 'confidence' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.core", + "obj": "merge_inner_detection_object_pair", + "line": 2816, + "column": 31, + "endLine": 2816, + "endColumn": 52, + "path": "src\\supervision\\detection\\core.py", + "symbol": "no-member", + "message": "Module 'supervision.detection.core' has no 'metadata' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.core", + "obj": "merge_inner_detections_objects", + "line": 2843, + "column": 19, + "endLine": 2843, + "endColumn": 29, + "path": "src\\supervision\\detection\\core.py", + "symbol": "unsubscriptable-object", + "message": "Value 'detections' is unsubscriptable", + "message-id": "E1136" + }, + { + "type": "error", + "module": "supervision.detection.core", + "obj": "merge_inner_detections_objects", + "line": 2844, + "column": 24, + "endLine": 2844, + "endColumn": 34, + "path": "src\\supervision\\detection\\core.py", + "symbol": "unsubscriptable-object", + "message": "Value 'detections' is unsubscriptable", + "message-id": "E1136" + }, + { + "type": "error", + "module": "supervision.detection.core", + "obj": "merge_inner_detections_objects", + "line": 2853, + "column": 23, + "endLine": 2853, + "endColumn": 84, + "path": "src\\supervision\\detection\\core.py", + "symbol": "too-many-function-args", + "message": "Too many positional arguments for classmethod call", + "message-id": "E1121" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "validate_fields_both_defined_or_none", + "line": 2957, + "column": 0, + "endLine": 2957, + "endColumn": 40, + "path": "src\\supervision\\detection\\core.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.line_zone", + "obj": "", + "line": 80, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "line-too-long", + "message": "Line too long (118/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.line_zone", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotatorConfig", + "line": 28, + "column": 0, + "endLine": 28, + "endColumn": 29, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "missing-class-docstring", + "message": "Missing class docstring", + "message-id": "C0115" + }, + { + "type": "refactor", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotatorConfig", + "line": 28, + "column": 0, + "endLine": 28, + "endColumn": 29, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "too-many-instance-attributes", + "message": "Too many instance attributes (14/7)", + "message-id": "R0902" + }, + { + "type": "convention", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotatorMulticlassConfig", + "line": 46, + "column": 0, + "endLine": 46, + "endColumn": 39, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "missing-class-docstring", + "message": "Missing class docstring", + "message-id": "C0115" + }, + { + "type": "refactor", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotatorMulticlassConfig", + "line": 46, + "column": 0, + "endLine": 46, + "endColumn": 39, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "too-many-instance-attributes", + "message": "Too many instance attributes (9/7)", + "message-id": "R0902" + }, + { + "type": "warning", + "module": "supervision.detection.line_zone", + "obj": "_multiclass_config_property.getter", + "line": 65, + "column": 23, + "endLine": 65, + "endColumn": 35, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "protected-access", + "message": "Access to a protected member _config of a client class", + "message-id": "W0212" + }, + { + "type": "warning", + "module": "supervision.detection.line_zone", + "obj": "_multiclass_config_property.setter", + "line": 68, + "column": 16, + "endLine": 68, + "endColumn": 28, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "protected-access", + "message": "Access to a protected member _config of a client class", + "message-id": "W0212" + }, + { + "type": "convention", + "module": "supervision.detection.line_zone", + "obj": "LineZone.in_count", + "line": 177, + "column": 4, + "endLine": 177, + "endColumn": 16, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.line_zone", + "obj": "LineZone.out_count", + "line": 181, + "column": 4, + "endLine": 181, + "endColumn": 17, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.line_zone", + "obj": "LineZone.in_count_per_class", + "line": 185, + "column": 4, + "endLine": 185, + "endColumn": 26, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.line_zone", + "obj": "LineZone.out_count_per_class", + "line": 189, + "column": 4, + "endLine": 189, + "endColumn": 27, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "refactor", + "module": "supervision.detection.line_zone", + "obj": "LineZone._update_class_id_to_name", + "line": 373, + "column": 24, + "endLine": 376, + "endColumn": 13, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "unnecessary-comprehension", + "message": "Unnecessary use of a comprehension, use dict(zip(detections.class_id, class_names)) instead.", + "message-id": "R1721" + }, + { + "type": "convention", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator", + "line": 380, + "column": 0, + "endLine": 380, + "endColumn": 23, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "missing-class-docstring", + "message": "Missing class docstring", + "message-id": "C0115" + }, + { + "type": "refactor", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator.__init__", + "line": 381, + "column": 4, + "endLine": 381, + "endColumn": 16, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (14/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator.__init__", + "line": 381, + "column": 4, + "endLine": 381, + "endColumn": 16, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (14/5)", + "message-id": "R0917" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator.annotate", + "line": 455, + "column": 8, + "endLine": 455, + "endColumn": 16, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'line' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator.annotate", + "line": 461, + "column": 21, + "endLine": 461, + "endColumn": 32, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'LINE_AA' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator.annotate", + "line": 464, + "column": 8, + "endLine": 464, + "endColumn": 18, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'circle' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator.annotate", + "line": 470, + "column": 21, + "endLine": 470, + "endColumn": 32, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'LINE_AA' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator.annotate", + "line": 472, + "column": 8, + "endLine": 472, + "endColumn": 18, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'circle' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator.annotate", + "line": 478, + "column": 21, + "endLine": 478, + "endColumn": 32, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'LINE_AA' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator._calculate_anchor_in_frame", + "line": 534, + "column": 4, + "endLine": 534, + "endColumn": 34, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "too-many-locals", + "message": "Too many local variables (16/15)", + "message-id": "R0914" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator._draw_basic_label", + "line": 619, + "column": 25, + "endLine": 619, + "endColumn": 40, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'getTextSize' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator._draw_basic_label", + "line": 621, + "column": 12, + "endLine": 621, + "endColumn": 36, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'FONT_HERSHEY_SIMPLEX' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator._draw_oriented_label", + "line": 679, + "column": 34, + "endLine": 679, + "endColumn": 49, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'getTextSize' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator._draw_oriented_label", + "line": 681, + "column": 12, + "endLine": 681, + "endColumn": 36, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'FONT_HERSHEY_SIMPLEX' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator._draw_oriented_label", + "line": 694, + "column": 16, + "endLine": 694, + "endColumn": 63, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "too-many-function-args", + "message": "Too many positional arguments for classmethod call", + "message-id": "E1121" + }, + { + "type": "refactor", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator._make_label_image", + "line": 700, + "column": 4, + "endLine": 700, + "endColumn": 25, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (8/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator._make_label_image", + "line": 700, + "column": 4, + "endLine": 700, + "endColumn": 25, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "too-many-locals", + "message": "Too many local variables (18/15)", + "message-id": "R0914" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator._make_label_image", + "line": 727, + "column": 34, + "endLine": 727, + "endColumn": 49, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'getTextSize' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator._make_label_image", + "line": 728, + "column": 18, + "endLine": 728, + "endColumn": 42, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'FONT_HERSHEY_SIMPLEX' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator._make_label_image", + "line": 738, + "column": 36, + "endLine": 744, + "endColumn": 9, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "use-dict-literal", + "message": "Consider using '{\"text\": text, \"text_anchor\": annotation_center, \"text_scale\": text_scale, ... }' instead of a call to 'dict'.", + "message-id": "R1735" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator._make_label_image", + "line": 761, + "column": 25, + "endLine": 761, + "endColumn": 33, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'flip' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator._make_label_image", + "line": 764, + "column": 26, + "endLine": 764, + "endColumn": 49, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'getRotationMatrix2D' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator._make_label_image", + "line": 767, + "column": 21, + "endLine": 767, + "endColumn": 35, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'warpAffine' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator", + "line": 380, + "column": 0, + "endLine": 380, + "endColumn": 23, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "convention", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotatorMulticlass", + "line": 772, + "column": 0, + "endLine": 772, + "endColumn": 33, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "missing-class-docstring", + "message": "Missing class docstring", + "message-id": "C0115" + }, + { + "type": "refactor", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotatorMulticlass.__init__", + "line": 783, + "column": 4, + "endLine": 783, + "endColumn": 16, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (9/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotatorMulticlass.annotate", + "line": 840, + "column": 4, + "endLine": 840, + "endColumn": 16, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "too-many-locals", + "message": "Too many local variables (26/15)", + "message-id": "R0914" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotatorMulticlass.annotate", + "line": 888, + "column": 38, + "endLine": 888, + "endColumn": 53, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'getTextSize' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotatorMulticlass.annotate", + "line": 889, + "column": 22, + "endLine": 889, + "endColumn": 46, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'FONT_HERSHEY_SIMPLEX' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotatorMulticlass.annotate", + "line": 926, + "column": 29, + "endLine": 926, + "endColumn": 44, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'getTextSize' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotatorMulticlass.annotate", + "line": 927, + "column": 22, + "endLine": 927, + "endColumn": 46, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'FONT_HERSHEY_SIMPLEX' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotatorMulticlass.annotate", + "line": 933, + "column": 12, + "endLine": 933, + "endColumn": 23, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'putText' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotatorMulticlass.annotate", + "line": 937, + "column": 25, + "endLine": 937, + "endColumn": 49, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'FONT_HERSHEY_SIMPLEX' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotatorMulticlass.annotate", + "line": 941, + "column": 25, + "endLine": 941, + "endColumn": 36, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'LINE_AA' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotatorMulticlass", + "line": 772, + "column": 0, + "endLine": 772, + "endColumn": 33, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "convention", + "module": "supervision.detection.vlm", + "obj": "", + "line": 437, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "line-too-long", + "message": "Line too long (172/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.vlm", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.detection.vlm", + "obj": "LMM.list", + "line": 50, + "column": 4, + "endLine": 50, + "endColumn": 12, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.vlm", + "obj": "LMM.from_value", + "line": 54, + "column": 4, + "endLine": 54, + "endColumn": 18, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "warning", + "module": "supervision.detection.vlm", + "obj": "LMM.from_value", + "line": 66, + "column": 16, + "endLine": 66, + "endColumn": 88, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "raise-missing-from", + "message": "Consider explicitly re-raising using 'except ValueError as exc' and 'raise ValueError(f'Invalid value: {value}. Must be one of {cls.list()}') from exc'", + "message-id": "W0707" + }, + { + "type": "convention", + "module": "supervision.detection.vlm", + "obj": "VLM.list", + "line": 97, + "column": 4, + "endLine": 97, + "endColumn": 12, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.vlm", + "obj": "VLM.from_value", + "line": 101, + "column": 4, + "endLine": 101, + "endColumn": 18, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "warning", + "module": "supervision.detection.vlm", + "obj": "VLM.from_value", + "line": 109, + "column": 16, + "endLine": 109, + "endColumn": 88, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "raise-missing-from", + "message": "Consider explicitly re-raising using 'except ValueError as exc' and 'raise ValueError(f'Invalid value: {value}. Must be one of {cls.list()}') from exc'", + "message-id": "W0707" + }, + { + "type": "warning", + "module": "supervision.detection.vlm", + "obj": "_validate_vlm_parameters", + "line": 184, + "column": 12, + "endLine": 186, + "endColumn": 13, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "raise-missing-from", + "message": "Consider explicitly re-raising using 'except ValueError as exc' and 'raise ValueError(f'Invalid vlm value: {vlm}. Must be one of {[e.value for e in VLM]}') from exc'", + "message-id": "W0707" + }, + { + "type": "convention", + "module": "supervision.detection.vlm", + "obj": "validate_vlm_parameters", + "line": 211, + "column": 0, + "endLine": 211, + "endColumn": 27, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "warning", + "module": "supervision.detection.vlm", + "obj": "recover_truncated_qwen_2_5_vl_response", + "line": 301, + "column": 11, + "endLine": 301, + "endColumn": 20, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "broad-exception-caught", + "message": "Catching too general exception Exception", + "message-id": "W0718" + }, + { + "type": "refactor", + "module": "supervision.detection.vlm", + "obj": "from_qwen_2_5_vl", + "line": 305, + "column": 0, + "endLine": 305, + "endColumn": 20, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "too-many-locals", + "message": "Too many local variables (20/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.detection.vlm", + "obj": "from_deepseek_vl_2", + "line": 424, + "column": 0, + "endLine": 424, + "endColumn": 22, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "too-many-locals", + "message": "Too many local variables (23/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.detection.vlm", + "obj": "from_florence_2", + "line": 495, + "column": 0, + "endLine": 495, + "endColumn": 19, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "too-many-locals", + "message": "Too many local variables (18/15)", + "message-id": "R0914" + }, + { + "type": "error", + "module": "supervision.detection.vlm", + "obj": "from_florence_2", + "line": 539, + "column": 19, + "endLine": 539, + "endColumn": 45, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "too-many-function-args", + "message": "Too many positional arguments for method call", + "message-id": "E1121" + }, + { + "type": "refactor", + "module": "supervision.detection.vlm", + "obj": "from_florence_2", + "line": 495, + "column": 0, + "endLine": 495, + "endColumn": 19, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "too-many-return-statements", + "message": "Too many return statements (7/6)", + "message-id": "R0911" + }, + { + "type": "convention", + "module": "supervision.detection.vlm", + "obj": "_extract_json_from_backticks", + "line": 596, + "column": 21, + "endLine": 596, + "endColumn": 40, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "use-maxsplit-arg", + "message": "Use result.split('```', maxsplit=1)[0] instead", + "message-id": "C0207" + }, + { + "type": "error", + "module": "supervision.detection.vlm", + "obj": "_parse_gemini_2_5_item", + "line": 636, + "column": 20, + "endLine": 640, + "endColumn": 5, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "redundant-keyword-arg", + "message": "Argument 'resolution_wh' passed by position and keyword in classmethod call", + "message-id": "E1124" + }, + { + "type": "warning", + "module": "supervision.detection.vlm", + "obj": "_decode_mask_for_item", + "line": 744, + "column": 11, + "endLine": 744, + "endColumn": 20, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "broad-exception-caught", + "message": "Catching too general exception Exception", + "message-id": "W0718" + }, + { + "type": "error", + "module": "supervision.detection.vlm", + "obj": "from_google_gemini_2_0", + "line": 823, + "column": 11, + "endLine": 827, + "endColumn": 5, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "redundant-keyword-arg", + "message": "Argument 'resolution_wh' passed by position and keyword in classmethod call", + "message-id": "E1124" + }, + { + "type": "refactor", + "module": "supervision.detection.vlm", + "obj": "from_google_gemini_2_5", + "line": 840, + "column": 0, + "endLine": 840, + "endColumn": 26, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "too-many-locals", + "message": "Too many local variables (17/15)", + "message-id": "R0914" + }, + { + "type": "error", + "module": "supervision.detection.vlm", + "obj": "from_moondream", + "line": 982, + "column": 8, + "endLine": 985, + "endColumn": 9, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "redundant-keyword-arg", + "message": "Argument 'resolution_wh' passed by position and keyword in classmethod call", + "message-id": "E1124" + }, + { + "type": "convention", + "module": "supervision.detection.tools.csv_sink", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\tools\\csv_sink.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.detection.tools.csv_sink", + "obj": "WriterProtocol", + "line": 27, + "column": 0, + "endLine": 27, + "endColumn": 20, + "path": "src\\supervision\\detection\\tools\\csv_sink.py", + "symbol": "missing-class-docstring", + "message": "Missing class docstring", + "message-id": "C0115" + }, + { + "type": "convention", + "module": "supervision.detection.tools.csv_sink", + "obj": "WriterProtocol.writerow", + "line": 28, + "column": 4, + "endLine": 28, + "endColumn": 16, + "path": "src\\supervision\\detection\\tools\\csv_sink.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.csv_sink", + "obj": "WriterProtocol", + "line": 27, + "column": 0, + "endLine": 27, + "endColumn": 20, + "path": "src\\supervision\\detection\\tools\\csv_sink.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "warning", + "module": "supervision.detection.tools.csv_sink", + "obj": "CSVSink.open", + "line": 108, + "column": 20, + "endLine": 108, + "endColumn": 57, + "path": "src\\supervision\\detection\\tools\\csv_sink.py", + "symbol": "unspecified-encoding", + "message": "Using open without explicitly specifying an encoding", + "message-id": "W1514" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.csv_sink", + "obj": "CSVSink.open", + "line": 108, + "column": 20, + "endLine": 108, + "endColumn": 57, + "path": "src\\supervision\\detection\\tools\\csv_sink.py", + "symbol": "consider-using-with", + "message": "Consider using 'with' for resource-allocating operations", + "message-id": "R1732" + }, + { + "type": "warning", + "module": "supervision.detection.tools.csv_sink", + "obj": "CSVSink.append", + "line": 211, + "column": 12, + "endLine": 213, + "endColumn": 13, + "path": "src\\supervision\\detection\\tools\\csv_sink.py", + "symbol": "broad-exception-raised", + "message": "Raising too general exception: Exception", + "message-id": "W0719" + }, + { + "type": "convention", + "module": "supervision.detection.tools.csv_sink", + "obj": "CSVSink.parse_field_names", + "line": 234, + "column": 4, + "endLine": 234, + "endColumn": 25, + "path": "src\\supervision\\detection\\tools\\csv_sink.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.tools.inference_slicer", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\tools\\inference_slicer.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.inference_slicer", + "obj": "_InferenceSlicerConfig", + "line": 25, + "column": 0, + "endLine": 25, + "endColumn": 28, + "path": "src\\supervision\\detection\\tools\\inference_slicer.py", + "symbol": "too-many-instance-attributes", + "message": "Too many instance attributes (8/7)", + "message-id": "R0902" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.inference_slicer", + "obj": "InferenceSlicer.__init__", + "line": 166, + "column": 4, + "endLine": 166, + "endColumn": 16, + "path": "src\\supervision\\detection\\tools\\inference_slicer.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (8/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.inference_slicer", + "obj": "InferenceSlicer.__init__", + "line": 166, + "column": 4, + "endLine": 166, + "endColumn": 16, + "path": "src\\supervision\\detection\\tools\\inference_slicer.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (8/5)", + "message-id": "R0917" + }, + { + "type": "convention", + "module": "supervision.detection.tools.inference_slicer", + "obj": "InferenceSlicer.callback", + "line": 201, + "column": 4, + "endLine": 201, + "endColumn": 16, + "path": "src\\supervision\\detection\\tools\\inference_slicer.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.tools.inference_slicer", + "obj": "InferenceSlicer.slice_wh", + "line": 209, + "column": 4, + "endLine": 209, + "endColumn": 16, + "path": "src\\supervision\\detection\\tools\\inference_slicer.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.tools.inference_slicer", + "obj": "InferenceSlicer.overlap_wh", + "line": 218, + "column": 4, + "endLine": 218, + "endColumn": 18, + "path": "src\\supervision\\detection\\tools\\inference_slicer.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.tools.inference_slicer", + "obj": "InferenceSlicer.iou_threshold", + "line": 227, + "column": 4, + "endLine": 227, + "endColumn": 21, + "path": "src\\supervision\\detection\\tools\\inference_slicer.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.tools.inference_slicer", + "obj": "InferenceSlicer.overlap_metric", + "line": 235, + "column": 4, + "endLine": 235, + "endColumn": 22, + "path": "src\\supervision\\detection\\tools\\inference_slicer.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.tools.inference_slicer", + "obj": "InferenceSlicer.overlap_filter", + "line": 243, + "column": 4, + "endLine": 243, + "endColumn": 22, + "path": "src\\supervision\\detection\\tools\\inference_slicer.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.tools.inference_slicer", + "obj": "InferenceSlicer.thread_workers", + "line": 251, + "column": 4, + "endLine": 251, + "endColumn": 22, + "path": "src\\supervision\\detection\\tools\\inference_slicer.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.tools.inference_slicer", + "obj": "InferenceSlicer.compact_masks", + "line": 264, + "column": 4, + "endLine": 264, + "endColumn": 21, + "path": "src\\supervision\\detection\\tools\\inference_slicer.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "error", + "module": "supervision.detection.tools.inference_slicer", + "obj": "InferenceSlicer._warn_obb_sequential_fallback", + "line": 409, + "column": 13, + "endLine": 409, + "endColumn": 42, + "path": "src\\supervision\\detection\\tools\\inference_slicer.py", + "symbol": "no-member", + "message": "Instance of 'InferenceSlicer' has no '_obb_thread_workers_lock' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.tools.inference_slicer", + "obj": "InferenceSlicer._warn_obb_sequential_fallback", + "line": 410, + "column": 15, + "endLine": 410, + "endColumn": 46, + "path": "src\\supervision\\detection\\tools\\inference_slicer.py", + "symbol": "no-member", + "message": "Instance of 'InferenceSlicer' has no '_obb_thread_workers_warned' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.tools.inference_slicer", + "obj": "InferenceSlicer._warn_obb_sequential_fallback", + "line": 413, + "column": 12, + "endLine": 413, + "endColumn": 43, + "path": "src\\supervision\\detection\\tools\\inference_slicer.py", + "symbol": "assigning-non-slot", + "message": "Assigning to attribute '_obb_thread_workers_warned' not defined in class slots", + "message-id": "E0237" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.inference_slicer", + "obj": "InferenceSlicer._run_callback", + "line": 443, + "column": 4, + "endLine": 443, + "endColumn": 21, + "path": "src\\supervision\\detection\\tools\\inference_slicer.py", + "symbol": "too-many-locals", + "message": "Too many local variables (16/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.inference_slicer", + "obj": "InferenceSlicer._generate_offset", + "line": 557, + "column": 4, + "endLine": 557, + "endColumn": 24, + "path": "src\\supervision\\detection\\tools\\inference_slicer.py", + "symbol": "too-many-locals", + "message": "Too many local variables (19/15)", + "message-id": "R0914" + }, + { + "type": "convention", + "module": "supervision.detection.tools.json_sink", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\tools\\json_sink.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "warning", + "module": "supervision.detection.tools.json_sink", + "obj": "JSONSink.open", + "line": 82, + "column": 20, + "endLine": 82, + "endColumn": 45, + "path": "src\\supervision\\detection\\tools\\json_sink.py", + "symbol": "unspecified-encoding", + "message": "Using open without explicitly specifying an encoding", + "message-id": "W1514" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.json_sink", + "obj": "JSONSink.open", + "line": 82, + "column": 20, + "endLine": 82, + "endColumn": 45, + "path": "src\\supervision\\detection\\tools\\json_sink.py", + "symbol": "consider-using-with", + "message": "Consider using 'with' for resource-allocating operations", + "message-id": "R1732" + }, + { + "type": "convention", + "module": "supervision.detection.tools.polygon_zone", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\tools\\polygon_zone.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "error", + "module": "supervision.detection.tools.polygon_zone", + "obj": "", + "line": 18, + "column": 11, + "endLine": 18, + "endColumn": 35, + "path": "src\\supervision\\detection\\tools\\polygon_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'FONT_HERSHEY_SIMPLEX' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.polygon_zone", + "obj": "_PolygonZoneAnnotatorConfig", + "line": 22, + "column": 0, + "endLine": 22, + "endColumn": 33, + "path": "src\\supervision\\detection\\tools\\polygon_zone.py", + "symbol": "too-many-instance-attributes", + "message": "Too many instance attributes (8/7)", + "message-id": "R0902" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.polygon_zone", + "obj": "PolygonZone", + "line": 33, + "column": 0, + "endLine": 33, + "endColumn": 17, + "path": "src\\supervision\\detection\\tools\\polygon_zone.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.polygon_zone", + "obj": "PolygonZoneAnnotator.__init__", + "line": 146, + "column": 4, + "endLine": 146, + "endColumn": 16, + "path": "src\\supervision\\detection\\tools\\polygon_zone.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (9/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.polygon_zone", + "obj": "PolygonZoneAnnotator.__init__", + "line": 146, + "column": 4, + "endLine": 146, + "endColumn": 16, + "path": "src\\supervision\\detection\\tools\\polygon_zone.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (9/5)", + "message-id": "R0917" + }, + { + "type": "convention", + "module": "supervision.detection.tools.polygon_zone", + "obj": "PolygonZoneAnnotator.color", + "line": 171, + "column": 4, + "endLine": 171, + "endColumn": 13, + "path": "src\\supervision\\detection\\tools\\polygon_zone.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.tools.polygon_zone", + "obj": "PolygonZoneAnnotator.thickness", + "line": 179, + "column": 4, + "endLine": 179, + "endColumn": 17, + "path": "src\\supervision\\detection\\tools\\polygon_zone.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.tools.polygon_zone", + "obj": "PolygonZoneAnnotator.text_color", + "line": 187, + "column": 4, + "endLine": 187, + "endColumn": 18, + "path": "src\\supervision\\detection\\tools\\polygon_zone.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.tools.polygon_zone", + "obj": "PolygonZoneAnnotator.text_scale", + "line": 195, + "column": 4, + "endLine": 195, + "endColumn": 18, + "path": "src\\supervision\\detection\\tools\\polygon_zone.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.tools.polygon_zone", + "obj": "PolygonZoneAnnotator.text_thickness", + "line": 203, + "column": 4, + "endLine": 203, + "endColumn": 22, + "path": "src\\supervision\\detection\\tools\\polygon_zone.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.tools.polygon_zone", + "obj": "PolygonZoneAnnotator.text_padding", + "line": 211, + "column": 4, + "endLine": 211, + "endColumn": 20, + "path": "src\\supervision\\detection\\tools\\polygon_zone.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.tools.polygon_zone", + "obj": "PolygonZoneAnnotator.display_in_zone_count", + "line": 219, + "column": 4, + "endLine": 219, + "endColumn": 29, + "path": "src\\supervision\\detection\\tools\\polygon_zone.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.tools.polygon_zone", + "obj": "PolygonZoneAnnotator.opacity", + "line": 227, + "column": 4, + "endLine": 227, + "endColumn": 15, + "path": "src\\supervision\\detection\\tools\\polygon_zone.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.tools.polygon_zone", + "obj": "PolygonZoneAnnotator.font", + "line": 235, + "column": 4, + "endLine": 235, + "endColumn": 12, + "path": "src\\supervision\\detection\\tools\\polygon_zone.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.tools.polygon_zone", + "obj": "PolygonZoneAnnotator.center", + "line": 239, + "column": 4, + "endLine": 239, + "endColumn": 14, + "path": "src\\supervision\\detection\\tools\\polygon_zone.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.tools.smoother", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\tools\\smoother.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.detection.tools.smoother", + "obj": "DetectionsSmoother.update_with_detections", + "line": 117, + "column": 8, + "endLine": 121, + "endColumn": 87, + "path": "src\\supervision\\detection\\tools\\smoother.py", + "symbol": "consider-using-enumerate", + "message": "Consider using enumerate instead of iterating with range and len", + "message-id": "C0200" + }, + { + "type": "convention", + "module": "supervision.detection.tools.smoother", + "obj": "DetectionsSmoother.update_with_detections", + "line": 123, + "column": 8, + "endLine": 125, + "endColumn": 50, + "path": "src\\supervision\\detection\\tools\\smoother.py", + "symbol": "consider-using-dict-items", + "message": "Consider iterating with .items()", + "message-id": "C0206" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.smoother", + "obj": "DetectionsSmoother.update_with_detections", + "line": 128, + "column": 15, + "endLine": 128, + "endColumn": 62, + "path": "src\\supervision\\detection\\tools\\smoother.py", + "symbol": "use-a-generator", + "message": "Use a generator instead 'all(d is None for d in self.tracks[track_id])'", + "message-id": "R1729" + }, + { + "type": "convention", + "module": "supervision.detection.tools.smoother", + "obj": "DetectionsSmoother.get_smoothed_detections", + "line": 166, + "column": 4, + "endLine": 166, + "endColumn": 31, + "path": "src\\supervision\\detection\\tools\\smoother.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.tools.transformers", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\tools\\transformers.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.transformers", + "obj": "process_transformers_detection_result", + "line": 35, + "column": 11, + "endLine": 40, + "endColumn": 5, + "path": "src\\supervision\\detection\\tools\\transformers.py", + "symbol": "use-dict-literal", + "message": "Consider using '{\"xyxy\": detection_result['boxes'].cpu().detach().numpy(), \"confidence\": detection_result['scores'].cpu().detach().numpy(), ... }' instead of a call to 'dict'.", + "message-id": "R1735" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.transformers", + "obj": "process_transformers_v4_segmentation_result", + "line": 62, + "column": 4, + "endLine": 79, + "endColumn": 9, + "path": "src\\supervision\\detection\\tools\\transformers.py", + "symbol": "no-else-return", + "message": "Unnecessary \"else\" after \"return\", remove the \"else\" and de-indent the code inside it", + "message-id": "R1705" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.transformers", + "obj": "process_transformers_v4_segmentation_result", + "line": 73, + "column": 15, + "endLine": 79, + "endColumn": 9, + "path": "src\\supervision\\detection\\tools\\transformers.py", + "symbol": "use-dict-literal", + "message": "Consider using '{\"xyxy\": boxes if boxes is not None else mask_to_xyxy(masks), \"mask\": np.squeeze(masks, axis=1) if boxes is not None else masks, ... }' instead of a call to 'dict'.", + "message-id": "R1735" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.transformers", + "obj": "process_transformers_v5_semantic_or_instance_segmentation_result", + "line": 139, + "column": 11, + "endLine": 145, + "endColumn": 5, + "path": "src\\supervision\\detection\\tools\\transformers.py", + "symbol": "use-dict-literal", + "message": "Consider using '{\"xyxy\": mask_to_xyxy(masks), \"mask\": masks, \"confidence\": scores}' instead of a call to 'dict'.", + "message-id": "R1735" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.transformers", + "obj": "process_transformers_v4_panoptic_segmentation_result", + "line": 174, + "column": 11, + "endLine": 179, + "endColumn": 5, + "path": "src\\supervision\\detection\\tools\\transformers.py", + "symbol": "use-dict-literal", + "message": "Consider using '{\"xyxy\": mask_to_xyxy(masks), \"mask\": masks, \"class_id\": class_ids, ... }' instead of a call to 'dict'.", + "message-id": "R1735" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.transformers", + "obj": "process_transformers_v5_panoptic_segmentation_result", + "line": 204, + "column": 11, + "endLine": 204, + "endColumn": 84, + "path": "src\\supervision\\detection\\tools\\transformers.py", + "symbol": "use-dict-literal", + "message": "Consider using '{\"xyxy\": mask_to_xyxy(masks), \"mask\": masks, \"class_id\": class_ids, ... }' instead of a call to 'dict'.", + "message-id": "R1735" + }, + { + "type": "convention", + "module": "supervision.detection.utils.boxes", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\utils\\boxes.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "error", + "module": "supervision.detection.utils.boxes", + "obj": "denormalize_boxes", + "line": 156, + "column": 13, + "endLine": 156, + "endColumn": 22, + "path": "src\\supervision\\detection\\utils\\boxes.py", + "symbol": "no-member", + "message": "Module 'supervision.detection.utils.boxes' has no 'copy' member", + "message-id": "E1101" + }, + { + "type": "warning", + "module": "supervision.detection.utils.boxes", + "obj": "denormalize_boxes", + "line": 109, + "column": 4, + "endLine": 109, + "endColumn": 50, + "path": "src\\supervision\\detection\\utils\\boxes.py", + "symbol": "unused-argument", + "message": "Unused argument 'normalized_xyxy'", + "message-id": "W0613" + }, + { + "type": "convention", + "module": "supervision.detection.utils.converters", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\utils\\converters.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "error", + "module": "supervision.detection.utils.converters", + "obj": "polygon_to_mask", + "line": 48, + "column": 4, + "endLine": 48, + "endColumn": 16, + "path": "src\\supervision\\detection\\utils\\converters.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'fillPoly' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.utils.converters", + "obj": "mask_to_polygons", + "line": 322, + "column": 18, + "endLine": 322, + "endColumn": 34, + "path": "src\\supervision\\detection\\utils\\converters.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'findContours' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.utils.converters", + "obj": "mask_to_polygons", + "line": 323, + "column": 31, + "endLine": 323, + "endColumn": 44, + "path": "src\\supervision\\detection\\utils\\converters.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'RETR_TREE' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.utils.converters", + "obj": "mask_to_polygons", + "line": 323, + "column": 46, + "endLine": 323, + "endColumn": 69, + "path": "src\\supervision\\detection\\utils\\converters.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'CHAIN_APPROX_SIMPLE' member", + "message-id": "E1101" + }, + { + "type": "convention", + "module": "supervision.detection.utils.internal", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\utils\\internal.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.detection.utils.internal", + "obj": "extract_ultralytics_masks", + "line": 18, + "column": 0, + "endLine": 18, + "endColumn": 29, + "path": "src\\supervision\\detection\\utils\\internal.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "error", + "module": "supervision.detection.utils.internal", + "obj": "extract_ultralytics_masks", + "line": 47, + "column": 19, + "endLine": 47, + "endColumn": 29, + "path": "src\\supervision\\detection\\utils\\internal.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'resize' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.utils.internal", + "obj": "_decode_rle_mask", + "line": 66, + "column": 19, + "endLine": 66, + "endColumn": 29, + "path": "src\\supervision\\detection\\utils\\internal.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'resize' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.utils.internal", + "obj": "_decode_rle_mask", + "line": 69, + "column": 30, + "endLine": 69, + "endColumn": 47, + "path": "src\\supervision\\detection\\utils\\internal.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'INTER_NEAREST' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.detection.utils.internal", + "obj": "process_roboflow_result", + "line": 81, + "column": 0, + "endLine": 81, + "endColumn": 27, + "path": "src\\supervision\\detection\\utils\\internal.py", + "symbol": "too-many-locals", + "message": "Too many local variables (27/15)", + "message-id": "R0914" + }, + { + "type": "convention", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "too-many-lines", + "message": "Too many lines in module (1461/1000)", + "message-id": "C0302" + }, + { + "type": "convention", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "OverlapFilter.list", + "line": 35, + "column": 4, + "endLine": 35, + "endColumn": 12, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "OverlapFilter.from_value", + "line": 39, + "column": 4, + "endLine": 39, + "endColumn": 18, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "warning", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "OverlapFilter.from_value", + "line": 47, + "column": 16, + "endLine": 47, + "endColumn": 88, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "raise-missing-from", + "message": "Consider explicitly re-raising using 'except ValueError as exc' and 'raise ValueError(f'Invalid value: {value}. Must be one of {cls.list()}') from exc'", + "message-id": "W0707" + }, + { + "type": "convention", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "OverlapMetric.list", + "line": 71, + "column": 4, + "endLine": 71, + "endColumn": 12, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "OverlapMetric.from_value", + "line": 75, + "column": 4, + "endLine": 75, + "endColumn": 18, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "warning", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "OverlapMetric.from_value", + "line": 83, + "column": 16, + "endLine": 83, + "endColumn": 88, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "raise-missing-from", + "message": "Consider explicitly re-raising using 'except ValueError as exc' and 'raise ValueError(f'Invalid value: {value}. Must be one of {cls.list()}') from exc'", + "message-id": "W0707" + }, + { + "type": "refactor", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "box_iou", + "line": 90, + "column": 0, + "endLine": 90, + "endColumn": 11, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "too-many-locals", + "message": "Too many local variables (21/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "box_iou_batch", + "line": 162, + "column": 0, + "endLine": 162, + "endColumn": 17, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "too-many-locals", + "message": "Too many local variables (22/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "_jaccard", + "line": 264, + "column": 0, + "endLine": 264, + "endColumn": 12, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "too-many-locals", + "message": "Too many local variables (19/15)", + "message-id": "R0914" + }, + { + "type": "convention", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "_jaccard", + "line": 280, + "column": 4, + "endLine": 280, + "endColumn": 7, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "invalid-name", + "message": "Variable name \"EPS\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "_jaccard", + "line": 294, + "column": 4, + "endLine": 294, + "endColumn": 6, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "invalid-name", + "message": "Variable name \"Aa\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "_jaccard", + "line": 295, + "column": 4, + "endLine": 295, + "endColumn": 6, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "invalid-name", + "message": "Variable name \"Ab\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "_jaccard", + "line": 296, + "column": 4, + "endLine": 296, + "endColumn": 6, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "invalid-name", + "message": "Variable name \"Ai\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "refactor", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "oriented_box_iou_batch", + "line": 456, + "column": 0, + "endLine": 456, + "endColumn": 26, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "too-many-locals", + "message": "Too many local variables (22/15)", + "message-id": "R0914" + }, + { + "type": "error", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "oriented_box_iou_batch", + "line": 553, + "column": 26, + "endLine": 553, + "endColumn": 51, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'intersectConvexConvex' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "compact_mask_iou_batch", + "line": 577, + "column": 0, + "endLine": 577, + "endColumn": 26, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "too-many-locals", + "message": "Too many local variables (43/15)", + "message-id": "R0914" + }, + { + "type": "warning", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "mask_non_max_suppression", + "line": 845, + "column": 4, + "endLine": 845, + "endColumn": 23, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "unused-argument", + "message": "Unused argument 'mask_dimension'", + "message-id": "W0613" + }, + { + "type": "refactor", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "oriented_box_non_max_suppression", + "line": 1314, + "column": 8, + "endLine": 1327, + "endColumn": 13, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "no-else-raise", + "message": "Unnecessary \"elif\" after \"raise\", remove the leading \"el\" from \"elif\"", + "message-id": "R1720" + }, + { + "type": "refactor", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "oriented_box_non_max_merge", + "line": 1429, + "column": 8, + "endLine": 1442, + "endColumn": 13, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "no-else-raise", + "message": "Unnecessary \"elif\" after \"raise\", remove the leading \"el\" from \"elif\"", + "message-id": "R1720" + }, + { + "type": "convention", + "module": "supervision.detection.utils.masks", + "obj": "", + "line": 188, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\utils\\masks.py", + "symbol": "line-too-long", + "message": "Line too long (113/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.utils.masks", + "obj": "", + "line": 249, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\utils\\masks.py", + "symbol": "line-too-long", + "message": "Line too long (137/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.utils.masks", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\utils\\masks.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "refactor", + "module": "supervision.detection.utils.masks", + "obj": "calculate_masks_centroids", + "line": 90, + "column": 0, + "endLine": 90, + "endColumn": 29, + "path": "src\\supervision\\detection\\utils\\masks.py", + "symbol": "too-many-locals", + "message": "Too many local variables (24/15)", + "message-id": "R0914" + }, + { + "type": "error", + "module": "supervision.detection.utils.masks", + "obj": "contains_holes", + "line": 191, + "column": 19, + "endLine": 191, + "endColumn": 35, + "path": "src\\supervision\\detection\\utils\\masks.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'findContours' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.utils.masks", + "obj": "contains_holes", + "line": 191, + "column": 48, + "endLine": 191, + "endColumn": 62, + "path": "src\\supervision\\detection\\utils\\masks.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'RETR_CCOMP' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.utils.masks", + "obj": "contains_holes", + "line": 191, + "column": 64, + "endLine": 191, + "endColumn": 87, + "path": "src\\supervision\\detection\\utils\\masks.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'CHAIN_APPROX_SIMPLE' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.detection.utils.masks", + "obj": "contains_multiple_segments", + "line": 251, + "column": 7, + "endLine": 251, + "endColumn": 46, + "path": "src\\supervision\\detection\\utils\\masks.py", + "symbol": "consider-using-in", + "message": "Consider merging these comparisons with 'in' by using 'connectivity not in (4, 8)'. Use a set instead if elements are hashable.", + "message-id": "R1714" + }, + { + "type": "error", + "module": "supervision.detection.utils.masks", + "obj": "contains_multiple_segments", + "line": 257, + "column": 26, + "endLine": 257, + "endColumn": 49, + "path": "src\\supervision\\detection\\utils\\masks.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'connectedComponents' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.utils.masks", + "obj": "_filter_labels_by_edge_distance", + "line": 329, + "column": 25, + "endLine": 329, + "endColumn": 46, + "path": "src\\supervision\\detection\\utils\\masks.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'distanceTransform' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.utils.masks", + "obj": "_filter_labels_by_edge_distance", + "line": 329, + "column": 56, + "endLine": 329, + "endColumn": 67, + "path": "src\\supervision\\detection\\utils\\masks.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'DIST_L2' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.detection.utils.masks", + "obj": "filter_segments_by_distance", + "line": 344, + "column": 0, + "endLine": 344, + "endColumn": 31, + "path": "src\\supervision\\detection\\utils\\masks.py", + "symbol": "too-many-locals", + "message": "Too many local variables (16/15)", + "message-id": "R0914" + }, + { + "type": "error", + "module": "supervision.detection.utils.masks", + "obj": "filter_segments_by_distance", + "line": 437, + "column": 43, + "endLine": 437, + "endColumn": 75, + "path": "src\\supervision\\detection\\utils\\masks.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'connectedComponentsWithStats' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.utils.masks", + "obj": "filter_segments_by_distance", + "line": 444, + "column": 22, + "endLine": 444, + "endColumn": 38, + "path": "src\\supervision\\detection\\utils\\masks.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'CC_STAT_AREA' member", + "message-id": "E1101" + }, + { + "type": "convention", + "module": "supervision.detection.utils.polygons", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\utils\\polygons.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "error", + "module": "supervision.detection.utils.polygons", + "obj": "filter_polygons_by_area", + "line": 35, + "column": 12, + "endLine": 35, + "endColumn": 27, + "path": "src\\supervision\\detection\\utils\\polygons.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'contourArea' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.utils.polygons", + "obj": "approximate_polygon", + "line": 109, + "column": 31, + "endLine": 109, + "endColumn": 47, + "path": "src\\supervision\\detection\\utils\\polygons.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'approxPolyDP' member", + "message-id": "E1101" + }, + { + "type": "convention", + "module": "supervision.detection.utils.vlms", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\utils\\vlms.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.draw.base", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\draw\\base.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.draw.base", + "obj": "", + "line": 7, + "column": 0, + "endLine": 7, + "endColumn": 9, + "path": "src\\supervision\\draw\\base.py", + "symbol": "invalid-name", + "message": "Type variable name \"ImageType\" doesn't conform to predefined naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\draw\\color.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "refactor", + "module": "supervision.draw.color", + "obj": "Color.from_hex", + "line": 141, + "column": 8, + "endLine": 146, + "endColumn": 34, + "path": "src\\supervision\\draw\\color.py", + "symbol": "no-else-return", + "message": "Unnecessary \"else\" after \"return\", remove the \"else\" and de-indent the code inside it", + "message-id": "R1705" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "Color.WHITE", + "line": 356, + "column": 4, + "endLine": 356, + "endColumn": 13, + "path": "src\\supervision\\draw\\color.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "Color.WHITE", + "line": 356, + "column": 4, + "endLine": 356, + "endColumn": 13, + "path": "src\\supervision\\draw\\color.py", + "symbol": "invalid-name", + "message": "Method name \"WHITE\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "error", + "module": "supervision.draw.color", + "obj": "Color.WHITE", + "line": 356, + "column": 4, + "endLine": 356, + "endColumn": 13, + "path": "src\\supervision\\draw\\color.py", + "symbol": "no-self-argument", + "message": "Method 'WHITE' should have \"self\" as first argument", + "message-id": "E0213" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "Color.BLACK", + "line": 360, + "column": 4, + "endLine": 360, + "endColumn": 13, + "path": "src\\supervision\\draw\\color.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "Color.BLACK", + "line": 360, + "column": 4, + "endLine": 360, + "endColumn": 13, + "path": "src\\supervision\\draw\\color.py", + "symbol": "invalid-name", + "message": "Method name \"BLACK\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "error", + "module": "supervision.draw.color", + "obj": "Color.BLACK", + "line": 360, + "column": 4, + "endLine": 360, + "endColumn": 13, + "path": "src\\supervision\\draw\\color.py", + "symbol": "no-self-argument", + "message": "Method 'BLACK' should have \"self\" as first argument", + "message-id": "E0213" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "Color.GREY", + "line": 364, + "column": 4, + "endLine": 364, + "endColumn": 12, + "path": "src\\supervision\\draw\\color.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "Color.GREY", + "line": 364, + "column": 4, + "endLine": 364, + "endColumn": 12, + "path": "src\\supervision\\draw\\color.py", + "symbol": "invalid-name", + "message": "Method name \"GREY\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "error", + "module": "supervision.draw.color", + "obj": "Color.GREY", + "line": 364, + "column": 4, + "endLine": 364, + "endColumn": 12, + "path": "src\\supervision\\draw\\color.py", + "symbol": "no-self-argument", + "message": "Method 'GREY' should have \"self\" as first argument", + "message-id": "E0213" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "Color.RED", + "line": 368, + "column": 4, + "endLine": 368, + "endColumn": 11, + "path": "src\\supervision\\draw\\color.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "Color.RED", + "line": 368, + "column": 4, + "endLine": 368, + "endColumn": 11, + "path": "src\\supervision\\draw\\color.py", + "symbol": "invalid-name", + "message": "Method name \"RED\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "error", + "module": "supervision.draw.color", + "obj": "Color.RED", + "line": 368, + "column": 4, + "endLine": 368, + "endColumn": 11, + "path": "src\\supervision\\draw\\color.py", + "symbol": "no-self-argument", + "message": "Method 'RED' should have \"self\" as first argument", + "message-id": "E0213" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "Color.GREEN", + "line": 372, + "column": 4, + "endLine": 372, + "endColumn": 13, + "path": "src\\supervision\\draw\\color.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "Color.GREEN", + "line": 372, + "column": 4, + "endLine": 372, + "endColumn": 13, + "path": "src\\supervision\\draw\\color.py", + "symbol": "invalid-name", + "message": "Method name \"GREEN\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "error", + "module": "supervision.draw.color", + "obj": "Color.GREEN", + "line": 372, + "column": 4, + "endLine": 372, + "endColumn": 13, + "path": "src\\supervision\\draw\\color.py", + "symbol": "no-self-argument", + "message": "Method 'GREEN' should have \"self\" as first argument", + "message-id": "E0213" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "Color.BLUE", + "line": 376, + "column": 4, + "endLine": 376, + "endColumn": 12, + "path": "src\\supervision\\draw\\color.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "Color.BLUE", + "line": 376, + "column": 4, + "endLine": 376, + "endColumn": 12, + "path": "src\\supervision\\draw\\color.py", + "symbol": "invalid-name", + "message": "Method name \"BLUE\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "error", + "module": "supervision.draw.color", + "obj": "Color.BLUE", + "line": 376, + "column": 4, + "endLine": 376, + "endColumn": 12, + "path": "src\\supervision\\draw\\color.py", + "symbol": "no-self-argument", + "message": "Method 'BLUE' should have \"self\" as first argument", + "message-id": "E0213" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "Color.YELLOW", + "line": 380, + "column": 4, + "endLine": 380, + "endColumn": 14, + "path": "src\\supervision\\draw\\color.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "Color.YELLOW", + "line": 380, + "column": 4, + "endLine": 380, + "endColumn": 14, + "path": "src\\supervision\\draw\\color.py", + "symbol": "invalid-name", + "message": "Method name \"YELLOW\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "error", + "module": "supervision.draw.color", + "obj": "Color.YELLOW", + "line": 380, + "column": 4, + "endLine": 380, + "endColumn": 14, + "path": "src\\supervision\\draw\\color.py", + "symbol": "no-self-argument", + "message": "Method 'YELLOW' should have \"self\" as first argument", + "message-id": "E0213" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "Color.ROBOFLOW", + "line": 384, + "column": 4, + "endLine": 384, + "endColumn": 16, + "path": "src\\supervision\\draw\\color.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "Color.ROBOFLOW", + "line": 384, + "column": 4, + "endLine": 384, + "endColumn": 16, + "path": "src\\supervision\\draw\\color.py", + "symbol": "invalid-name", + "message": "Method name \"ROBOFLOW\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "error", + "module": "supervision.draw.color", + "obj": "Color.ROBOFLOW", + "line": 384, + "column": 4, + "endLine": 384, + "endColumn": 16, + "path": "src\\supervision\\draw\\color.py", + "symbol": "no-self-argument", + "message": "Method 'ROBOFLOW' should have \"self\" as first argument", + "message-id": "E0213" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "ColorPalette", + "line": 406, + "column": 0, + "endLine": 406, + "endColumn": 18, + "path": "src\\supervision\\draw\\color.py", + "symbol": "missing-class-docstring", + "message": "Missing class docstring", + "message-id": "C0115" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "ColorPalette.DEFAULT", + "line": 410, + "column": 4, + "endLine": 410, + "endColumn": 15, + "path": "src\\supervision\\draw\\color.py", + "symbol": "invalid-name", + "message": "Method name \"DEFAULT\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "error", + "module": "supervision.draw.color", + "obj": "ColorPalette.DEFAULT", + "line": 410, + "column": 4, + "endLine": 410, + "endColumn": 15, + "path": "src\\supervision\\draw\\color.py", + "symbol": "no-self-argument", + "message": "Method 'DEFAULT' should have \"self\" as first argument", + "message-id": "E0213" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "ColorPalette.ROBOFLOW", + "line": 431, + "column": 4, + "endLine": 431, + "endColumn": 16, + "path": "src\\supervision\\draw\\color.py", + "symbol": "invalid-name", + "message": "Method name \"ROBOFLOW\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "error", + "module": "supervision.draw.color", + "obj": "ColorPalette.ROBOFLOW", + "line": 431, + "column": 4, + "endLine": 431, + "endColumn": 16, + "path": "src\\supervision\\draw\\color.py", + "symbol": "no-self-argument", + "message": "Method 'ROBOFLOW' should have \"self\" as first argument", + "message-id": "E0213" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "ColorPalette.LEGACY", + "line": 452, + "column": 4, + "endLine": 452, + "endColumn": 14, + "path": "src\\supervision\\draw\\color.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "ColorPalette.LEGACY", + "line": 452, + "column": 4, + "endLine": 452, + "endColumn": 14, + "path": "src\\supervision\\draw\\color.py", + "symbol": "invalid-name", + "message": "Method name \"LEGACY\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "error", + "module": "supervision.draw.color", + "obj": "ColorPalette.LEGACY", + "line": 452, + "column": 4, + "endLine": 452, + "endColumn": 14, + "path": "src\\supervision\\draw\\color.py", + "symbol": "no-self-argument", + "message": "Method 'LEGACY' should have \"self\" as first argument", + "message-id": "E0213" + }, + { + "type": "convention", + "module": "supervision.draw.utils", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "error", + "module": "supervision.draw.utils", + "obj": "draw_line", + "line": 34, + "column": 4, + "endLine": 34, + "endColumn": 12, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'line' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.draw.utils", + "obj": "draw_rectangle", + "line": 62, + "column": 4, + "endLine": 62, + "endColumn": 17, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'rectangle' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.draw.utils", + "obj": "draw_filled_rectangle", + "line": 91, + "column": 8, + "endLine": 91, + "endColumn": 21, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'rectangle' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.draw.utils", + "obj": "draw_filled_rectangle", + "line": 100, + "column": 8, + "endLine": 100, + "endColumn": 21, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'rectangle' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.draw.utils", + "obj": "draw_filled_rectangle", + "line": 107, + "column": 8, + "endLine": 107, + "endColumn": 23, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'addWeighted' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.draw.utils", + "obj": "draw_rounded_rectangle", + "line": 148, + "column": 8, + "endLine": 148, + "endColumn": 21, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'rectangle' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.draw.utils", + "obj": "draw_rounded_rectangle", + "line": 156, + "column": 8, + "endLine": 156, + "endColumn": 18, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'circle' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.draw.utils", + "obj": "draw_polygon", + "line": 183, + "column": 4, + "endLine": 183, + "endColumn": 17, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'polylines' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.draw.utils", + "obj": "draw_filled_polygon", + "line": 207, + "column": 8, + "endLine": 207, + "endColumn": 20, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'fillPoly' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.draw.utils", + "obj": "draw_filled_polygon", + "line": 210, + "column": 8, + "endLine": 210, + "endColumn": 20, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'fillPoly' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.draw.utils", + "obj": "draw_filled_polygon", + "line": 211, + "column": 8, + "endLine": 211, + "endColumn": 23, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'addWeighted' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.draw.utils", + "obj": "draw_text", + "line": 218, + "column": 0, + "endLine": 218, + "endColumn": 13, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (9/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.draw.utils", + "obj": "draw_text", + "line": 218, + "column": 0, + "endLine": 218, + "endColumn": 13, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (9/5)", + "message-id": "R0917" + }, + { + "type": "error", + "module": "supervision.draw.utils", + "obj": "draw_text", + "line": 226, + "column": 21, + "endLine": 226, + "endColumn": 45, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'FONT_HERSHEY_SIMPLEX' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.draw.utils", + "obj": "draw_text", + "line": 267, + "column": 30, + "endLine": 267, + "endColumn": 45, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'getTextSize' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.draw.utils", + "obj": "draw_text", + "line": 288, + "column": 4, + "endLine": 288, + "endColumn": 15, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'putText' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.draw.utils", + "obj": "draw_text", + "line": 296, + "column": 17, + "endLine": 296, + "endColumn": 28, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'LINE_AA' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.draw.utils", + "obj": "draw_image", + "line": 328, + "column": 16, + "endLine": 328, + "endColumn": 26, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'imread' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.draw.utils", + "obj": "draw_image", + "line": 328, + "column": 34, + "endLine": 328, + "endColumn": 54, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'IMREAD_UNCHANGED' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.draw.utils", + "obj": "draw_image", + "line": 348, + "column": 12, + "endLine": 348, + "endColumn": 22, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'resize' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.draw.utils", + "obj": "draw_image", + "line": 355, + "column": 19, + "endLine": 355, + "endColumn": 38, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'convertScaleAbs' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.draw.utils", + "obj": "draw_image", + "line": 360, + "column": 18, + "endLine": 360, + "endColumn": 37, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'convertScaleAbs' member", + "message-id": "E1101" + }, + { + "type": "convention", + "module": "supervision.geometry.core", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\geometry\\core.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.geometry.core", + "obj": "Position.list", + "line": 25, + "column": 4, + "endLine": 25, + "endColumn": 12, + "path": "src\\supervision\\geometry\\core.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.geometry.core", + "obj": "Rect.from_xyxy", + "line": 176, + "column": 4, + "endLine": 176, + "endColumn": 17, + "path": "src\\supervision\\geometry\\core.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.geometry.core", + "obj": "Rect.top_left", + "line": 181, + "column": 4, + "endLine": 181, + "endColumn": 16, + "path": "src\\supervision\\geometry\\core.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.geometry.core", + "obj": "Rect.bottom_right", + "line": 185, + "column": 4, + "endLine": 185, + "endColumn": 20, + "path": "src\\supervision\\geometry\\core.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.geometry.core", + "obj": "Rect.pad", + "line": 188, + "column": 4, + "endLine": 188, + "endColumn": 11, + "path": "src\\supervision\\geometry\\core.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.geometry.core", + "obj": "Rect.as_xyxy_int_tuple", + "line": 196, + "column": 4, + "endLine": 196, + "endColumn": 25, + "path": "src\\supervision\\geometry\\core.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.geometry.utils", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\geometry\\utils.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.keypoint.annotators", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\keypoint\\annotators.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.keypoint.annotators", + "obj": "", + "line": 8, + "column": 0, + "endLine": 13, + "endColumn": 1, + "path": "src\\supervision\\keypoint\\annotators.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.key_points.annotators import BaseKeyPointAnnotator, EdgeAnnotator, VertexAnnotator, VertexLabelAnnotator\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "warning", + "module": "supervision.keypoint.annotators", + "obj": "", + "line": 8, + "column": 0, + "endLine": 13, + "endColumn": 1, + "path": "src\\supervision\\keypoint\\annotators.py", + "symbol": "unused-import", + "message": "Unused BaseKeyPointAnnotator imported from supervision.key_points.annotators", + "message-id": "W0611" + }, + { + "type": "warning", + "module": "supervision.keypoint.annotators", + "obj": "", + "line": 8, + "column": 0, + "endLine": 13, + "endColumn": 1, + "path": "src\\supervision\\keypoint\\annotators.py", + "symbol": "unused-import", + "message": "Unused EdgeAnnotator imported from supervision.key_points.annotators", + "message-id": "W0611" + }, + { + "type": "warning", + "module": "supervision.keypoint.annotators", + "obj": "", + "line": 8, + "column": 0, + "endLine": 13, + "endColumn": 1, + "path": "src\\supervision\\keypoint\\annotators.py", + "symbol": "unused-import", + "message": "Unused VertexAnnotator imported from supervision.key_points.annotators", + "message-id": "W0611" + }, + { + "type": "warning", + "module": "supervision.keypoint.annotators", + "obj": "", + "line": 8, + "column": 0, + "endLine": 13, + "endColumn": 1, + "path": "src\\supervision\\keypoint\\annotators.py", + "symbol": "unused-import", + "message": "Unused VertexLabelAnnotator imported from supervision.key_points.annotators", + "message-id": "W0611" + }, + { + "type": "convention", + "module": "supervision.keypoint.core", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\keypoint\\core.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.keypoint.core", + "obj": "", + "line": 8, + "column": 0, + "endLine": 8, + "endColumn": 49, + "path": "src\\supervision\\keypoint\\core.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.key_points.core import KeyPoints\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "warning", + "module": "supervision.keypoint.core", + "obj": "", + "line": 8, + "column": 0, + "endLine": 8, + "endColumn": 49, + "path": "src\\supervision\\keypoint\\core.py", + "symbol": "unused-import", + "message": "Unused KeyPoints imported from supervision.key_points.core", + "message-id": "W0611" + }, + { + "type": "convention", + "module": "supervision.keypoint", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\keypoint\\__init__.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.keypoint", + "obj": "", + "line": 8, + "column": 0, + "endLine": 12, + "endColumn": 1, + "path": "src\\supervision\\keypoint\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.key_points.annotators import EdgeAnnotator, VertexAnnotator, VertexLabelAnnotator\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision.keypoint", + "obj": "", + "line": 13, + "column": 0, + "endLine": 13, + "endColumn": 49, + "path": "src\\supervision\\keypoint\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.key_points.core import KeyPoints\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision.key_points.annotators", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.key_points.annotators", + "obj": "BaseKeyPointAnnotator", + "line": 24, + "column": 0, + "endLine": 24, + "endColumn": 27, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "missing-class-docstring", + "message": "Missing class docstring", + "message-id": "C0115" + }, + { + "type": "convention", + "module": "supervision.key_points.annotators", + "obj": "BaseKeyPointAnnotator.annotate", + "line": 26, + "column": 4, + "endLine": 26, + "endColumn": 16, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "refactor", + "module": "supervision.key_points.annotators", + "obj": "BaseKeyPointAnnotator", + "line": 24, + "column": 0, + "endLine": 24, + "endColumn": 27, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "error", + "module": "supervision.key_points.annotators", + "obj": "VertexAnnotator.annotate", + "line": 100, + "column": 16, + "endLine": 100, + "endColumn": 26, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'circle' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.key_points.annotators", + "obj": "VertexAnnotator", + "line": 30, + "column": 0, + "endLine": 30, + "endColumn": 21, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "error", + "module": "supervision.key_points.annotators", + "obj": "EdgeAnnotator.annotate", + "line": 250, + "column": 16, + "endLine": 250, + "endColumn": 24, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'line' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.key_points.annotators", + "obj": "EdgeAnnotator", + "line": 111, + "column": 0, + "endLine": 111, + "endColumn": 19, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.key_points.annotators", + "obj": "_BaseVertexEllipseAnnotator._iter_ellipse_params", + "line": 330, + "column": 4, + "endLine": 330, + "endColumn": 28, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "too-many-locals", + "message": "Too many local variables (20/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.key_points.annotators", + "obj": "_BaseVertexEllipseAnnotator", + "line": 261, + "column": 0, + "endLine": 261, + "endColumn": 33, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "error", + "module": "supervision.key_points.annotators", + "obj": "VertexEllipseAreaAnnotator.annotate", + "line": 455, + "column": 16, + "endLine": 455, + "endColumn": 27, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'ellipse' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.key_points.annotators", + "obj": "VertexEllipseAreaAnnotator.annotate", + "line": 464, + "column": 29, + "endLine": 464, + "endColumn": 40, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'LINE_AA' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.key_points.annotators", + "obj": "VertexEllipseAreaAnnotator.annotate", + "line": 467, + "column": 8, + "endLine": 467, + "endColumn": 23, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'addWeighted' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.key_points.annotators", + "obj": "VertexEllipseAreaAnnotator", + "line": 370, + "column": 0, + "endLine": 370, + "endColumn": 32, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "error", + "module": "supervision.key_points.annotators", + "obj": "VertexEllipseOutlineAnnotator.annotate", + "line": 553, + "column": 16, + "endLine": 553, + "endColumn": 27, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'ellipse' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.key_points.annotators", + "obj": "VertexEllipseOutlineAnnotator.annotate", + "line": 562, + "column": 29, + "endLine": 562, + "endColumn": 40, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'LINE_AA' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.key_points.annotators", + "obj": "VertexEllipseOutlineAnnotator", + "line": 471, + "column": 0, + "endLine": 471, + "endColumn": 35, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.key_points.annotators", + "obj": "VertexEllipseHaloAnnotator.annotate", + "line": 606, + "column": 4, + "endLine": 606, + "endColumn": 16, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "too-many-locals", + "message": "Too many local variables (39/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.key_points.annotators", + "obj": "VertexEllipseHaloAnnotator", + "line": 568, + "column": 0, + "endLine": 568, + "endColumn": 32, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.key_points.annotators", + "obj": "VertexLabelAnnotator.__init__", + "line": 709, + "column": 4, + "endLine": 709, + "endColumn": 16, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (7/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.key_points.annotators", + "obj": "VertexLabelAnnotator.__init__", + "line": 709, + "column": 4, + "endLine": 709, + "endColumn": 16, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (7/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.key_points.annotators", + "obj": "VertexLabelAnnotator.annotate", + "line": 740, + "column": 4, + "endLine": 740, + "endColumn": 16, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "too-many-locals", + "message": "Too many local variables (26/15)", + "message-id": "R0914" + }, + { + "type": "error", + "module": "supervision.key_points.annotators", + "obj": "VertexLabelAnnotator.annotate", + "line": 828, + "column": 15, + "endLine": 828, + "endColumn": 39, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'FONT_HERSHEY_SIMPLEX' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.key_points.annotators", + "obj": "VertexLabelAnnotator.annotate", + "line": 894, + "column": 12, + "endLine": 894, + "endColumn": 23, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'putText' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.key_points.annotators", + "obj": "VertexLabelAnnotator.annotate", + "line": 902, + "column": 25, + "endLine": 902, + "endColumn": 36, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'LINE_AA' member", + "message-id": "E1101" + }, + { + "type": "convention", + "module": "supervision.key_points.annotators", + "obj": "VertexLabelAnnotator.get_text_bounding_box", + "line": 908, + "column": 4, + "endLine": 908, + "endColumn": 29, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "error", + "module": "supervision.key_points.annotators", + "obj": "VertexLabelAnnotator.get_text_bounding_box", + "line": 915, + "column": 25, + "endLine": 915, + "endColumn": 40, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'getTextSize' member", + "message-id": "E1101" + }, + { + "type": "convention", + "module": "supervision.key_points.core", + "obj": "", + "line": 101, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "line-too-long", + "message": "Line too long (124/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.key_points.core", + "obj": "", + "line": 102, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "line-too-long", + "message": "Line too long (148/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.key_points.core", + "obj": "", + "line": 119, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "line-too-long", + "message": "Line too long (120/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.key_points.core", + "obj": "", + "line": 136, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "line-too-long", + "message": "Line too long (120/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.key_points.core", + "obj": "", + "line": 169, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "line-too-long", + "message": "Line too long (126/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.key_points.core", + "obj": "", + "line": 170, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "line-too-long", + "message": "Line too long (110/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.key_points.core", + "obj": "", + "line": 189, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "line-too-long", + "message": "Line too long (105/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.key_points.core", + "obj": "", + "line": 493, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "line-too-long", + "message": "Line too long (116/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.key_points.core", + "obj": "", + "line": 639, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "line-too-long", + "message": "Line too long (130/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.key_points.core", + "obj": "", + "line": 777, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "line-too-long", + "message": "Line too long (109/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.key_points.core", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "too-many-lines", + "message": "Too many lines in module (1342/1000)", + "message-id": "C0302" + }, + { + "type": "convention", + "module": "supervision.key_points.core", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.key_points.core", + "obj": "", + "line": 23, + "column": 0, + "endLine": 23, + "endColumn": 7, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "invalid-name", + "message": "Type alias name \"Index1D\" doesn't conform to predefined naming style", + "message-id": "C0103" + }, + { + "type": "refactor", + "module": "supervision.key_points.core", + "obj": "KeyPoints.__init__", + "line": 245, + "column": 4, + "endLine": 245, + "endColumn": 16, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (7/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.key_points.core", + "obj": "KeyPoints.__init__", + "line": 245, + "column": 4, + "endLine": 245, + "endColumn": 16, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (6/5)", + "message-id": "R0917" + }, + { + "type": "convention", + "module": "supervision.key_points.core", + "obj": "KeyPoints.__iter__", + "line": 359, + "column": 8, + "endLine": 367, + "endColumn": 13, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "consider-using-enumerate", + "message": "Consider using enumerate instead of iterating with range and len", + "message-id": "C0200" + }, + { + "type": "refactor", + "module": "supervision.key_points.core", + "obj": "KeyPoints.from_mediapipe", + "line": 557, + "column": 24, + "endLine": 560, + "endColumn": 25, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "unnecessary-comprehension", + "message": "Unnecessary use of a comprehension, use list(mediapipe_results.pose_landmarks.landmark) instead.", + "message-id": "R1721" + }, + { + "type": "error", + "module": "supervision.key_points.core", + "obj": "KeyPoints.from_mediapipe", + "line": 573, + "column": 15, + "endLine": 573, + "endColumn": 22, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "possibly-used-before-assignment", + "message": "Possibly using variable 'results' before assignment", + "message-id": "E0606" + }, + { + "type": "refactor", + "module": "supervision.key_points.core", + "obj": "KeyPoints.from_detectron2", + "line": 727, + "column": 8, + "endLine": 743, + "endColumn": 30, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "no-else-return", + "message": "Unnecessary \"else\" after \"return\", remove the \"else\" and de-indent the code inside it", + "message-id": "R1705" + }, + { + "type": "refactor", + "module": "supervision.key_points.core", + "obj": "KeyPoints.from_transformers", + "line": 808, + "column": 8, + "endLine": 828, + "endColumn": 30, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "no-else-return", + "message": "Unnecessary \"else\" after \"return\", remove the \"else\" and de-indent the code inside it", + "message-id": "R1705" + }, + { + "type": "warning", + "module": "supervision.key_points.core", + "obj": "KeyPoints._normalize_getitem_index", + "line": 955, + "column": 12, + "endLine": 955, + "endColumn": 59, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "unbalanced-tuple-unpacking", + "message": "Possible unbalanced tuple unpacking with sequence defined at line 105 of numpy.lib._index_tricks_impl: left side has 2 labels, right side has 0 values", + "message-id": "W0632" + }, + { + "type": "refactor", + "module": "supervision.key_points.core", + "obj": "KeyPoints.as_detections", + "line": 1272, + "column": 4, + "endLine": 1272, + "endColumn": 21, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "too-many-locals", + "message": "Too many local variables (16/15)", + "message-id": "R0914" + }, + { + "type": "convention", + "module": "supervision.key_points.skeletons", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\key_points\\skeletons.py", + "symbol": "too-many-lines", + "message": "Too many lines in module (2646/1000)", + "message-id": "C0302" + }, + { + "type": "convention", + "module": "supervision.key_points.skeletons", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\key_points\\skeletons.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.key_points.skeletons", + "obj": "Skeleton", + "line": 6, + "column": 0, + "endLine": 6, + "endColumn": 14, + "path": "src\\supervision\\key_points\\skeletons.py", + "symbol": "missing-class-docstring", + "message": "Missing class docstring", + "message-id": "C0115" + }, + { + "type": "convention", + "module": "supervision.metrics.core", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\metrics\\core.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.metrics.detection", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\metrics\\detection.py", + "symbol": "too-many-lines", + "message": "Too many lines in module (1148/1000)", + "message-id": "C0302" + }, + { + "type": "convention", + "module": "supervision.metrics.detection", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\metrics\\detection.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "refactor", + "module": "supervision.metrics.detection", + "obj": "_fill_confusion_matrix_from_iou", + "line": 255, + "column": 0, + "endLine": 255, + "endColumn": 35, + "path": "src\\supervision\\metrics\\detection.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (8/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.metrics.detection", + "obj": "_fill_confusion_matrix_from_iou", + "line": 255, + "column": 0, + "endLine": 255, + "endColumn": 35, + "path": "src\\supervision\\metrics\\detection.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (8/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.metrics.detection", + "obj": "_fill_confusion_matrix_from_iou", + "line": 255, + "column": 0, + "endLine": 255, + "endColumn": 35, + "path": "src\\supervision\\metrics\\detection.py", + "symbol": "too-many-locals", + "message": "Too many local variables (26/15)", + "message-id": "R0914" + }, + { + "type": "convention", + "module": "supervision.metrics.detection", + "obj": "validate_input_tensors", + "line": 313, + "column": 0, + "endLine": 313, + "endColumn": 26, + "path": "src\\supervision\\metrics\\detection.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "refactor", + "module": "supervision.metrics.detection", + "obj": "ConfusionMatrix.from_detections", + "line": 359, + "column": 4, + "endLine": 359, + "endColumn": 23, + "path": "src\\supervision\\metrics\\detection.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (6/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.metrics.detection", + "obj": "ConfusionMatrix.from_detections", + "line": 359, + "column": 4, + "endLine": 359, + "endColumn": 23, + "path": "src\\supervision\\metrics\\detection.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (6/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.metrics.detection", + "obj": "ConfusionMatrix.from_tensors", + "line": 443, + "column": 4, + "endLine": 443, + "endColumn": 20, + "path": "src\\supervision\\metrics\\detection.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (6/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.metrics.detection", + "obj": "ConfusionMatrix.from_tensors", + "line": 443, + "column": 4, + "endLine": 443, + "endColumn": 20, + "path": "src\\supervision\\metrics\\detection.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (6/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.metrics.detection", + "obj": "ConfusionMatrix.evaluate_detection_batch", + "line": 535, + "column": 4, + "endLine": 535, + "endColumn": 32, + "path": "src\\supervision\\metrics\\detection.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (6/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.metrics.detection", + "obj": "ConfusionMatrix.evaluate_detection_batch", + "line": 535, + "column": 4, + "endLine": 535, + "endColumn": 32, + "path": "src\\supervision\\metrics\\detection.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (6/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.metrics.detection", + "obj": "ConfusionMatrix.evaluate_detection_batch", + "line": 535, + "column": 4, + "endLine": 535, + "endColumn": 32, + "path": "src\\supervision\\metrics\\detection.py", + "symbol": "too-many-locals", + "message": "Too many local variables (16/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.metrics.detection", + "obj": "ConfusionMatrix.plot", + "line": 688, + "column": 4, + "endLine": 688, + "endColumn": 12, + "path": "src\\supervision\\metrics\\detection.py", + "symbol": "too-many-locals", + "message": "Too many local variables (22/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.metrics.detection", + "obj": "MeanAveragePrecision._average_precisions_per_class", + "line": 1095, + "column": 4, + "endLine": 1095, + "endColumn": 37, + "path": "src\\supervision\\metrics\\detection.py", + "symbol": "too-many-locals", + "message": "Too many local variables (21/15)", + "message-id": "R0914" + }, + { + "type": "convention", + "module": "supervision.metrics.f1_score", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\metrics\\f1_score.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "warning", + "module": "supervision.metrics.f1_score", + "obj": "F1Score.update", + "line": 92, + "column": 4, + "endLine": 92, + "endColumn": 14, + "path": "src\\supervision\\metrics\\f1_score.py", + "symbol": "arguments-differ", + "message": "Number of parameters was 3 in 'Metric.update' and is now 3 in overriding 'F1Score.update' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.metrics.f1_score", + "obj": "F1Score.update", + "line": 92, + "column": 4, + "endLine": 92, + "endColumn": 14, + "path": "src\\supervision\\metrics\\f1_score.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'F1Score.update' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.metrics.f1_score", + "obj": "F1Score.compute", + "line": 123, + "column": 4, + "endLine": 123, + "endColumn": 15, + "path": "src\\supervision\\metrics\\f1_score.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'F1Score.compute' method", + "message-id": "W0221" + }, + { + "type": "error", + "module": "supervision.metrics.f1_score", + "obj": "F1Score._compute_f1_for_classes", + "line": 306, + "column": 15, + "endLine": 306, + "endColumn": 24, + "path": "src\\supervision\\metrics\\f1_score.py", + "symbol": "possibly-used-before-assignment", + "message": "Possibly using variable 'f1_scores' before assignment", + "message-id": "E0606" + }, + { + "type": "refactor", + "module": "supervision.metrics.f1_score", + "obj": "F1Score._compute_confusion_matrix", + "line": 341, + "column": 4, + "endLine": 341, + "endColumn": 33, + "path": "src\\supervision\\metrics\\f1_score.py", + "symbol": "too-many-locals", + "message": "Too many local variables (16/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.metrics.f1_score", + "obj": "F1ScoreResult", + "line": 515, + "column": 0, + "endLine": 515, + "endColumn": 19, + "path": "src\\supervision\\metrics\\f1_score.py", + "symbol": "too-many-instance-attributes", + "message": "Too many instance attributes (10/7)", + "message-id": "R0902" + }, + { + "type": "convention", + "module": "supervision.metrics.f1_score", + "obj": "F1ScoreResult.f1_50", + "line": 549, + "column": 4, + "endLine": 549, + "endColumn": 13, + "path": "src\\supervision\\metrics\\f1_score.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.metrics.f1_score", + "obj": "F1ScoreResult.f1_75", + "line": 553, + "column": 4, + "endLine": 553, + "endColumn": 13, + "path": "src\\supervision\\metrics\\f1_score.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "refactor", + "module": "supervision.metrics.f1_score", + "obj": "F1ScoreResult.__init__", + "line": 562, + "column": 4, + "endLine": 562, + "endColumn": 16, + "path": "src\\supervision\\metrics\\f1_score.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (10/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.metrics.f1_score", + "obj": "F1ScoreResult.__init__", + "line": 562, + "column": 4, + "endLine": 562, + "endColumn": 16, + "path": "src\\supervision\\metrics\\f1_score.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (10/5)", + "message-id": "R0917" + }, + { + "type": "convention", + "module": "supervision.metrics.f1_score", + "obj": "F1ScoreResult.small_objects", + "line": 604, + "column": 4, + "endLine": 604, + "endColumn": 21, + "path": "src\\supervision\\metrics\\f1_score.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.metrics.f1_score", + "obj": "F1ScoreResult.medium_objects", + "line": 614, + "column": 4, + "endLine": 614, + "endColumn": 22, + "path": "src\\supervision\\metrics\\f1_score.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.metrics.f1_score", + "obj": "F1ScoreResult.large_objects", + "line": 624, + "column": 4, + "endLine": 624, + "endColumn": 21, + "path": "src\\supervision\\metrics\\f1_score.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.metrics.f1_score", + "obj": "F1ScoreResult.to_pandas", + "line": 709, + "column": 8, + "endLine": 709, + "endColumn": 27, + "path": "src\\supervision\\metrics\\f1_score.py", + "symbol": "import-outside-toplevel", + "message": "Import outside toplevel (pandas)", + "message-id": "C0415" + }, + { + "type": "convention", + "module": "supervision.metrics.f1_score", + "obj": "F1ScoreResult.plot", + "line": 780, + "column": 12, + "endLine": 780, + "endColumn": 15, + "path": "src\\supervision\\metrics\\f1_score.py", + "symbol": "disallowed-name", + "message": "Disallowed name \"bar\"", + "message-id": "C0104" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_precision", + "obj": "", + "line": 853, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "superfluous-parens", + "message": "Unnecessary parens after 'not' keyword", + "message-id": "C0325" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_precision", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "too-many-lines", + "message": "Too many lines in module (1697/1000)", + "message-id": "C0302" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_precision", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_precision", + "obj": "MeanAveragePrecisionResult", + "line": 64, + "column": 4, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "invalid-name", + "message": "Attribute name \"mAP_scores\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_precision", + "obj": "MeanAveragePrecisionResult.__init__", + "line": 76, + "column": 8, + "endLine": 76, + "endColumn": 43, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "invalid-name", + "message": "Argument name \"mAP_scores\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_precision", + "obj": "MeanAveragePrecisionResult.__init__", + "line": 72, + "column": 4, + "endLine": 72, + "endColumn": 16, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (9/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_precision", + "obj": "MeanAveragePrecisionResult.__init__", + "line": 72, + "column": 4, + "endLine": 72, + "endColumn": 16, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (9/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_precision", + "obj": "MeanAveragePrecisionResult.map50_95", + "line": 107, + "column": 8, + "endLine": 110, + "endColumn": 21, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "no-else-return", + "message": "Unnecessary \"else\" after \"return\", remove the \"else\" and de-indent the code inside it", + "message-id": "R1705" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_precision", + "obj": "MeanAveragePrecisionResult.to_pandas", + "line": 243, + "column": 8, + "endLine": 243, + "endColumn": 27, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "import-outside-toplevel", + "message": "Import outside toplevel (pandas)", + "message-id": "C0415" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_precision", + "obj": "MeanAveragePrecisionResult.plot", + "line": 323, + "column": 12, + "endLine": 323, + "endColumn": 15, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "disallowed-name", + "message": "Disallowed name \"bar\"", + "message-id": "C0104" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_precision", + "obj": "EvaluationDataset.__init__", + "line": 356, + "column": 39, + "endLine": 356, + "endColumn": 45, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "use-dict-literal", + "message": "Consider using '{}' instead of a call to 'dict'.", + "message-id": "R1735" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_precision", + "obj": "EvaluationDataset.__init__", + "line": 357, + "column": 36, + "endLine": 357, + "endColumn": 42, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "use-dict-literal", + "message": "Consider using '{}' instead of a call to 'dict'.", + "message-id": "R1735" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_precision", + "obj": "EvaluationDataset.__init__", + "line": 358, + "column": 36, + "endLine": 358, + "endColumn": 42, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "use-dict-literal", + "message": "Consider using '{}' instead of a call to 'dict'.", + "message-id": "R1735" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_precision", + "obj": "EvaluationDataset.__init__", + "line": 359, + "column": 36, + "endLine": 359, + "endColumn": 42, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "use-dict-literal", + "message": "Consider using '{}' instead of a call to 'dict'.", + "message-id": "R1735" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_precision", + "obj": "EvaluationDataset.empty", + "line": 371, + "column": 4, + "endLine": 371, + "endColumn": 13, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_precision", + "obj": "EvaluationDataset.load_predictions", + "line": 561, + "column": 48, + "endLine": 561, + "endColumn": 87, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "unnecessary-comprehension", + "message": "Unnecessary use of a comprehension, use list(self.dataset['images']) instead.", + "message-id": "R1721" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_precision", + "obj": "EvaluationDataset.load_predictions", + "line": 579, + "column": 8, + "endLine": 610, + "endColumn": 35, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "no-else-raise", + "message": "Unnecessary \"elif\" after \"raise\", remove the leading \"el\" from \"elif\"", + "message-id": "R1720" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluatorParameters", + "line": 636, + "column": 0, + "endLine": 636, + "endColumn": 29, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (0/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluator._evaluate_image", + "line": 822, + "column": 4, + "endLine": 822, + "endColumn": 23, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "too-many-locals", + "message": "Too many local variables (29/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluator._compute_raw_metrics", + "line": 1036, + "column": 4, + "endLine": 1036, + "endColumn": 28, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (10/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluator._compute_raw_metrics", + "line": 1036, + "column": 4, + "endLine": 1036, + "endColumn": 28, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (10/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluator._compute_raw_metrics", + "line": 1036, + "column": 4, + "endLine": 1036, + "endColumn": 28, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "too-many-locals", + "message": "Too many local variables (45/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluator._compute_raw_metrics", + "line": 1049, + "column": 8, + "endLine": 1134, + "endColumn": 71, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "too-many-nested-blocks", + "message": "Too many nested blocks (6/5)", + "message-id": "R1702" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluator._compute_raw_metrics", + "line": 1049, + "column": 8, + "endLine": 1134, + "endColumn": 71, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "too-many-nested-blocks", + "message": "Too many nested blocks (6/5)", + "message-id": "R1702" + }, + { + "type": "warning", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluator._compute_average_precision", + "line": 1156, + "column": 8, + "endLine": 1156, + "endColumn": 19, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "protected-access", + "message": "Access to a protected member _state of a client class", + "message-id": "W0212" + }, + { + "type": "error", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluator._compute_average_precision", + "line": 1156, + "column": 8, + "endLine": 1156, + "endColumn": 12, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "undefined-variable", + "message": "Undefined variable 'self'", + "message-id": "E0602" + }, + { + "type": "error", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluator._compute_average_precision", + "line": 1157, + "column": 22, + "endLine": 1157, + "endColumn": 26, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "undefined-variable", + "message": "Undefined variable 'self'", + "message-id": "E0602" + }, + { + "type": "error", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluator._compute_average_precision", + "line": 1159, + "column": 16, + "endLine": 1159, + "endColumn": 34, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "undefined-variable", + "message": "Undefined variable 'num_iou_thresholds'", + "message-id": "E0602" + }, + { + "type": "error", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluator._compute_average_precision", + "line": 1160, + "column": 16, + "endLine": 1160, + "endColumn": 37, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "undefined-variable", + "message": "Undefined variable 'num_recall_thresholds'", + "message-id": "E0602" + }, + { + "type": "error", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluator._compute_average_precision", + "line": 1161, + "column": 16, + "endLine": 1161, + "endColumn": 30, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "undefined-variable", + "message": "Undefined variable 'num_categories'", + "message-id": "E0602" + }, + { + "type": "error", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluator._compute_average_precision", + "line": 1162, + "column": 16, + "endLine": 1162, + "endColumn": 31, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "undefined-variable", + "message": "Undefined variable 'num_area_ranges'", + "message-id": "E0602" + }, + { + "type": "error", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluator._compute_average_precision", + "line": 1163, + "column": 16, + "endLine": 1163, + "endColumn": 34, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "undefined-variable", + "message": "Undefined variable 'num_max_detections'", + "message-id": "E0602" + }, + { + "type": "error", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluator._compute_average_precision", + "line": 1166, + "column": 25, + "endLine": 1166, + "endColumn": 34, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "undefined-variable", + "message": "Undefined variable 'precision'", + "message-id": "E0602" + }, + { + "type": "error", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluator._compute_average_precision", + "line": 1167, + "column": 22, + "endLine": 1167, + "endColumn": 28, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "undefined-variable", + "message": "Undefined variable 'recall'", + "message-id": "E0602" + }, + { + "type": "error", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluator._compute_average_precision", + "line": 1168, + "column": 22, + "endLine": 1168, + "endColumn": 28, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "undefined-variable", + "message": "Undefined variable 'scores'", + "message-id": "E0602" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluator._compute_average_precision", + "line": 1170, + "column": 8, + "endLine": 1170, + "endColumn": 18, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "invalid-name", + "message": "Variable name \"mAP_scores\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluator._compute_average_precision_by_size", + "line": 1174, + "column": 4, + "endLine": 1174, + "endColumn": 42, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "too-many-locals", + "message": "Too many local variables (19/15)", + "message-id": "R0914" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluator._compute_average_precision_by_size", + "line": 1184, + "column": 8, + "endLine": 1184, + "endColumn": 28, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "invalid-name", + "message": "Variable name \"mAP_scores_all_sizes\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluator._compute_average_precision_by_size", + "line": 1192, + "column": 8, + "endLine": 1192, + "endColumn": 24, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "invalid-name", + "message": "Variable name \"mAP_scores_small\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluator._compute_average_precision_by_size", + "line": 1200, + "column": 8, + "endLine": 1200, + "endColumn": 25, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "invalid-name", + "message": "Variable name \"mAP_scores_medium\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluator._compute_average_precision_by_size", + "line": 1208, + "column": 8, + "endLine": 1208, + "endColumn": 24, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "invalid-name", + "message": "Variable name \"mAP_scores_large\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluator._pycocotools_summarize._summarize", + "line": 1285, + "column": 12, + "endLine": 1285, + "endColumn": 16, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "invalid-name", + "message": "Variable name \"iStr\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluator._pycocotools_summarize._summarize", + "line": 1286, + "column": 12, + "endLine": 1286, + "endColumn": 20, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "invalid-name", + "message": "Variable name \"titleStr\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluator._pycocotools_summarize._summarize", + "line": 1287, + "column": 12, + "endLine": 1287, + "endColumn": 19, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "invalid-name", + "message": "Variable name \"typeStr\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "warning", + "module": "supervision.metrics.mean_average_precision", + "obj": "MeanAveragePrecision.update", + "line": 1472, + "column": 4, + "endLine": 1472, + "endColumn": 14, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "arguments-differ", + "message": "Number of parameters was 3 in 'Metric.update' and is now 3 in overriding 'MeanAveragePrecision.update' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.metrics.mean_average_precision", + "obj": "MeanAveragePrecision.update", + "line": 1472, + "column": 4, + "endLine": 1472, + "endColumn": 14, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'MeanAveragePrecision.update' method", + "message-id": "W0221" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_precision", + "obj": "MeanAveragePrecision._prepare_targets", + "line": 1514, + "column": 4, + "endLine": 1514, + "endColumn": 24, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "too-many-locals", + "message": "Too many local variables (16/15)", + "message-id": "R0914" + }, + { + "type": "warning", + "module": "supervision.metrics.mean_average_precision", + "obj": "MeanAveragePrecision.compute", + "line": 1627, + "column": 4, + "endLine": 1627, + "endColumn": 15, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'MeanAveragePrecision.compute' method", + "message-id": "W0221" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_precision", + "obj": "MeanAveragePrecision.compute", + "line": 1652, + "column": 8, + "endLine": 1652, + "endColumn": 16, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "invalid-name", + "message": "Variable name \"cocoEval\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_precision", + "obj": "MeanAveragePrecision.compute", + "line": 1658, + "column": 8, + "endLine": 1658, + "endColumn": 17, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "invalid-name", + "message": "Variable name \"mAP_small\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_precision", + "obj": "MeanAveragePrecision.compute", + "line": 1667, + "column": 8, + "endLine": 1667, + "endColumn": 18, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "invalid-name", + "message": "Variable name \"mAP_medium\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_precision", + "obj": "MeanAveragePrecision.compute", + "line": 1676, + "column": 8, + "endLine": 1676, + "endColumn": 17, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "invalid-name", + "message": "Variable name \"mAP_large\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_precision", + "obj": "MeanAveragePrecision.compute", + "line": 1686, + "column": 8, + "endLine": 1686, + "endColumn": 18, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "invalid-name", + "message": "Variable name \"mAP_result\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_recall", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\metrics\\mean_average_recall.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_recall", + "obj": "_MeanAverageRecallSizeResultsMixin.small_objects", + "line": 51, + "column": 4, + "endLine": 51, + "endColumn": 21, + "path": "src\\supervision\\metrics\\mean_average_recall.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_recall", + "obj": "_MeanAverageRecallSizeResultsMixin.medium_objects", + "line": 62, + "column": 4, + "endLine": 62, + "endColumn": 22, + "path": "src\\supervision\\metrics\\mean_average_recall.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_recall", + "obj": "_MeanAverageRecallSizeResultsMixin.large_objects", + "line": 73, + "column": 4, + "endLine": 73, + "endColumn": 21, + "path": "src\\supervision\\metrics\\mean_average_recall.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_recall", + "obj": "MeanAverageRecallResult.__init__", + "line": 125, + "column": 4, + "endLine": 125, + "endColumn": 16, + "path": "src\\supervision\\metrics\\mean_average_recall.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (10/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_recall", + "obj": "MeanAverageRecallResult.__init__", + "line": 125, + "column": 4, + "endLine": 125, + "endColumn": 16, + "path": "src\\supervision\\metrics\\mean_average_recall.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (10/5)", + "message-id": "R0917" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_recall", + "obj": "MeanAverageRecallResult.mAR_at_1", + "line": 161, + "column": 4, + "endLine": 161, + "endColumn": 16, + "path": "src\\supervision\\metrics\\mean_average_recall.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_recall", + "obj": "MeanAverageRecallResult.mAR_at_1", + "line": 161, + "column": 4, + "endLine": 161, + "endColumn": 16, + "path": "src\\supervision\\metrics\\mean_average_recall.py", + "symbol": "invalid-name", + "message": "Attribute name \"mAR_at_1\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_recall", + "obj": "MeanAverageRecallResult.mAR_at_10", + "line": 165, + "column": 4, + "endLine": 165, + "endColumn": 17, + "path": "src\\supervision\\metrics\\mean_average_recall.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_recall", + "obj": "MeanAverageRecallResult.mAR_at_10", + "line": 165, + "column": 4, + "endLine": 165, + "endColumn": 17, + "path": "src\\supervision\\metrics\\mean_average_recall.py", + "symbol": "invalid-name", + "message": "Attribute name \"mAR_at_10\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_recall", + "obj": "MeanAverageRecallResult.mAR_at_100", + "line": 169, + "column": 4, + "endLine": 169, + "endColumn": 18, + "path": "src\\supervision\\metrics\\mean_average_recall.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_recall", + "obj": "MeanAverageRecallResult.mAR_at_100", + "line": 169, + "column": 4, + "endLine": 169, + "endColumn": 18, + "path": "src\\supervision\\metrics\\mean_average_recall.py", + "symbol": "invalid-name", + "message": "Attribute name \"mAR_at_100\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_recall", + "obj": "MeanAverageRecallResult.to_pandas", + "line": 249, + "column": 8, + "endLine": 249, + "endColumn": 27, + "path": "src\\supervision\\metrics\\mean_average_recall.py", + "symbol": "import-outside-toplevel", + "message": "Import outside toplevel (pandas)", + "message-id": "C0415" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_recall", + "obj": "MeanAverageRecallResult.plot", + "line": 330, + "column": 12, + "endLine": 330, + "endColumn": 15, + "path": "src\\supervision\\metrics\\mean_average_recall.py", + "symbol": "disallowed-name", + "message": "Disallowed name \"bar\"", + "message-id": "C0104" + }, + { + "type": "warning", + "module": "supervision.metrics.mean_average_recall", + "obj": "MeanAverageRecall.update", + "line": 408, + "column": 4, + "endLine": 408, + "endColumn": 14, + "path": "src\\supervision\\metrics\\mean_average_recall.py", + "symbol": "arguments-differ", + "message": "Number of parameters was 3 in 'Metric.update' and is now 3 in overriding 'MeanAverageRecall.update' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.metrics.mean_average_recall", + "obj": "MeanAverageRecall.update", + "line": 408, + "column": 4, + "endLine": 408, + "endColumn": 14, + "path": "src\\supervision\\metrics\\mean_average_recall.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'MeanAverageRecall.update' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.metrics.mean_average_recall", + "obj": "MeanAverageRecall.compute", + "line": 439, + "column": 4, + "endLine": 439, + "endColumn": 15, + "path": "src\\supervision\\metrics\\mean_average_recall.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'MeanAverageRecall.compute' method", + "message-id": "W0221" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_recall", + "obj": "MeanAverageRecall._compute", + "line": 468, + "column": 4, + "endLine": 468, + "endColumn": 16, + "path": "src\\supervision\\metrics\\mean_average_recall.py", + "symbol": "too-many-locals", + "message": "Too many local variables (16/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_recall", + "obj": "MeanAverageRecall._compute_confusion_matrix", + "line": 626, + "column": 4, + "endLine": 626, + "endColumn": 33, + "path": "src\\supervision\\metrics\\mean_average_recall.py", + "symbol": "too-many-locals", + "message": "Too many local variables (17/15)", + "message-id": "R0914" + }, + { + "type": "convention", + "module": "supervision.metrics.precision", + "obj": "", + "line": 826, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\metrics\\precision.py", + "symbol": "trailing-newlines", + "message": "Trailing newlines", + "message-id": "C0305" + }, + { + "type": "convention", + "module": "supervision.metrics.precision", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\metrics\\precision.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "refactor", + "module": "supervision.metrics.precision", + "obj": "PrecisionResult", + "line": 40, + "column": 0, + "endLine": 40, + "endColumn": 21, + "path": "src\\supervision\\metrics\\precision.py", + "symbol": "too-many-instance-attributes", + "message": "Too many instance attributes (10/7)", + "message-id": "R0902" + }, + { + "type": "refactor", + "module": "supervision.metrics.precision", + "obj": "PrecisionResult.__init__", + "line": 81, + "column": 4, + "endLine": 81, + "endColumn": 16, + "path": "src\\supervision\\metrics\\precision.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (9/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.metrics.precision", + "obj": "PrecisionResult.__init__", + "line": 81, + "column": 4, + "endLine": 81, + "endColumn": 16, + "path": "src\\supervision\\metrics\\precision.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (9/5)", + "message-id": "R0917" + }, + { + "type": "convention", + "module": "supervision.metrics.precision", + "obj": "PrecisionResult.precision_at_50", + "line": 113, + "column": 4, + "endLine": 113, + "endColumn": 23, + "path": "src\\supervision\\metrics\\precision.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.metrics.precision", + "obj": "PrecisionResult.precision_at_75", + "line": 117, + "column": 4, + "endLine": 117, + "endColumn": 23, + "path": "src\\supervision\\metrics\\precision.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.metrics.precision", + "obj": "PrecisionResult.to_pandas", + "line": 252, + "column": 8, + "endLine": 252, + "endColumn": 27, + "path": "src\\supervision\\metrics\\precision.py", + "symbol": "import-outside-toplevel", + "message": "Import outside toplevel (pandas)", + "message-id": "C0415" + }, + { + "type": "convention", + "module": "supervision.metrics.precision", + "obj": "PrecisionResult.plot", + "line": 322, + "column": 12, + "endLine": 322, + "endColumn": 15, + "path": "src\\supervision\\metrics\\precision.py", + "symbol": "disallowed-name", + "message": "Disallowed name \"bar\"", + "message-id": "C0104" + }, + { + "type": "warning", + "module": "supervision.metrics.precision", + "obj": "Precision.update", + "line": 403, + "column": 4, + "endLine": 403, + "endColumn": 14, + "path": "src\\supervision\\metrics\\precision.py", + "symbol": "arguments-differ", + "message": "Number of parameters was 3 in 'Metric.update' and is now 3 in overriding 'Precision.update' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.metrics.precision", + "obj": "Precision.update", + "line": 403, + "column": 4, + "endLine": 403, + "endColumn": 14, + "path": "src\\supervision\\metrics\\precision.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'Precision.update' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.metrics.precision", + "obj": "Precision.compute", + "line": 434, + "column": 4, + "endLine": 434, + "endColumn": 15, + "path": "src\\supervision\\metrics\\precision.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'Precision.compute' method", + "message-id": "W0221" + }, + { + "type": "error", + "module": "supervision.metrics.precision", + "obj": "Precision._compute_precision_for_classes", + "line": 625, + "column": 15, + "endLine": 625, + "endColumn": 31, + "path": "src\\supervision\\metrics\\precision.py", + "symbol": "possibly-used-before-assignment", + "message": "Possibly using variable 'precision_scores' before assignment", + "message-id": "E0606" + }, + { + "type": "refactor", + "module": "supervision.metrics.precision", + "obj": "Precision._compute_confusion_matrix", + "line": 659, + "column": 4, + "endLine": 659, + "endColumn": 33, + "path": "src\\supervision\\metrics\\precision.py", + "symbol": "too-many-locals", + "message": "Too many local variables (16/15)", + "message-id": "R0914" + }, + { + "type": "convention", + "module": "supervision.metrics.recall", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "refactor", + "module": "supervision.metrics.recall", + "obj": "RecallResult", + "line": 40, + "column": 0, + "endLine": 40, + "endColumn": 18, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "too-many-instance-attributes", + "message": "Too many instance attributes (10/7)", + "message-id": "R0902" + }, + { + "type": "convention", + "module": "supervision.metrics.recall", + "obj": "RecallResult.recall_at_50", + "line": 72, + "column": 4, + "endLine": 72, + "endColumn": 20, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.metrics.recall", + "obj": "RecallResult.recall_at_75", + "line": 76, + "column": 4, + "endLine": 76, + "endColumn": 20, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "refactor", + "module": "supervision.metrics.recall", + "obj": "RecallResult.__init__", + "line": 85, + "column": 4, + "endLine": 85, + "endColumn": 16, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (10/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.metrics.recall", + "obj": "RecallResult.__init__", + "line": 85, + "column": 4, + "endLine": 85, + "endColumn": 16, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (10/5)", + "message-id": "R0917" + }, + { + "type": "convention", + "module": "supervision.metrics.recall", + "obj": "RecallResult.small_objects", + "line": 127, + "column": 4, + "endLine": 127, + "endColumn": 21, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.metrics.recall", + "obj": "RecallResult.medium_objects", + "line": 138, + "column": 4, + "endLine": 138, + "endColumn": 22, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.metrics.recall", + "obj": "RecallResult.large_objects", + "line": 149, + "column": 4, + "endLine": 149, + "endColumn": 21, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "warning", + "module": "supervision.metrics.recall", + "obj": "Recall.update", + "line": 225, + "column": 4, + "endLine": 225, + "endColumn": 14, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "arguments-differ", + "message": "Number of parameters was 3 in 'Metric.update' and is now 3 in overriding 'Recall.update' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.metrics.recall", + "obj": "Recall.update", + "line": 225, + "column": 4, + "endLine": 225, + "endColumn": 14, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'Recall.update' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.metrics.recall", + "obj": "Recall.compute", + "line": 256, + "column": 4, + "endLine": 256, + "endColumn": 15, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'Recall.compute' method", + "message-id": "W0221" + }, + { + "type": "error", + "module": "supervision.metrics.recall", + "obj": "Recall._compute_recall_for_classes", + "line": 403, + "column": 15, + "endLine": 403, + "endColumn": 28, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "possibly-used-before-assignment", + "message": "Possibly using variable 'recall_scores' before assignment", + "message-id": "E0606" + }, + { + "type": "refactor", + "module": "supervision.metrics.recall", + "obj": "Recall._compute_confusion_matrix", + "line": 437, + "column": 4, + "endLine": 437, + "endColumn": 33, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "too-many-locals", + "message": "Too many local variables (16/15)", + "message-id": "R0914" + }, + { + "type": "warning", + "module": "supervision.metrics.recall", + "obj": "Recall._make_empty_content", + "line": 559, + "column": 8, + "endLine": 559, + "endColumn": 73, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "unreachable", + "message": "Unreachable code", + "message-id": "W0101" + }, + { + "type": "error", + "module": "supervision.metrics.recall", + "obj": "Recall.__str__", + "line": 648, + "column": 33, + "endLine": 648, + "endColumn": 51, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "no-member", + "message": "Instance of 'Recall' has no 'metric_target' member; maybe '_metric_target'?", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.metrics.recall", + "obj": "Recall.__str__", + "line": 650, + "column": 27, + "endLine": 650, + "endColumn": 44, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "no-member", + "message": "Instance of 'Recall' has no 'recall_at_50' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.metrics.recall", + "obj": "Recall.__str__", + "line": 651, + "column": 27, + "endLine": 651, + "endColumn": 44, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "no-member", + "message": "Instance of 'Recall' has no 'recall_at_75' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.metrics.recall", + "obj": "Recall.__str__", + "line": 652, + "column": 27, + "endLine": 652, + "endColumn": 45, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "no-member", + "message": "Instance of 'Recall' has no 'recall_scores' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.metrics.recall", + "obj": "Recall.__str__", + "line": 653, + "column": 27, + "endLine": 653, + "endColumn": 46, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "no-member", + "message": "Instance of 'Recall' has no 'iou_thresholds' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.metrics.recall", + "obj": "Recall.__str__", + "line": 656, + "column": 11, + "endLine": 656, + "endColumn": 32, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "no-member", + "message": "Instance of 'Recall' has no 'recall_per_class' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.metrics.recall", + "obj": "Recall.__str__", + "line": 659, + "column": 12, + "endLine": 659, + "endColumn": 32, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "no-member", + "message": "Instance of 'Recall' has no 'matched_classes' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.metrics.recall", + "obj": "Recall.__str__", + "line": 659, + "column": 34, + "endLine": 659, + "endColumn": 55, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "no-member", + "message": "Instance of 'Recall' has no 'recall_per_class' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.metrics.recall", + "obj": "Recall.__str__", + "line": 664, + "column": 11, + "endLine": 664, + "endColumn": 29, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "no-member", + "message": "Instance of 'Recall' has no 'small_objects' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.metrics.recall", + "obj": "Recall.__str__", + "line": 665, + "column": 36, + "endLine": 665, + "endColumn": 54, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "no-member", + "message": "Instance of 'Recall' has no 'small_objects' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.metrics.recall", + "obj": "Recall.__str__", + "line": 667, + "column": 11, + "endLine": 667, + "endColumn": 30, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "no-member", + "message": "Instance of 'Recall' has no 'medium_objects' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.metrics.recall", + "obj": "Recall.__str__", + "line": 668, + "column": 36, + "endLine": 668, + "endColumn": 55, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "no-member", + "message": "Instance of 'Recall' has no 'medium_objects' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.metrics.recall", + "obj": "Recall.__str__", + "line": 670, + "column": 11, + "endLine": 670, + "endColumn": 29, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "no-member", + "message": "Instance of 'Recall' has no 'large_objects' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.metrics.recall", + "obj": "Recall.__str__", + "line": 671, + "column": 36, + "endLine": 671, + "endColumn": 54, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "no-member", + "message": "Instance of 'Recall' has no 'large_objects' member", + "message-id": "E1101" + }, + { + "type": "convention", + "module": "supervision.metrics.recall", + "obj": "Recall.to_pandas", + "line": 684, + "column": 8, + "endLine": 684, + "endColumn": 27, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "import-outside-toplevel", + "message": "Import outside toplevel (pandas)", + "message-id": "C0415" + }, + { + "type": "error", + "module": "supervision.metrics.recall", + "obj": "Recall.to_pandas", + "line": 687, + "column": 20, + "endLine": 687, + "endColumn": 37, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "no-member", + "message": "Instance of 'Recall' has no 'recall_at_50' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.metrics.recall", + "obj": "Recall.to_pandas", + "line": 688, + "column": 20, + "endLine": 688, + "endColumn": 37, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "no-member", + "message": "Instance of 'Recall' has no 'recall_at_75' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.metrics.recall", + "obj": "Recall.to_pandas", + "line": 691, + "column": 11, + "endLine": 691, + "endColumn": 29, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "no-member", + "message": "Instance of 'Recall' has no 'small_objects' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.metrics.recall", + "obj": "Recall.to_pandas", + "line": 692, + "column": 31, + "endLine": 692, + "endColumn": 49, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "no-member", + "message": "Instance of 'Recall' has no 'small_objects' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.metrics.recall", + "obj": "Recall.to_pandas", + "line": 695, + "column": 11, + "endLine": 695, + "endColumn": 30, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "no-member", + "message": "Instance of 'Recall' has no 'medium_objects' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.metrics.recall", + "obj": "Recall.to_pandas", + "line": 696, + "column": 32, + "endLine": 696, + "endColumn": 51, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "no-member", + "message": "Instance of 'Recall' has no 'medium_objects' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.metrics.recall", + "obj": "Recall.to_pandas", + "line": 699, + "column": 11, + "endLine": 699, + "endColumn": 29, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "no-member", + "message": "Instance of 'Recall' has no 'large_objects' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.metrics.recall", + "obj": "Recall.to_pandas", + "line": 700, + "column": 31, + "endLine": 700, + "endColumn": 49, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "no-member", + "message": "Instance of 'Recall' has no 'large_objects' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.metrics.recall", + "obj": "Recall.plot", + "line": 716, + "column": 18, + "endLine": 716, + "endColumn": 35, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "no-member", + "message": "Instance of 'Recall' has no 'recall_at_50' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.metrics.recall", + "obj": "Recall.plot", + "line": 716, + "column": 37, + "endLine": 716, + "endColumn": 54, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "no-member", + "message": "Instance of 'Recall' has no 'recall_at_75' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.metrics.recall", + "obj": "Recall.plot", + "line": 719, + "column": 11, + "endLine": 719, + "endColumn": 29, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "no-member", + "message": "Instance of 'Recall' has no 'small_objects' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.metrics.recall", + "obj": "Recall.plot", + "line": 720, + "column": 28, + "endLine": 720, + "endColumn": 46, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "no-member", + "message": "Instance of 'Recall' has no 'small_objects' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.metrics.recall", + "obj": "Recall.plot", + "line": 725, + "column": 11, + "endLine": 725, + "endColumn": 30, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "no-member", + "message": "Instance of 'Recall' has no 'medium_objects' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.metrics.recall", + "obj": "Recall.plot", + "line": 726, + "column": 29, + "endLine": 726, + "endColumn": 48, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "no-member", + "message": "Instance of 'Recall' has no 'medium_objects' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.metrics.recall", + "obj": "Recall.plot", + "line": 731, + "column": 11, + "endLine": 731, + "endColumn": 29, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "no-member", + "message": "Instance of 'Recall' has no 'large_objects' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.metrics.recall", + "obj": "Recall.plot", + "line": 732, + "column": 28, + "endLine": 732, + "endColumn": 46, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "no-member", + "message": "Instance of 'Recall' has no 'large_objects' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.metrics.recall", + "obj": "Recall.plot", + "line": 744, + "column": 26, + "endLine": 744, + "endColumn": 44, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "no-member", + "message": "Instance of 'Recall' has no 'metric_target' member; maybe '_metric_target'?", + "message-id": "E1101" + }, + { + "type": "convention", + "module": "supervision.metrics.recall", + "obj": "Recall.plot", + "line": 755, + "column": 12, + "endLine": 755, + "endColumn": 15, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "disallowed-name", + "message": "Disallowed name \"bar\"", + "message-id": "C0104" + }, + { + "type": "convention", + "module": "supervision.metrics", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\metrics\\__init__.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.metrics.utils.object_size", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\metrics\\utils\\object_size.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.metrics.utils.object_size", + "obj": "get_bbox_size_category", + "line": 119, + "column": 4, + "endLine": 119, + "endColumn": 6, + "path": "src\\supervision\\metrics\\utils\\object_size.py", + "symbol": "invalid-name", + "message": "Variable name \"SM\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.utils.object_size", + "obj": "get_bbox_size_category", + "line": 119, + "column": 8, + "endLine": 119, + "endColumn": 10, + "path": "src\\supervision\\metrics\\utils\\object_size.py", + "symbol": "invalid-name", + "message": "Variable name \"LG\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.utils.object_size", + "obj": "get_mask_size_category", + "line": 161, + "column": 4, + "endLine": 161, + "endColumn": 6, + "path": "src\\supervision\\metrics\\utils\\object_size.py", + "symbol": "invalid-name", + "message": "Variable name \"SM\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.utils.object_size", + "obj": "get_mask_size_category", + "line": 161, + "column": 8, + "endLine": 161, + "endColumn": 10, + "path": "src\\supervision\\metrics\\utils\\object_size.py", + "symbol": "invalid-name", + "message": "Variable name \"LG\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.utils.object_size", + "obj": "get_obb_size_category", + "line": 207, + "column": 4, + "endLine": 207, + "endColumn": 6, + "path": "src\\supervision\\metrics\\utils\\object_size.py", + "symbol": "invalid-name", + "message": "Variable name \"SM\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.utils.object_size", + "obj": "get_obb_size_category", + "line": 207, + "column": 8, + "endLine": 207, + "endColumn": 10, + "path": "src\\supervision\\metrics\\utils\\object_size.py", + "symbol": "invalid-name", + "message": "Variable name \"LG\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.utils.utils", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\metrics\\utils\\utils.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.metrics.utils.utils", + "obj": "ensure_pandas_installed", + "line": 1, + "column": 0, + "endLine": 1, + "endColumn": 27, + "path": "src\\supervision\\metrics\\utils\\utils.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.metrics.utils.utils", + "obj": "ensure_pandas_installed", + "line": 3, + "column": 8, + "endLine": 3, + "endColumn": 21, + "path": "src\\supervision\\metrics\\utils\\utils.py", + "symbol": "import-outside-toplevel", + "message": "Import outside toplevel (pandas)", + "message-id": "C0415" + }, + { + "type": "warning", + "module": "supervision.metrics.utils.utils", + "obj": "ensure_pandas_installed", + "line": 5, + "column": 8, + "endLine": 9, + "endColumn": 9, + "path": "src\\supervision\\metrics\\utils\\utils.py", + "symbol": "raise-missing-from", + "message": "Consider explicitly re-raising using 'except ImportError as exc' and 'raise ImportError(\"`metrics` extra is required to run the function. Run `uv pip install 'supervision[metrics]'` or `uv add supervision --extra metrics`.\") from exc'", + "message-id": "W0707" + }, + { + "type": "warning", + "module": "supervision.metrics.utils.utils", + "obj": "ensure_pandas_installed", + "line": 3, + "column": 8, + "endLine": 3, + "endColumn": 21, + "path": "src\\supervision\\metrics\\utils\\utils.py", + "symbol": "unused-import", + "message": "Unused import pandas", + "message-id": "W0611" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.core", + "obj": "", + "line": 60, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "line-too-long", + "message": "Line too long (145/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.core", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack.frame_id", + "line": 104, + "column": 4, + "endLine": 104, + "endColumn": 16, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "refactor", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack.update_with_detections", + "line": 161, + "column": 8, + "endLine": 183, + "endColumn": 29, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "no-else-return", + "message": "Unnecessary \"else\" after \"return\", remove the \"else\" and de-indent the code inside it", + "message-id": "R1705" + }, + { + "type": "refactor", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack.update_with_tensors", + "line": 196, + "column": 4, + "endLine": 196, + "endColumn": 27, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "too-many-locals", + "message": "Too many local variables (24/15)", + "message-id": "R0914" + }, + { + "type": "error", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack.update_with_tensors", + "line": 220, + "column": 42, + "endLine": 220, + "endColumn": 60, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "no-member", + "message": "Instance of 'ByteTrack' has no 'shared_kalman' member", + "message-id": "E1101" + }, + { + "type": "warning", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack.update_with_tensors", + "line": 207, + "column": 8, + "endLine": 207, + "endColumn": 25, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "unused-variable", + "message": "Unused variable 'activated_starcks'", + "message-id": "W0612" + }, + { + "type": "warning", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack.update_with_tensors", + "line": 208, + "column": 8, + "endLine": 208, + "endColumn": 22, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "unused-variable", + "message": "Unused variable 'refind_stracks'", + "message-id": "W0612" + }, + { + "type": "warning", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack.update_with_tensors", + "line": 209, + "column": 8, + "endLine": 209, + "endColumn": 20, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "unused-variable", + "message": "Unused variable 'lost_stracks'", + "message-id": "W0612" + }, + { + "type": "warning", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack.update_with_tensors", + "line": 210, + "column": 8, + "endLine": 210, + "endColumn": 23, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "unused-variable", + "message": "Unused variable 'removed_stracks'", + "message-id": "W0612" + }, + { + "type": "warning", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack._split_by_confidence", + "line": 261, + "column": 12, + "endLine": 261, + "endColumn": 28, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "pointless-string-statement", + "message": "String statement has no effect", + "message-id": "W0105" + }, + { + "type": "error", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack._split_by_confidence", + "line": 274, + "column": 29, + "endLine": 274, + "endColumn": 60, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "no-member", + "message": "Instance of 'ByteTrack' has no 'track_activation_threshold' member", + "message-id": "E1101" + }, + { + "type": "warning", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack._split_by_confidence", + "line": 284, + "column": 8, + "endLine": 288, + "endColumn": 45, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "unreachable", + "message": "Unreachable code", + "message-id": "W0101" + }, + { + "type": "error", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack._split_by_confidence", + "line": 286, + "column": 16, + "endLine": 286, + "endColumn": 27, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "undefined-variable", + "message": "Undefined variable 'unconfirmed'", + "message-id": "E0602" + }, + { + "type": "error", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack._split_by_confidence", + "line": 288, + "column": 16, + "endLine": 288, + "endColumn": 31, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "undefined-variable", + "message": "Undefined variable 'tracked_stracks'", + "message-id": "E0602" + }, + { + "type": "warning", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack._split_by_confidence", + "line": 290, + "column": 8, + "endLine": 290, + "endColumn": 73, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "pointless-string-statement", + "message": "String statement has no effect", + "message-id": "W0105" + }, + { + "type": "error", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack._split_by_confidence", + "line": 291, + "column": 35, + "endLine": 291, + "endColumn": 50, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "undefined-variable", + "message": "Undefined variable 'tracked_stracks'", + "message-id": "E0602" + }, + { + "type": "warning", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack._split_by_confidence", + "line": 255, + "column": 8, + "endLine": 255, + "endColumn": 19, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "unused-variable", + "message": "Unused variable 'dets_second'", + "message-id": "W0612" + }, + { + "type": "warning", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack._split_by_confidence", + "line": 258, + "column": 8, + "endLine": 258, + "endColumn": 21, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "unused-variable", + "message": "Unused variable 'scores_second'", + "message-id": "W0612" + }, + { + "type": "warning", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack._split_by_confidence", + "line": 262, + "column": 12, + "endLine": 262, + "endColumn": 22, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "unused-variable", + "message": "Unused variable 'detections'", + "message-id": "W0612" + }, + { + "type": "error", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack._build_stracks", + "line": 300, + "column": 12, + "endLine": 307, + "endColumn": 13, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "too-many-function-args", + "message": "Too many positional arguments for constructor call", + "message-id": "E1121" + }, + { + "type": "error", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack._build_stracks", + "line": 303, + "column": 16, + "endLine": 303, + "endColumn": 47, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "no-member", + "message": "Instance of 'ByteTrack' has no 'minimum_consecutive_frames' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack._build_stracks", + "line": 304, + "column": 16, + "endLine": 304, + "endColumn": 34, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "no-member", + "message": "Instance of 'ByteTrack' has no 'shared_kalman' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack._build_stracks", + "line": 305, + "column": 16, + "endLine": 305, + "endColumn": 40, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "no-member", + "message": "Instance of 'ByteTrack' has no 'internal_id_counter' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack._build_stracks", + "line": 306, + "column": 16, + "endLine": 306, + "endColumn": 40, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "no-member", + "message": "Instance of 'ByteTrack' has no 'external_id_counter' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack._second_association", + "line": 349, + "column": 4, + "endLine": 349, + "endColumn": 27, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "too-many-locals", + "message": "Too many local variables (18/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack._unconfirmed_and_init_new", + "line": 386, + "column": 4, + "endLine": 386, + "endColumn": 33, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "too-many-locals", + "message": "Too many local variables (16/15)", + "message-id": "R0914" + }, + { + "type": "error", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack._remove_stale_lost_tracks", + "line": 421, + "column": 48, + "endLine": 421, + "endColumn": 66, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "no-member", + "message": "Instance of 'ByteTrack' has no 'max_time_lost' member", + "message-id": "E1101" + }, + { + "type": "warning", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack._remove_stale_lost_tracks", + "line": 426, + "column": 8, + "endLine": 428, + "endColumn": 9, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "unreachable", + "message": "Unreachable code", + "message-id": "W0101" + }, + { + "type": "error", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack._remove_stale_lost_tracks", + "line": 430, + "column": 39, + "endLine": 430, + "endColumn": 56, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "undefined-variable", + "message": "Undefined variable 'activated_starcks'", + "message-id": "E0602" + }, + { + "type": "error", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack._remove_stale_lost_tracks", + "line": 433, + "column": 39, + "endLine": 433, + "endColumn": 53, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "undefined-variable", + "message": "Undefined variable 'refind_stracks'", + "message-id": "E0602" + }, + { + "type": "error", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack._remove_stale_lost_tracks", + "line": 438, + "column": 38, + "endLine": 438, + "endColumn": 50, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "undefined-variable", + "message": "Undefined variable 'lost_stracks'", + "message-id": "E0602" + }, + { + "type": "error", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack._remove_stale_lost_tracks", + "line": 442, + "column": 36, + "endLine": 442, + "endColumn": 51, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "undefined-variable", + "message": "Undefined variable 'removed_stracks'", + "message-id": "E0602" + }, + { + "type": "warning", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack._update_state", + "line": 458, + "column": 8, + "endLine": 458, + "endColumn": 27, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "attribute-defined-outside-init", + "message": "Attribute 'tracked_tracks' defined outside __init__", + "message-id": "W0201" + }, + { + "type": "warning", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack._update_state", + "line": 461, + "column": 8, + "endLine": 461, + "endColumn": 27, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "attribute-defined-outside-init", + "message": "Attribute 'tracked_tracks' defined outside __init__", + "message-id": "W0201" + }, + { + "type": "warning", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack._update_state", + "line": 462, + "column": 8, + "endLine": 462, + "endColumn": 27, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "attribute-defined-outside-init", + "message": "Attribute 'tracked_tracks' defined outside __init__", + "message-id": "W0201" + }, + { + "type": "warning", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack._update_state", + "line": 467, + "column": 8, + "endLine": 467, + "endColumn": 27, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "attribute-defined-outside-init", + "message": "Attribute 'tracked_tracks' defined outside __init__", + "message-id": "W0201" + }, + { + "type": "warning", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack._update_state", + "line": 463, + "column": 8, + "endLine": 463, + "endColumn": 24, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "attribute-defined-outside-init", + "message": "Attribute 'lost_tracks' defined outside __init__", + "message-id": "W0201" + }, + { + "type": "warning", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack._update_state", + "line": 465, + "column": 8, + "endLine": 465, + "endColumn": 24, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "attribute-defined-outside-init", + "message": "Attribute 'lost_tracks' defined outside __init__", + "message-id": "W0201" + }, + { + "type": "warning", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack._update_state", + "line": 467, + "column": 29, + "endLine": 467, + "endColumn": 45, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "attribute-defined-outside-init", + "message": "Attribute 'lost_tracks' defined outside __init__", + "message-id": "W0201" + }, + { + "type": "warning", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack._update_state", + "line": 466, + "column": 8, + "endLine": 466, + "endColumn": 27, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "attribute-defined-outside-init", + "message": "Attribute 'removed_tracks' defined outside __init__", + "message-id": "W0201" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.core", + "obj": "remove_duplicate_tracks", + "line": 518, + "column": 0, + "endLine": 518, + "endColumn": 27, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.kalman_filter", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\tracker\\byte_tracker\\kalman_filter.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.matching", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\tracker\\byte_tracker\\matching.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.matching", + "obj": "indices_to_matches", + "line": 15, + "column": 0, + "endLine": 15, + "endColumn": 22, + "path": "src\\supervision\\tracker\\byte_tracker\\matching.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.matching", + "obj": "linear_assignment", + "line": 27, + "column": 0, + "endLine": 27, + "endColumn": 21, + "path": "src\\supervision\\tracker\\byte_tracker\\matching.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.matching", + "obj": "iou_distance", + "line": 44, + "column": 0, + "endLine": 44, + "endColumn": 16, + "path": "src\\supervision\\tracker\\byte_tracker\\matching.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.matching", + "obj": "fuse_score", + "line": 65, + "column": 0, + "endLine": 65, + "endColumn": 14, + "path": "src\\supervision\\tracker\\byte_tracker\\matching.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "TrackState", + "line": 13, + "column": 0, + "endLine": 13, + "endColumn": 16, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "missing-class-docstring", + "message": "Missing class docstring", + "message-id": "C0115" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "TrackState", + "line": 14, + "column": 4, + "endLine": 14, + "endColumn": 7, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "invalid-name", + "message": "Class constant name \"New\" doesn't conform to UPPER_CASE naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "TrackState", + "line": 15, + "column": 4, + "endLine": 15, + "endColumn": 11, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "invalid-name", + "message": "Class constant name \"Tracked\" doesn't conform to UPPER_CASE naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "TrackState", + "line": 16, + "column": 4, + "endLine": 16, + "endColumn": 8, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "invalid-name", + "message": "Class constant name \"Lost\" doesn't conform to UPPER_CASE naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "TrackState", + "line": 17, + "column": 4, + "endLine": 17, + "endColumn": 11, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "invalid-name", + "message": "Class constant name \"Removed\" doesn't conform to UPPER_CASE naming style", + "message-id": "C0103" + }, + { + "type": "refactor", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "_STrackData", + "line": 21, + "column": 0, + "endLine": 21, + "endColumn": 17, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "too-many-instance-attributes", + "message": "Too many instance attributes (15/7)", + "message-id": "R0902" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "STrack", + "line": 44, + "column": 0, + "endLine": 44, + "endColumn": 12, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "missing-class-docstring", + "message": "Missing class docstring", + "message-id": "C0115" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "STrack.state", + "line": 62, + "column": 4, + "endLine": 62, + "endColumn": 13, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "STrack.is_activated", + "line": 70, + "column": 4, + "endLine": 70, + "endColumn": 20, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "STrack.start_frame", + "line": 78, + "column": 4, + "endLine": 78, + "endColumn": 19, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "STrack.frame_id", + "line": 86, + "column": 4, + "endLine": 86, + "endColumn": 16, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "STrack.kalman_filter", + "line": 94, + "column": 4, + "endLine": 94, + "endColumn": 21, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "STrack.mean", + "line": 102, + "column": 4, + "endLine": 102, + "endColumn": 12, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "STrack.covariance", + "line": 110, + "column": 4, + "endLine": 110, + "endColumn": 18, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "STrack.score", + "line": 118, + "column": 4, + "endLine": 118, + "endColumn": 13, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "STrack.tracklet_len", + "line": 126, + "column": 4, + "endLine": 126, + "endColumn": 20, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "STrack.minimum_consecutive_frames", + "line": 134, + "column": 4, + "endLine": 134, + "endColumn": 34, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "STrack.internal_track_id", + "line": 138, + "column": 4, + "endLine": 138, + "endColumn": 25, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "STrack.external_track_id", + "line": 146, + "column": 4, + "endLine": 146, + "endColumn": 25, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "STrack.predict", + "line": 153, + "column": 4, + "endLine": 153, + "endColumn": 15, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "STrack.multi_predict", + "line": 165, + "column": 4, + "endLine": 165, + "endColumn": 21, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "warning", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "STrack.multi_predict", + "line": 170, + "column": 23, + "endLine": 170, + "endColumn": 31, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "protected-access", + "message": "Access to a protected member _data of a client class", + "message-id": "W0212" + }, + { + "type": "warning", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "STrack.multi_predict", + "line": 171, + "column": 23, + "endLine": 171, + "endColumn": 31, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "protected-access", + "message": "Access to a protected member _data of a client class", + "message-id": "W0212" + }, + { + "type": "warning", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "STrack.multi_predict", + "line": 172, + "column": 34, + "endLine": 172, + "endColumn": 42, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "protected-access", + "message": "Access to a protected member _data of a client class", + "message-id": "W0212" + }, + { + "type": "warning", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "STrack.multi_predict", + "line": 173, + "column": 40, + "endLine": 173, + "endColumn": 48, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "protected-access", + "message": "Access to a protected member _data of a client class", + "message-id": "W0212" + }, + { + "type": "warning", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "STrack.multi_predict", + "line": 174, + "column": 19, + "endLine": 174, + "endColumn": 27, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "protected-access", + "message": "Access to a protected member _data of a client class", + "message-id": "W0212" + }, + { + "type": "warning", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "STrack.multi_predict", + "line": 181, + "column": 16, + "endLine": 181, + "endColumn": 32, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "protected-access", + "message": "Access to a protected member _data of a client class", + "message-id": "W0212" + }, + { + "type": "warning", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "STrack.multi_predict", + "line": 182, + "column": 16, + "endLine": 182, + "endColumn": 32, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "protected-access", + "message": "Access to a protected member _data of a client class", + "message-id": "W0212" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "STrack.re_activate", + "line": 202, + "column": 4, + "endLine": 202, + "endColumn": 19, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "STrack.to_xyah", + "line": 272, + "column": 4, + "endLine": 272, + "endColumn": 15, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "STrack.tlbr_to_tlwh", + "line": 276, + "column": 4, + "endLine": 276, + "endColumn": 20, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "STrack.tlwh_to_tlbr", + "line": 282, + "column": 4, + "endLine": 282, + "endColumn": 20, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "refactor", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "STrack", + "line": 44, + "column": 0, + "endLine": 44, + "endColumn": 12, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "too-many-public-methods", + "message": "Too many public methods (23/20)", + "message-id": "R0904" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.utils", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\tracker\\byte_tracker\\utils.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.utils", + "obj": "IdCounter", + "line": 4, + "column": 0, + "endLine": 4, + "endColumn": 15, + "path": "src\\supervision\\tracker\\byte_tracker\\utils.py", + "symbol": "missing-class-docstring", + "message": "Missing class docstring", + "message-id": "C0115" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.utils", + "obj": "IdCounter.NO_ID", + "line": 36, + "column": 4, + "endLine": 36, + "endColumn": 13, + "path": "src\\supervision\\tracker\\byte_tracker\\utils.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.utils", + "obj": "IdCounter.NO_ID", + "line": 36, + "column": 4, + "endLine": 36, + "endColumn": 13, + "path": "src\\supervision\\tracker\\byte_tracker\\utils.py", + "symbol": "invalid-name", + "message": "Attribute name \"NO_ID\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.utils.conversion", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\utils\\conversion.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.utils.conversion", + "obj": "ensure_cv2_image_for_annotation", + "line": 48, + "column": 0, + "endLine": 48, + "endColumn": 35, + "path": "src\\supervision\\utils\\conversion.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.utils.conversion", + "obj": "ensure_pil_image_for_annotation", + "line": 110, + "column": 0, + "endLine": 110, + "endColumn": 35, + "path": "src\\supervision\\utils\\conversion.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.utils.conversion", + "obj": "ensure_cv2_image_for_processing", + "line": 121, + "column": 0, + "endLine": 121, + "endColumn": 35, + "path": "src\\supervision\\utils\\conversion.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "error", + "module": "supervision.utils.conversion", + "obj": "pillow_to_cv2", + "line": 160, + "column": 12, + "endLine": 160, + "endColumn": 24, + "path": "src\\supervision\\utils\\conversion.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'cvtColor' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.conversion", + "obj": "pillow_to_cv2", + "line": 160, + "column": 32, + "endLine": 160, + "endColumn": 49, + "path": "src\\supervision\\utils\\conversion.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'COLOR_RGB2BGR' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.conversion", + "obj": "cv2_to_pillow", + "line": 177, + "column": 12, + "endLine": 177, + "endColumn": 24, + "path": "src\\supervision\\utils\\conversion.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'cvtColor' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.conversion", + "obj": "cv2_to_pillow", + "line": 177, + "column": 32, + "endLine": 177, + "endColumn": 49, + "path": "src\\supervision\\utils\\conversion.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'COLOR_BGR2RGB' member", + "message-id": "E1101" + }, + { + "type": "convention", + "module": "supervision.utils.file", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\utils\\file.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.utils.file", + "obj": "NumpyJsonEncoder", + "line": 11, + "column": 0, + "endLine": 11, + "endColumn": 22, + "path": "src\\supervision\\utils\\file.py", + "symbol": "missing-class-docstring", + "message": "Missing class docstring", + "message-id": "C0115" + }, + { + "type": "warning", + "module": "supervision.utils.file", + "obj": "NumpyJsonEncoder.default", + "line": 12, + "column": 4, + "endLine": 12, + "endColumn": 15, + "path": "src\\supervision\\utils\\file.py", + "symbol": "arguments-renamed", + "message": "Parameter 'o' has been renamed to 'obj' in overriding 'NumpyJsonEncoder.default' method", + "message-id": "W0237" + }, + { + "type": "warning", + "module": "supervision.utils.file", + "obj": "read_txt_file", + "line": 120, + "column": 9, + "endLine": 120, + "endColumn": 29, + "path": "src\\supervision\\utils\\file.py", + "symbol": "unspecified-encoding", + "message": "Using open without explicitly specifying an encoding", + "message-id": "W1514" + }, + { + "type": "warning", + "module": "supervision.utils.file", + "obj": "save_text_file", + "line": 137, + "column": 9, + "endLine": 137, + "endColumn": 34, + "path": "src\\supervision\\utils\\file.py", + "symbol": "unspecified-encoding", + "message": "Using open without explicitly specifying an encoding", + "message-id": "W1514" + }, + { + "type": "warning", + "module": "supervision.utils.file", + "obj": "read_json_file", + "line": 166, + "column": 9, + "endLine": 166, + "endColumn": 29, + "path": "src\\supervision\\utils\\file.py", + "symbol": "unspecified-encoding", + "message": "Using open without explicitly specifying an encoding", + "message-id": "W1514" + }, + { + "type": "warning", + "module": "supervision.utils.file", + "obj": "save_json_file", + "line": 182, + "column": 9, + "endLine": 182, + "endColumn": 34, + "path": "src\\supervision\\utils\\file.py", + "symbol": "unspecified-encoding", + "message": "Using open without explicitly specifying an encoding", + "message-id": "W1514" + }, + { + "type": "warning", + "module": "supervision.utils.file", + "obj": "read_yaml_file", + "line": 196, + "column": 9, + "endLine": 196, + "endColumn": 29, + "path": "src\\supervision\\utils\\file.py", + "symbol": "unspecified-encoding", + "message": "Using open without explicitly specifying an encoding", + "message-id": "W1514" + }, + { + "type": "warning", + "module": "supervision.utils.file", + "obj": "save_yaml_file", + "line": 210, + "column": 9, + "endLine": 210, + "endColumn": 34, + "path": "src\\supervision\\utils\\file.py", + "symbol": "unspecified-encoding", + "message": "Using open without explicitly specifying an encoding", + "message-id": "W1514" + }, + { + "type": "convention", + "module": "supervision.utils.image", + "obj": "", + "line": 75, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\utils\\image.py", + "symbol": "line-too-long", + "message": "Line too long (125/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.utils.image", + "obj": "", + "line": 133, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\utils\\image.py", + "symbol": "line-too-long", + "message": "Line too long (127/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.utils.image", + "obj": "", + "line": 191, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\utils\\image.py", + "symbol": "line-too-long", + "message": "Line too long (129/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.utils.image", + "obj": "", + "line": 253, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\utils\\image.py", + "symbol": "line-too-long", + "message": "Line too long (135/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.utils.image", + "obj": "", + "line": 390, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\utils\\image.py", + "symbol": "line-too-long", + "message": "Line too long (125/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.utils.image", + "obj": "", + "line": 428, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\utils\\image.py", + "symbol": "line-too-long", + "message": "Line too long (135/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.utils.image", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\utils\\image.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "error", + "module": "supervision.utils.image", + "obj": "scale_image", + "line": 142, + "column": 11, + "endLine": 142, + "endColumn": 21, + "path": "src\\supervision\\utils\\image.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'resize' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.image", + "obj": "scale_image", + "line": 142, + "column": 68, + "endLine": 142, + "endColumn": 84, + "path": "src\\supervision\\utils\\image.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'INTER_LINEAR' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.image", + "obj": "resize_image", + "line": 206, + "column": 11, + "endLine": 206, + "endColumn": 21, + "path": "src\\supervision\\utils\\image.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'resize' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.image", + "obj": "resize_image", + "line": 206, + "column": 68, + "endLine": 206, + "endColumn": 84, + "path": "src\\supervision\\utils\\image.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'INTER_LINEAR' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.image", + "obj": "letterbox_image", + "line": 265, + "column": 25, + "endLine": 265, + "endColumn": 43, + "path": "src\\supervision\\utils\\image.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'copyMakeBorder' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.image", + "obj": "letterbox_image", + "line": 271, + "column": 8, + "endLine": 271, + "endColumn": 27, + "path": "src\\supervision\\utils\\image.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'BORDER_CONSTANT' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.utils.image", + "obj": "overlay_image", + "line": 283, + "column": 0, + "endLine": 283, + "endColumn": 17, + "path": "src\\supervision\\utils\\image.py", + "symbol": "too-many-locals", + "message": "Too many local variables (25/15)", + "message-id": "R0914" + }, + { + "type": "error", + "module": "supervision.utils.image", + "obj": "overlay_image", + "line": 317, + "column": 32, + "endLine": 317, + "endColumn": 43, + "path": "src\\supervision\\utils\\image.py", + "symbol": "no-member", + "message": "Module 'supervision.utils.image' has no 'shape' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.image", + "obj": "overlay_image", + "line": 338, + "column": 25, + "endLine": 338, + "endColumn": 34, + "path": "src\\supervision\\utils\\image.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'split' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.image", + "obj": "overlay_image", + "line": 342, + "column": 24, + "endLine": 342, + "endColumn": 33, + "path": "src\\supervision\\utils\\image.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'merge' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.image", + "obj": "overlay_image", + "line": 344, + "column": 14, + "endLine": 344, + "endColumn": 19, + "path": "src\\supervision\\utils\\image.py", + "symbol": "unsubscriptable-object", + "message": "Value 'image' is unsubscriptable", + "message-id": "E1136" + }, + { + "type": "error", + "module": "supervision.utils.image", + "obj": "overlay_image", + "line": 346, + "column": 8, + "endLine": 346, + "endColumn": 13, + "path": "src\\supervision\\utils\\image.py", + "symbol": "unsupported-assignment-operation", + "message": "'image' does not support item assignment", + "message-id": "E1137" + }, + { + "type": "error", + "module": "supervision.utils.image", + "obj": "overlay_image", + "line": 348, + "column": 8, + "endLine": 348, + "endColumn": 13, + "path": "src\\supervision\\utils\\image.py", + "symbol": "unsupported-assignment-operation", + "message": "'image' does not support item assignment", + "message-id": "E1137" + }, + { + "type": "error", + "module": "supervision.utils.image", + "obj": "tint_image", + "line": 397, + "column": 4, + "endLine": 397, + "endColumn": 19, + "path": "src\\supervision\\utils\\image.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'addWeighted' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.image", + "obj": "grayscale_image", + "line": 430, + "column": 17, + "endLine": 430, + "endColumn": 29, + "path": "src\\supervision\\utils\\image.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'cvtColor' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.image", + "obj": "grayscale_image", + "line": 430, + "column": 37, + "endLine": 430, + "endColumn": 55, + "path": "src\\supervision\\utils\\image.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'COLOR_BGR2GRAY' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.image", + "obj": "grayscale_image", + "line": 431, + "column": 11, + "endLine": 431, + "endColumn": 23, + "path": "src\\supervision\\utils\\image.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'cvtColor' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.image", + "obj": "grayscale_image", + "line": 431, + "column": 36, + "endLine": 431, + "endColumn": 54, + "path": "src\\supervision\\utils\\image.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'COLOR_GRAY2BGR' member", + "message-id": "E1101" + }, + { + "type": "convention", + "module": "supervision.utils.image", + "obj": "ImageSink", + "line": 481, + "column": 0, + "endLine": 481, + "endColumn": 15, + "path": "src\\supervision\\utils\\image.py", + "symbol": "missing-class-docstring", + "message": "Missing class docstring", + "message-id": "C0115" + }, + { + "type": "error", + "module": "supervision.utils.image", + "obj": "ImageSink.save_image", + "line": 548, + "column": 8, + "endLine": 548, + "endColumn": 19, + "path": "src\\supervision\\utils\\image.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'imwrite' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.utils.image", + "obj": "create_tiles", + "line": 565, + "column": 0, + "endLine": 565, + "endColumn": 16, + "path": "src\\supervision\\utils\\image.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (16/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.utils.image", + "obj": "create_tiles", + "line": 565, + "column": 0, + "endLine": 565, + "endColumn": 16, + "path": "src\\supervision\\utils\\image.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (16/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.utils.image", + "obj": "create_tiles", + "line": 565, + "column": 0, + "endLine": 565, + "endColumn": 16, + "path": "src\\supervision\\utils\\image.py", + "symbol": "too-many-locals", + "message": "Too many local variables (20/15)", + "message-id": "R0914" + }, + { + "type": "error", + "module": "supervision.utils.image", + "obj": "create_tiles", + "line": 580, + "column": 28, + "endLine": 580, + "endColumn": 52, + "path": "src\\supervision\\utils\\image.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'FONT_HERSHEY_SIMPLEX' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.utils.image", + "obj": "_generate_tiles", + "line": 767, + "column": 0, + "endLine": 767, + "endColumn": 19, + "path": "src\\supervision\\utils\\image.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (15/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.utils.image", + "obj": "_generate_tiles", + "line": 767, + "column": 0, + "endLine": 767, + "endColumn": 19, + "path": "src\\supervision\\utils\\image.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (15/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.utils.image", + "obj": "_generate_tiles", + "line": 767, + "column": 0, + "endLine": 767, + "endColumn": 19, + "path": "src\\supervision\\utils\\image.py", + "symbol": "too-many-locals", + "message": "Too many local variables (18/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.utils.image", + "obj": "_draw_texts", + "line": 816, + "column": 0, + "endLine": 816, + "endColumn": 15, + "path": "src\\supervision\\utils\\image.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (10/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.utils.image", + "obj": "_draw_texts", + "line": 816, + "column": 0, + "endLine": 816, + "endColumn": 15, + "path": "src\\supervision\\utils\\image.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (10/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.utils.image", + "obj": "_draw_texts", + "line": 816, + "column": 0, + "endLine": 816, + "endColumn": 15, + "path": "src\\supervision\\utils\\image.py", + "symbol": "too-many-locals", + "message": "Too many local variables (18/15)", + "message-id": "R0914" + }, + { + "type": "convention", + "module": "supervision.utils.internal", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\utils\\internal.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "warning", + "module": "supervision.utils.internal", + "obj": "SupervisionWarnings", + "line": 18, + "column": 4, + "endLine": 18, + "endColumn": 8, + "path": "src\\supervision\\utils\\internal.py", + "symbol": "unnecessary-pass", + "message": "Unnecessary pass statement", + "message-id": "W0107" + }, + { + "type": "warning", + "module": "supervision.utils.internal", + "obj": "format_warning", + "line": 24, + "column": 4, + "endLine": 24, + "endColumn": 17, + "path": "src\\supervision\\utils\\internal.py", + "symbol": "unused-argument", + "message": "Unused argument 'filename'", + "message-id": "W0613" + }, + { + "type": "warning", + "module": "supervision.utils.internal", + "obj": "format_warning", + "line": 25, + "column": 4, + "endLine": 25, + "endColumn": 15, + "path": "src\\supervision\\utils\\internal.py", + "symbol": "unused-argument", + "message": "Unused argument 'lineno'", + "message-id": "W0613" + }, + { + "type": "warning", + "module": "supervision.utils.internal", + "obj": "format_warning", + "line": 26, + "column": 4, + "endLine": 26, + "endColumn": 20, + "path": "src\\supervision\\utils\\internal.py", + "symbol": "unused-argument", + "message": "Unused argument 'line'", + "message-id": "W0613" + }, + { + "type": "convention", + "module": "supervision.utils.internal", + "obj": "classproperty", + "line": 133, + "column": 0, + "endLine": 133, + "endColumn": 19, + "path": "src\\supervision\\utils\\internal.py", + "symbol": "invalid-name", + "message": "Class name \"classproperty\" doesn't conform to PascalCase naming style", + "message-id": "C0103" + }, + { + "type": "refactor", + "module": "supervision.utils.internal", + "obj": "classproperty", + "line": 133, + "column": 0, + "endLine": 133, + "endColumn": 19, + "path": "src\\supervision\\utils\\internal.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "convention", + "module": "supervision.utils.iterables", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\utils\\iterables.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.utils.logger", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\utils\\logger.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.utils.notebook", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\utils\\notebook.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "error", + "module": "supervision.utils.notebook", + "obj": "plot_image", + "line": 44, + "column": 19, + "endLine": 44, + "endColumn": 31, + "path": "src\\supervision\\utils\\notebook.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'cvtColor' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.notebook", + "obj": "plot_image", + "line": 44, + "column": 39, + "endLine": 44, + "endColumn": 56, + "path": "src\\supervision\\utils\\notebook.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'COLOR_BGR2RGB' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.notebook", + "obj": "plot_images_grid", + "line": 111, + "column": 26, + "endLine": 111, + "endColumn": 38, + "path": "src\\supervision\\utils\\notebook.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'cvtColor' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.notebook", + "obj": "plot_images_grid", + "line": 111, + "column": 52, + "endLine": 111, + "endColumn": 69, + "path": "src\\supervision\\utils\\notebook.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'COLOR_BGR2RGB' member", + "message-id": "E1101" + }, + { + "type": "convention", + "module": "supervision.utils.video", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\utils\\video.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.utils.video", + "obj": "VideoInfo.from_video_path", + "line": 59, + "column": 4, + "endLine": 59, + "endColumn": 23, + "path": "src\\supervision\\utils\\video.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "error", + "module": "supervision.utils.video", + "obj": "VideoInfo.from_video_path", + "line": 60, + "column": 16, + "endLine": 60, + "endColumn": 32, + "path": "src\\supervision\\utils\\video.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'VideoCapture' member", + "message-id": "E1101" + }, + { + "type": "warning", + "module": "supervision.utils.video", + "obj": "VideoInfo.from_video_path", + "line": 62, + "column": 12, + "endLine": 62, + "endColumn": 68, + "path": "src\\supervision\\utils\\video.py", + "symbol": "broad-exception-raised", + "message": "Raising too general exception: Exception", + "message-id": "W0719" + }, + { + "type": "error", + "module": "supervision.utils.video", + "obj": "VideoInfo.from_video_path", + "line": 64, + "column": 30, + "endLine": 64, + "endColumn": 54, + "path": "src\\supervision\\utils\\video.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'CAP_PROP_FRAME_WIDTH' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.video", + "obj": "VideoInfo.from_video_path", + "line": 65, + "column": 31, + "endLine": 65, + "endColumn": 56, + "path": "src\\supervision\\utils\\video.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'CAP_PROP_FRAME_HEIGHT' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.video", + "obj": "VideoInfo.from_video_path", + "line": 66, + "column": 30, + "endLine": 66, + "endColumn": 46, + "path": "src\\supervision\\utils\\video.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'CAP_PROP_FPS' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.video", + "obj": "VideoInfo.from_video_path", + "line": 67, + "column": 37, + "endLine": 67, + "endColumn": 61, + "path": "src\\supervision\\utils\\video.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'CAP_PROP_FRAME_COUNT' member", + "message-id": "E1101" + }, + { + "type": "convention", + "module": "supervision.utils.video", + "obj": "VideoInfo.resolution_wh", + "line": 72, + "column": 4, + "endLine": 72, + "endColumn": 21, + "path": "src\\supervision\\utils\\video.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "error", + "module": "supervision.utils.video", + "obj": "VideoSink.__enter__", + "line": 107, + "column": 28, + "endLine": 107, + "endColumn": 50, + "path": "src\\supervision\\utils\\video.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'VideoWriter_fourcc' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.video", + "obj": "VideoSink.__enter__", + "line": 110, + "column": 28, + "endLine": 110, + "endColumn": 50, + "path": "src\\supervision\\utils\\video.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'VideoWriter_fourcc' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.video", + "obj": "VideoSink.__enter__", + "line": 111, + "column": 24, + "endLine": 111, + "endColumn": 39, + "path": "src\\supervision\\utils\\video.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'VideoWriter' member", + "message-id": "E1101" + }, + { + "type": "warning", + "module": "supervision.utils.video", + "obj": "VideoSink.__enter__", + "line": 107, + "column": 12, + "endLine": 107, + "endColumn": 25, + "path": "src\\supervision\\utils\\video.py", + "symbol": "attribute-defined-outside-init", + "message": "Attribute '__fourcc' defined outside __init__", + "message-id": "W0201" + }, + { + "type": "warning", + "module": "supervision.utils.video", + "obj": "VideoSink.__enter__", + "line": 110, + "column": 12, + "endLine": 110, + "endColumn": 25, + "path": "src\\supervision\\utils\\video.py", + "symbol": "attribute-defined-outside-init", + "message": "Attribute '__fourcc' defined outside __init__", + "message-id": "W0201" + }, + { + "type": "warning", + "module": "supervision.utils.video", + "obj": "_mux_audio", + "line": 198, + "column": 11, + "endLine": 198, + "endColumn": 20, + "path": "src\\supervision\\utils\\video.py", + "symbol": "broad-exception-caught", + "message": "Catching too general exception Exception", + "message-id": "W0718" + }, + { + "type": "warning", + "module": "supervision.utils.video", + "obj": "_mux_audio", + "line": 162, + "column": 17, + "endLine": 187, + "endColumn": 9, + "path": "src\\supervision\\utils\\video.py", + "symbol": "subprocess-run-check", + "message": "'subprocess.run' used without explicitly defining the value for 'check'.", + "message-id": "W1510" + }, + { + "type": "error", + "module": "supervision.utils.video", + "obj": "_validate_and_setup_video", + "line": 210, + "column": 12, + "endLine": 210, + "endColumn": 28, + "path": "src\\supervision\\utils\\video.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'VideoCapture' member", + "message-id": "E1101" + }, + { + "type": "warning", + "module": "supervision.utils.video", + "obj": "_validate_and_setup_video", + "line": 212, + "column": 8, + "endLine": 212, + "endColumn": 65, + "path": "src\\supervision\\utils\\video.py", + "symbol": "broad-exception-raised", + "message": "Raising too general exception: Exception", + "message-id": "W0719" + }, + { + "type": "error", + "module": "supervision.utils.video", + "obj": "_validate_and_setup_video", + "line": 213, + "column": 33, + "endLine": 213, + "endColumn": 57, + "path": "src\\supervision\\utils\\video.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'CAP_PROP_FRAME_COUNT' member", + "message-id": "E1101" + }, + { + "type": "warning", + "module": "supervision.utils.video", + "obj": "_validate_and_setup_video", + "line": 215, + "column": 8, + "endLine": 215, + "endColumn": 56, + "path": "src\\supervision\\utils\\video.py", + "symbol": "broad-exception-raised", + "message": "Raising too general exception: Exception", + "message-id": "W0719" + }, + { + "type": "error", + "module": "supervision.utils.video", + "obj": "_validate_and_setup_video", + "line": 226, + "column": 18, + "endLine": 226, + "endColumn": 41, + "path": "src\\supervision\\utils\\video.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'CAP_PROP_POS_FRAMES' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.utils.video", + "obj": "_VideoProcessor", + "line": 283, + "column": 0, + "endLine": 283, + "endColumn": 21, + "path": "src\\supervision\\utils\\video.py", + "symbol": "too-many-instance-attributes", + "message": "Too many instance attributes (16/7)", + "message-id": "R0902" + }, + { + "type": "refactor", + "module": "supervision.utils.video", + "obj": "_VideoProcessor.__init__", + "line": 284, + "column": 4, + "endLine": 284, + "endColumn": 16, + "path": "src\\supervision\\utils\\video.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (9/5)", + "message-id": "R0913" + }, + { + "type": "warning", + "module": "supervision.utils.video", + "obj": "_VideoProcessor._process_frames", + "line": 397, + "column": 19, + "endLine": 397, + "endColumn": 28, + "path": "src\\supervision\\utils\\video.py", + "symbol": "broad-exception-caught", + "message": "Catching too general exception Exception", + "message-id": "W0718" + }, + { + "type": "convention", + "module": "supervision.utils.video", + "obj": "_VideoProcessor.run", + "line": 401, + "column": 4, + "endLine": 401, + "endColumn": 11, + "path": "src\\supervision\\utils\\video.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "refactor", + "module": "supervision.utils.video", + "obj": "_VideoProcessor", + "line": 283, + "column": 0, + "endLine": 283, + "endColumn": 21, + "path": "src\\supervision\\utils\\video.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.utils.video", + "obj": "process_video", + "line": 424, + "column": 0, + "endLine": 424, + "endColumn": 17, + "path": "src\\supervision\\utils\\video.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (9/5)", + "message-id": "R0913" + }, + { + "type": "convention", + "module": "supervision.validators", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.validators", + "obj": "validate_xyxy", + "line": 33, + "column": 0, + "endLine": 33, + "endColumn": 17, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.validators", + "obj": "validate_mask", + "line": 80, + "column": 0, + "endLine": 80, + "endColumn": 17, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.validators", + "obj": "validate_class_id", + "line": 102, + "column": 0, + "endLine": 102, + "endColumn": 21, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.validators", + "obj": "validate_confidence", + "line": 125, + "column": 0, + "endLine": 125, + "endColumn": 23, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.validators", + "obj": "validate_key_point_confidence", + "line": 156, + "column": 0, + "endLine": 156, + "endColumn": 33, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.validators", + "obj": "validate_keypoint_confidence", + "line": 165, + "column": 0, + "endLine": 165, + "endColumn": 32, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.validators", + "obj": "validate_tracker_id", + "line": 187, + "column": 0, + "endLine": 187, + "endColumn": 23, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "refactor", + "module": "supervision.validators", + "obj": "_validate_data", + "line": 197, + "column": 12, + "endLine": 202, + "endColumn": 17, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "no-else-raise", + "message": "Unnecessary \"elif\" after \"raise\", remove the leading \"el\" from \"elif\"", + "message-id": "R1720" + }, + { + "type": "convention", + "module": "supervision.validators", + "obj": "validate_data", + "line": 212, + "column": 0, + "endLine": 212, + "endColumn": 17, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.validators", + "obj": "validate_xy", + "line": 232, + "column": 0, + "endLine": 232, + "endColumn": 15, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "refactor", + "module": "supervision.validators", + "obj": "_validate_detections_fields", + "line": 259, + "column": 0, + "endLine": 259, + "endColumn": 31, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (6/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.validators", + "obj": "_validate_detections_fields", + "line": 259, + "column": 0, + "endLine": 259, + "endColumn": 31, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (6/5)", + "message-id": "R0917" + }, + { + "type": "convention", + "module": "supervision.validators", + "obj": "validate_detections_fields", + "line": 281, + "column": 0, + "endLine": 281, + "endColumn": 30, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "refactor", + "module": "supervision.validators", + "obj": "_validate_keypoints_fields", + "line": 292, + "column": 0, + "endLine": 292, + "endColumn": 30, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (6/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.validators", + "obj": "_validate_keypoints_fields", + "line": 292, + "column": 0, + "endLine": 292, + "endColumn": 30, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (6/5)", + "message-id": "R0917" + }, + { + "type": "convention", + "module": "supervision.validators", + "obj": "validate_key_points_fields", + "line": 317, + "column": 0, + "endLine": 317, + "endColumn": 30, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.validators", + "obj": "validate_keypoints_fields", + "line": 328, + "column": 0, + "endLine": 328, + "endColumn": 29, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.validators", + "obj": "validate_resolution", + "line": 362, + "column": 0, + "endLine": 362, + "endColumn": 23, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[78:229]\n==supervision.metrics.precision:[389:540]\n self._metric_target = metric_target\n self.averaging_method = averaging_method\n\n self._predictions_list: list[Detections] = []\n self._targets_list: list[Detections] = []\n\n def reset(self) -> None:\n \"\"\"\n Reset the metric to its initial state, clearing all stored data.\n \"\"\"\n self._predictions_list = []\n self._targets_list = []\n\n def update(\n self,\n predictions: Detections | list[Detections],\n targets: Detections | list[Detections],\n ) -> F1Score:\n \"\"\"\n Add new predictions and targets to the metric, but do not compute the result.\n\n Args:\n predictions: The predicted detections.\n targets: The target detections.\n\n Returns:\n The updated metric instance.\n \"\"\"\n if not isinstance(predictions, list):\n predictions = [predictions]\n if not isinstance(targets, list):\n targets = [targets]\n\n if len(predictions) != len(targets):\n raise ValueError(\n f\"The number of predictions ({len(predictions)}) and\"\n f\" targets ({len(targets)}) during the update must be the same.\"\n )\n\n self._predictions_list.extend(predictions)\n self._targets_list.extend(targets)\n\n return self\n\n def compute(self) -> F1ScoreResult:\n \"\"\"\n Calculate the F1 score metric based on the stored predictions and ground-truth\n data, at different IoU thresholds.\n\n Returns:\n The F1 score metric result.\n \"\"\"\n result = self._compute(self._predictions_list, self._targets_list)\n\n small_predictions, small_targets = self._filter_predictions_and_targets_by_size(\n self._predictions_list, self._targets_list, ObjectSizeCategory.SMALL\n )\n result.small_objects = self._compute(small_predictions, small_targets)\n\n medium_predictions, medium_targets = (\n self._filter_predictions_and_targets_by_size(\n self._predictions_list, self._targets_list, ObjectSizeCategory.MEDIUM\n )\n )\n result.medium_objects = self._compute(medium_predictions, medium_targets)\n\n large_predictions, large_targets = self._filter_predictions_and_targets_by_size(\n self._predictions_list, self._targets_list, ObjectSizeCategory.LARGE\n )\n result.large_objects = self._compute(large_predictions, large_targets)\n\n return result\n\n def _compute(\n self, predictions_list: list[Detections], targets_list: list[Detections]\n ) -> F1ScoreResult:\n \"\"\"Build per-image stats tuples and delegate to class-level computation.\n\n Each stats tuple is ``(matches, confidence, class_ids, true_class_ids)``:\n - Both empty: skip (no information).\n - Targets empty, predictions present: all predictions are FPs; true_class_ids\n is ``zeros((0,))``.\n - Targets present: IoU matching produces ``matches`` array.\n \"\"\"\n iou_thresholds = np.linspace(0.5, 0.95, 10)\n stats: list[Any] = []\n\n for predictions, targets in zip(predictions_list, targets_list):\n prediction_contents = self._detections_content(predictions)\n target_contents = self._detections_content(targets)\n\n if len(targets) == 0 and len(predictions) > 0:\n # Only predictions are present (e.g. a background image); every\n # prediction is a false positive.\n if predictions.class_id is None or predictions.confidence is None:\n continue\n stats.append(\n (\n np.zeros(\n (len(predictions), iou_thresholds.size), dtype=np.bool_\n ),\n predictions.confidence,\n predictions.class_id,\n np.zeros((0,), dtype=np.int32),\n )\n )\n elif len(targets) > 0:\n if len(predictions) == 0:\n stats.append(\n (\n np.zeros((0, iou_thresholds.size), dtype=bool),\n np.zeros((0,), dtype=np.float32),\n np.zeros((0,), dtype=int),\n targets.class_id,\n )\n )\n\n else:\n if self._metric_target == MetricTarget.BOXES:\n iou = box_iou_batch(target_contents, prediction_contents)\n elif self._metric_target == MetricTarget.MASKS:\n iou = mask_iou_batch(target_contents, prediction_contents)\n elif self._metric_target == MetricTarget.ORIENTED_BOUNDING_BOXES:\n iou = oriented_box_iou_batch(\n target_contents, prediction_contents\n )\n else:\n raise ValueError(\n \"Unsupported metric target for IoU calculation\"\n )\n\n matches = self._match_detection_batch(\n predictions.class_id\n if predictions.class_id is not None\n else np.array([]),\n targets.class_id\n if targets.class_id is not None\n else np.array([]),\n iou,\n iou_thresholds,\n )\n stats.append(\n (\n matches,\n predictions.confidence,\n predictions.class_id,\n targets.class_id,\n )\n )\n\n if not stats:", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[429:504]\n==supervision.metrics.mean_average_recall:[717:793]\n if self._metric_target == MetricTarget.BOXES:\n result_boxes: npt.NDArray[np.float32] = detections.xyxy\n return result_boxes\n if self._metric_target == MetricTarget.MASKS:\n if detections.mask is not None:\n result_masks: npt.NDArray[np.bool_] = detections.mask\n return result_masks\n return self._make_empty_content()\n if self._metric_target == MetricTarget.ORIENTED_BOUNDING_BOXES:\n obb = detections.data.get(ORIENTED_BOX_COORDINATES)\n if obb is not None and len(obb) > 0:\n result_obb: npt.NDArray[np.float32] = np.array(obb, dtype=np.float32)\n return result_obb\n return self._make_empty_content()\n raise ValueError(f\"Invalid metric target: {self._metric_target}\")\n\n def _make_empty_content(self) -> npt.NDArray[Any]:\n if self._metric_target == MetricTarget.BOXES:\n empty_boxes: npt.NDArray[np.float32] = np.empty((0, 4), dtype=np.float32)\n return empty_boxes\n if self._metric_target == MetricTarget.MASKS:\n empty_masks: npt.NDArray[np.bool_] = np.empty((0, 0, 0), dtype=bool)\n return empty_masks\n if self._metric_target == MetricTarget.ORIENTED_BOUNDING_BOXES:\n empty_obb: npt.NDArray[np.float32] = np.empty((0, 4, 2), dtype=np.float32)\n return empty_obb\n raise ValueError(f\"Invalid metric target: {self._metric_target}\")\n\n def _filter_detections_by_size(\n self, detections: Detections, size_category: ObjectSizeCategory\n ) -> Detections:\n \"\"\"Return a copy of detections with contents filtered by object size.\"\"\"\n new_detections = deepcopy(detections)\n if detections.is_empty() or size_category == ObjectSizeCategory.ANY:\n return new_detections\n\n sizes = get_detection_size_category(new_detections, self._metric_target)\n size_mask = sizes == size_category.value\n\n new_detections.xyxy = new_detections.xyxy[size_mask]\n if new_detections.mask is not None:\n new_detections.mask = new_detections.mask[size_mask]\n if new_detections.class_id is not None:\n new_detections.class_id = new_detections.class_id[size_mask]\n if new_detections.confidence is not None:\n new_detections.confidence = new_detections.confidence[size_mask]\n if new_detections.tracker_id is not None:\n new_detections.tracker_id = new_detections.tracker_id[size_mask]\n if new_detections.data is not None:\n for key, value in new_detections.data.items():\n new_detections.data[key] = np.array(value)[size_mask]\n\n return new_detections\n\n def _filter_predictions_and_targets_by_size(\n self,\n predictions_list: list[Detections],\n targets_list: list[Detections],\n size_category: ObjectSizeCategory,\n ) -> tuple[list[Detections], list[Detections]]:\n \"\"\"\n Filter predictions and targets by object size category.\n \"\"\"\n new_predictions_list = []\n new_targets_list = []\n for predictions, targets in zip(predictions_list, targets_list):\n new_predictions_list.append(\n self._filter_detections_by_size(predictions, size_category)\n )\n new_targets_list.append(\n self._filter_detections_by_size(targets, size_category)\n )\n return new_predictions_list, new_targets_list\n\n", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[314:394]\n==supervision.metrics.precision:[633:711]\n num_predictions, num_iou_levels = (\n predictions_classes.shape[0],\n iou_thresholds.shape[0],\n )\n correct = np.zeros((num_predictions, num_iou_levels), dtype=bool)\n correct_class = target_classes[:, None] == predictions_classes\n\n for i, iou_level in enumerate(iou_thresholds):\n matched_indices = np.where((iou >= iou_level) & correct_class)\n\n if matched_indices[0].shape[0]:\n combined_indices = np.stack(matched_indices, axis=1)\n iou_values = iou[matched_indices][:, None]\n matches = np.hstack([combined_indices, iou_values])\n\n if matched_indices[0].shape[0] > 1:\n matches = matches[matches[:, 2].argsort()[::-1]]\n matches = matches[np.unique(matches[:, 1], return_index=True)[1]]\n matches = matches[np.unique(matches[:, 0], return_index=True)[1]]\n\n correct[matches[:, 1].astype(int), i] = True\n result_correct: npt.NDArray[np.bool_] = correct\n return result_correct\n\n @staticmethod\n def _compute_confusion_matrix(\n sorted_matches: npt.NDArray[np.bool_],\n sorted_prediction_class_ids: npt.NDArray[np.int32],\n unique_classes: npt.NDArray[np.int32],\n class_counts: npt.NDArray[np.int32],\n ) -> npt.NDArray[np.float64]:\n \"\"\"\n Compute the confusion matrix for each class and IoU threshold.\n\n Assumes the matches and prediction_class_ids are sorted by confidence\n in descending order.\n\n Args:\n sorted_matches: shape (P, Th), that is True\n if the prediction is a true positive at the given IoU threshold.\n sorted_prediction_class_ids: shape (P,), containing\n the class id for each prediction.\n unique_classes: shape (C,), containing the unique\n class ids.\n class_counts: shape (C,), containing the number\n of true instances for each class.\n\n Returns:\n shape (C, Th, 3), containing the true positives, false\n positives, and false negatives for each class and IoU threshold.\n \"\"\"\n\n num_thresholds = sorted_matches.shape[1]\n num_classes = unique_classes.shape[0]\n\n confusion_matrix: npt.NDArray[np.float64] = np.zeros(\n (num_classes, num_thresholds, 3), dtype=np.float64\n )\n for class_idx, class_id in enumerate(unique_classes):\n is_class = sorted_prediction_class_ids == class_id\n num_true = class_counts[class_idx]\n num_predictions = is_class.sum()\n\n if num_predictions == 0:\n true_positives = np.zeros(num_thresholds)\n false_positives = np.zeros(num_thresholds)\n false_negatives = np.full(num_thresholds, num_true)\n elif num_true == 0:\n true_positives = np.zeros(num_thresholds)\n false_positives = np.full(num_thresholds, num_predictions)\n false_negatives = np.zeros(num_thresholds)\n else:\n true_positives = sorted_matches[is_class].sum(0)\n false_positives = (1 - sorted_matches[is_class]).sum(0)\n false_negatives = num_true - true_positives\n confusion_matrix[class_idx] = np.stack(\n [true_positives, false_positives, false_negatives], axis=1\n )", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[185:229]\n==supervision.metrics.recall:[295:339]\n if len(predictions) == 0:\n stats.append(\n (\n np.zeros((0, iou_thresholds.size), dtype=bool),\n np.zeros((0,), dtype=np.float32),\n np.zeros((0,), dtype=int),\n targets.class_id,\n )\n )\n\n else:\n if self._metric_target == MetricTarget.BOXES:\n iou = box_iou_batch(target_contents, prediction_contents)\n elif self._metric_target == MetricTarget.MASKS:\n iou = mask_iou_batch(target_contents, prediction_contents)\n elif self._metric_target == MetricTarget.ORIENTED_BOUNDING_BOXES:\n iou = oriented_box_iou_batch(\n target_contents, prediction_contents\n )\n else:\n raise ValueError(\n \"Unsupported metric target for IoU calculation\"\n )\n\n matches = self._match_detection_batch(\n predictions.class_id\n if predictions.class_id is not None\n else np.array([]),\n targets.class_id\n if targets.class_id is not None\n else np.array([]),\n iou,\n iou_thresholds,\n )\n stats.append(\n (\n matches,\n predictions.confidence,\n predictions.class_id,\n targets.class_id,\n )\n )\n\n if not stats:", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.mean_average_recall:[404:482]\n==supervision.metrics.recall:[221:299]\n self._predictions_list = []\n self._targets_list = []\n\n def update(\n self,\n predictions: Detections | list[Detections],\n targets: Detections | list[Detections],\n ) -> MeanAverageRecall:\n \"\"\"\n Add new predictions and targets to the metric, but do not compute the result.\n\n Args:\n predictions: The predicted detections.\n targets: The target detections.\n\n Returns:\n The updated metric instance.\n \"\"\"\n if not isinstance(predictions, list):\n predictions = [predictions]\n if not isinstance(targets, list):\n targets = [targets]\n\n if len(predictions) != len(targets):\n raise ValueError(\n f\"The number of predictions ({len(predictions)}) and\"\n f\" targets ({len(targets)}) during the update must be the same.\"\n )\n\n self._predictions_list.extend(predictions)\n self._targets_list.extend(targets)\n\n return self\n\n def compute(self) -> MeanAverageRecallResult:\n \"\"\"\n Calculate the Mean Average Recall metric based on the stored predictions\n and ground-truth, at different IoU thresholds and maximum detection counts.\n\n Returns:\n The Mean Average Recall metric result.\n \"\"\"\n result = self._compute(self._predictions_list, self._targets_list)\n\n small_predictions, small_targets = self._filter_predictions_and_targets_by_size(\n self._predictions_list, self._targets_list, ObjectSizeCategory.SMALL\n )\n result.small_objects = self._compute(small_predictions, small_targets)\n\n medium_predictions, medium_targets = (\n self._filter_predictions_and_targets_by_size(\n self._predictions_list, self._targets_list, ObjectSizeCategory.MEDIUM\n )\n )\n result.medium_objects = self._compute(medium_predictions, medium_targets)\n\n large_predictions, large_targets = self._filter_predictions_and_targets_by_size(\n self._predictions_list, self._targets_list, ObjectSizeCategory.LARGE\n )\n result.large_objects = self._compute(large_predictions, large_targets)\n\n return result\n\n def _compute(\n self, predictions_list: list[Detections], targets_list: list[Detections]\n ) -> MeanAverageRecallResult:\n iou_thresholds = np.linspace(0.5, 0.95, 10)\n stats: list[Any] = []\n\n for predictions, targets in zip(predictions_list, targets_list):\n prediction_contents = self._detections_content(predictions)\n target_contents = self._detections_content(targets)\n\n if len(targets) > 0:\n if len(predictions) == 0:\n stats.append(\n (\n np.zeros((0, iou_thresholds.size), dtype=bool),", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[78:169]\n==supervision.metrics.recall:[211:294]\n self._metric_target = metric_target\n self.averaging_method = averaging_method\n\n self._predictions_list: list[Detections] = []\n self._targets_list: list[Detections] = []\n\n def reset(self) -> None:\n \"\"\"\n Reset the metric to its initial state, clearing all stored data.\n \"\"\"\n self._predictions_list = []\n self._targets_list = []\n\n def update(\n self,\n predictions: Detections | list[Detections],\n targets: Detections | list[Detections],\n ) -> F1Score:\n \"\"\"\n Add new predictions and targets to the metric, but do not compute the result.\n\n Args:\n predictions: The predicted detections.\n targets: The target detections.\n\n Returns:\n The updated metric instance.\n \"\"\"\n if not isinstance(predictions, list):\n predictions = [predictions]\n if not isinstance(targets, list):\n targets = [targets]\n\n if len(predictions) != len(targets):\n raise ValueError(\n f\"The number of predictions ({len(predictions)}) and\"\n f\" targets ({len(targets)}) during the update must be the same.\"\n )\n\n self._predictions_list.extend(predictions)\n self._targets_list.extend(targets)\n\n return self\n\n def compute(self) -> F1ScoreResult:\n \"\"\"\n Calculate the F1 score metric based on the stored predictions and ground-truth\n data, at different IoU thresholds.\n\n Returns:\n The F1 score metric result.\n \"\"\"\n result = self._compute(self._predictions_list, self._targets_list)\n\n small_predictions, small_targets = self._filter_predictions_and_targets_by_size(\n self._predictions_list, self._targets_list, ObjectSizeCategory.SMALL\n )\n result.small_objects = self._compute(small_predictions, small_targets)\n\n medium_predictions, medium_targets = (\n self._filter_predictions_and_targets_by_size(\n self._predictions_list, self._targets_list, ObjectSizeCategory.MEDIUM\n )\n )\n result.medium_objects = self._compute(medium_predictions, medium_targets)\n\n large_predictions, large_targets = self._filter_predictions_and_targets_by_size(\n self._predictions_list, self._targets_list, ObjectSizeCategory.LARGE\n )\n result.large_objects = self._compute(large_predictions, large_targets)\n\n return result\n\n def _compute(\n self, predictions_list: list[Detections], targets_list: list[Detections]\n ) -> F1ScoreResult:\n \"\"\"Build per-image stats tuples and delegate to class-level computation.\n\n Each stats tuple is ``(matches, confidence, class_ids, true_class_ids)``:\n - Both empty: skip (no information).\n - Targets empty, predictions present: all predictions are FPs; true_class_ids\n is ``zeros((0,))``.\n - Targets present: IoU matching produces ``matches`` array.\n \"\"\"\n iou_thresholds = np.linspace(0.5, 0.95, 10)\n stats: list[Any] = []\n\n for predictions, targets in zip(predictions_list, targets_list):\n prediction_contents = self._detections_content(predictions)\n target_contents = self._detections_content(targets)\n", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.mean_average_recall:[591:674]\n==supervision.metrics.recall:[402:483]\n return recall_scores, recall_per_class, unique_classes\n\n @staticmethod\n def _match_detection_batch(\n predictions_classes: npt.NDArray[np.int32],\n target_classes: npt.NDArray[np.int32],\n iou: npt.NDArray[np.float32],\n iou_thresholds: npt.NDArray[np.float32],\n ) -> npt.NDArray[np.bool_]:\n num_predictions, num_iou_levels = (\n predictions_classes.shape[0],\n iou_thresholds.shape[0],\n )\n correct = np.zeros((num_predictions, num_iou_levels), dtype=bool)\n correct_class = target_classes[:, None] == predictions_classes\n\n for i, iou_level in enumerate(iou_thresholds):\n matched_indices = np.where((iou >= iou_level) & correct_class)\n\n if matched_indices[0].shape[0]:\n combined_indices = np.stack(matched_indices, axis=1)\n iou_values = iou[matched_indices][:, None]\n matches = np.hstack([combined_indices, iou_values])\n\n if matched_indices[0].shape[0] > 1:\n matches = matches[matches[:, 2].argsort()[::-1]]\n matches = matches[np.unique(matches[:, 1], return_index=True)[1]]\n matches = matches[np.unique(matches[:, 0], return_index=True)[1]]\n\n correct[matches[:, 1].astype(int), i] = True\n result_correct: npt.NDArray[np.bool_] = correct\n return result_correct\n\n @staticmethod\n def _compute_confusion_matrix(\n sorted_matches: npt.NDArray[np.bool_],\n sorted_prediction_class_ids: npt.NDArray[np.int32],\n unique_classes: npt.NDArray[np.int32],\n class_counts: npt.NDArray[np.int32],\n ) -> npt.NDArray[np.float64]:\n \"\"\"\n Compute the confusion matrix for each class and IoU threshold.\n\n Assumes the matches and prediction_class_ids are sorted by confidence\n in descending order.\n\n Args:\n sorted_matches: shape (P, Th), that is True\n if the prediction is a true positive at the given IoU threshold.\n sorted_prediction_class_ids: shape (P,), containing\n the class id for each prediction.\n unique_classes: shape (C,), containing the unique\n class ids.\n class_counts: shape (C,), containing the number\n of true instances for each class.\n max_detections: The maximum number of detections to\n consider for each class. Extra detections are considered false\n positives. By default, all detections are considered.\n\n Returns:\n shape (C, Th, 3), containing the true positives, false\n positives, and false negatives for each class and IoU threshold.\n \"\"\"\n num_thresholds = sorted_matches.shape[1]\n num_classes = unique_classes.shape[0]\n\n confusion_matrix: npt.NDArray[np.float64] = np.zeros(\n (num_classes, num_thresholds, 3), dtype=np.float64\n )\n for class_idx, class_id in enumerate(unique_classes):\n is_class = sorted_prediction_class_ids == class_id\n num_true = class_counts[class_idx]\n num_predictions = is_class.sum()\n\n if num_predictions == 0:\n true_positives = np.zeros(num_thresholds)\n false_positives = np.zeros(num_thresholds)\n false_negatives = np.full(num_thresholds, num_true)\n elif num_true == 0:\n true_positives = np.zeros(num_thresholds)\n false_positives = np.full(num_thresholds, num_predictions)\n false_negatives = np.zeros(num_thresholds)\n else:", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[314:387]\n==supervision.metrics.mean_average_recall:[600:674]\n num_predictions, num_iou_levels = (\n predictions_classes.shape[0],\n iou_thresholds.shape[0],\n )\n correct = np.zeros((num_predictions, num_iou_levels), dtype=bool)\n correct_class = target_classes[:, None] == predictions_classes\n\n for i, iou_level in enumerate(iou_thresholds):\n matched_indices = np.where((iou >= iou_level) & correct_class)\n\n if matched_indices[0].shape[0]:\n combined_indices = np.stack(matched_indices, axis=1)\n iou_values = iou[matched_indices][:, None]\n matches = np.hstack([combined_indices, iou_values])\n\n if matched_indices[0].shape[0] > 1:\n matches = matches[matches[:, 2].argsort()[::-1]]\n matches = matches[np.unique(matches[:, 1], return_index=True)[1]]\n matches = matches[np.unique(matches[:, 0], return_index=True)[1]]\n\n correct[matches[:, 1].astype(int), i] = True\n\n result_correct: npt.NDArray[np.bool_] = correct\n return result_correct\n\n @staticmethod\n def _compute_confusion_matrix(\n sorted_matches: npt.NDArray[np.bool_],\n sorted_prediction_class_ids: npt.NDArray[np.int32],\n unique_classes: npt.NDArray[np.int32],\n class_counts: npt.NDArray[np.int32],\n ) -> npt.NDArray[np.float64]:\n \"\"\"\n Compute the confusion matrix for each class and IoU threshold.\n\n Assumes the matches and prediction_class_ids are sorted by confidence\n in descending order.\n\n Args:\n sorted_matches: shape (P, Th), that is True\n if the prediction is a true positive at the given IoU threshold.\n sorted_prediction_class_ids: shape (P,), containing\n the class id for each prediction.\n unique_classes: shape (C,), containing the unique\n class ids.\n class_counts: shape (C,), containing the number\n of true instances for each class.\n\n Returns:\n shape (C, Th, 3), containing the true positives, false\n positives, and false negatives for each class and IoU threshold.\n \"\"\"\n\n num_thresholds = sorted_matches.shape[1]\n num_classes = unique_classes.shape[0]\n\n confusion_matrix: npt.NDArray[np.float64] = np.zeros(\n (num_classes, num_thresholds, 3), dtype=np.float64\n )\n for class_idx, class_id in enumerate(unique_classes):\n is_class = sorted_prediction_class_ids == class_id\n num_true = class_counts[class_idx]\n num_predictions = is_class.sum()\n\n if num_predictions == 0:\n true_positives = np.zeros(num_thresholds)\n false_positives = np.zeros(num_thresholds)\n false_negatives = np.full(num_thresholds, num_true)\n elif num_true == 0:\n true_positives = np.zeros(num_thresholds)\n false_positives = np.full(num_thresholds, num_predictions)\n false_negatives = np.zeros(num_thresholds)\n else:", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[88:169]\n==supervision.metrics.mean_average_recall:[404:477]\n self._predictions_list = []\n self._targets_list = []\n\n def update(\n self,\n predictions: Detections | list[Detections],\n targets: Detections | list[Detections],\n ) -> MeanAverageRecall:\n \"\"\"\n Add new predictions and targets to the metric, but do not compute the result.\n\n Args:\n predictions: The predicted detections.\n targets: The target detections.\n\n Returns:\n The updated metric instance.\n \"\"\"\n if not isinstance(predictions, list):\n predictions = [predictions]\n if not isinstance(targets, list):\n targets = [targets]\n\n if len(predictions) != len(targets):\n raise ValueError(\n f\"The number of predictions ({len(predictions)}) and\"\n f\" targets ({len(targets)}) during the update must be the same.\"\n )\n\n self._predictions_list.extend(predictions)\n self._targets_list.extend(targets)\n\n return self\n\n def compute(self) -> MeanAverageRecallResult:\n \"\"\"\n Calculate the Mean Average Recall metric based on the stored predictions\n and ground-truth, at different IoU thresholds and maximum detection counts.\n\n Returns:\n The Mean Average Recall metric result.\n \"\"\"\n result = self._compute(self._predictions_list, self._targets_list)\n\n small_predictions, small_targets = self._filter_predictions_and_targets_by_size(\n self._predictions_list, self._targets_list, ObjectSizeCategory.SMALL\n )\n result.small_objects = self._compute(small_predictions, small_targets)\n\n medium_predictions, medium_targets = (\n self._filter_predictions_and_targets_by_size(\n self._predictions_list, self._targets_list, ObjectSizeCategory.MEDIUM\n )\n )\n result.medium_objects = self._compute(medium_predictions, medium_targets)\n\n large_predictions, large_targets = self._filter_predictions_and_targets_by_size(\n self._predictions_list, self._targets_list, ObjectSizeCategory.LARGE\n )\n result.large_objects = self._compute(large_predictions, large_targets)\n\n return result\n\n def _compute(\n self, predictions_list: list[Detections], targets_list: list[Detections]\n ) -> MeanAverageRecallResult:\n iou_thresholds = np.linspace(0.5, 0.95, 10)\n stats: list[Any] = []\n\n for predictions, targets in zip(predictions_list, targets_list):\n prediction_contents = self._detections_content(predictions)\n target_contents = self._detections_content(targets)\n", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[455:504]\n==supervision.metrics.recall:[558:645]\n raise ValueError(f\"Invalid metric target: {self._metric_target}\")\n\n def _filter_detections_by_size(\n self, detections: Detections, size_category: ObjectSizeCategory\n ) -> Detections:\n \"\"\"Return a copy of detections with contents filtered by object size.\"\"\"\n new_detections = deepcopy(detections)\n if detections.is_empty() or size_category == ObjectSizeCategory.ANY:\n return new_detections\n\n sizes = get_detection_size_category(new_detections, self._metric_target)\n size_mask = sizes == size_category.value\n\n new_detections.xyxy = new_detections.xyxy[size_mask]\n if new_detections.mask is not None:\n new_detections.mask = new_detections.mask[size_mask]\n if new_detections.class_id is not None:\n new_detections.class_id = new_detections.class_id[size_mask]\n if new_detections.confidence is not None:\n new_detections.confidence = new_detections.confidence[size_mask]\n if new_detections.tracker_id is not None:\n new_detections.tracker_id = new_detections.tracker_id[size_mask]\n if new_detections.data is not None:\n for key, value in new_detections.data.items():\n new_detections.data[key] = np.array(value)[size_mask]\n\n return new_detections\n\n def _filter_predictions_and_targets_by_size(\n self,\n predictions_list: list[Detections],\n targets_list: list[Detections],\n size_category: ObjectSizeCategory,\n ) -> tuple[list[Detections], list[Detections]]:\n \"\"\"\n Filter predictions and targets by object size category.\n \"\"\"\n new_predictions_list = []\n new_targets_list = []\n for predictions, targets in zip(predictions_list, targets_list):\n new_predictions_list.append(\n self._filter_detections_by_size(predictions, size_category)\n )\n new_targets_list.append(\n self._filter_detections_by_size(targets, size_category)\n )\n return new_predictions_list, new_targets_list\n\n", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[190:219]\n==supervision.metrics.mean_average_recall:[483:513]\n np.zeros((0,), dtype=int),\n targets.class_id,\n )\n )\n\n else:\n if self._metric_target == MetricTarget.BOXES:\n iou = box_iou_batch(target_contents, prediction_contents)\n elif self._metric_target == MetricTarget.MASKS:\n iou = mask_iou_batch(target_contents, prediction_contents)\n elif self._metric_target == MetricTarget.ORIENTED_BOUNDING_BOXES:\n iou = oriented_box_iou_batch(\n target_contents, prediction_contents\n )\n else:\n raise ValueError(\n \"Unsupported metric target for IoU calculation\"\n )\n\n matches = self._match_detection_batch(\n predictions.class_id\n if predictions.class_id is not None\n else np.array([]),\n targets.class_id\n if targets.class_id is not None\n else np.array([]),\n iou,\n iou_thresholds,\n )\n", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.mean_average_recall:[712:752]\n==supervision.metrics.recall:[522:558]\n result_recall: npt.NDArray[np.float64] = recall\n return result_recall\n\n def _detections_content(self, detections: Detections) -> npt.NDArray[Any]:\n \"\"\"Return boxes, masks or oriented bounding boxes from detections.\"\"\"\n if self._metric_target == MetricTarget.BOXES:\n result_boxes: npt.NDArray[np.float32] = detections.xyxy\n return result_boxes\n if self._metric_target == MetricTarget.MASKS:\n if detections.mask is not None:\n result_masks: npt.NDArray[np.bool_] = detections.mask\n return result_masks\n return self._make_empty_content()\n if self._metric_target == MetricTarget.ORIENTED_BOUNDING_BOXES:\n obb = detections.data.get(ORIENTED_BOX_COORDINATES)\n if obb is not None and len(obb) > 0:\n result_obb: npt.NDArray[np.float32] = np.array(obb, dtype=np.float32)\n return result_obb\n return self._make_empty_content()\n raise ValueError(f\"Invalid metric target: {self._metric_target}\")\n\n def _make_empty_content(self) -> npt.NDArray[Any]:\n if self._metric_target == MetricTarget.BOXES:\n empty_boxes: npt.NDArray[np.float32] = np.empty((0, 4), dtype=np.float32)\n return empty_boxes\n\n if self._metric_target == MetricTarget.MASKS:\n empty_masks: npt.NDArray[np.bool_] = np.empty((0, 0, 0), dtype=bool)\n return empty_masks\n\n if self._metric_target == MetricTarget.ORIENTED_BOUNDING_BOXES:\n empty_obb: npt.NDArray[np.float32] = np.empty((0, 4, 2), dtype=np.float32)\n return empty_obb\n\n raise ValueError(f\"Invalid metric target: {self._metric_target}\")\n", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[429:461]\n==supervision.metrics.recall:[527:558]\n if self._metric_target == MetricTarget.BOXES:\n result_boxes: npt.NDArray[np.float32] = detections.xyxy\n return result_boxes\n if self._metric_target == MetricTarget.MASKS:\n if detections.mask is not None:\n result_masks: npt.NDArray[np.bool_] = detections.mask\n return result_masks\n return self._make_empty_content()\n if self._metric_target == MetricTarget.ORIENTED_BOUNDING_BOXES:\n obb = detections.data.get(ORIENTED_BOX_COORDINATES)\n if obb is not None and len(obb) > 0:\n result_obb: npt.NDArray[np.float32] = np.array(obb, dtype=np.float32)\n return result_obb\n return self._make_empty_content()\n raise ValueError(f\"Invalid metric target: {self._metric_target}\")\n\n def _make_empty_content(self) -> npt.NDArray[Any]:\n if self._metric_target == MetricTarget.BOXES:\n empty_boxes: npt.NDArray[np.float32] = np.empty((0, 4), dtype=np.float32)\n return empty_boxes\n if self._metric_target == MetricTarget.MASKS:\n empty_masks: npt.NDArray[np.bool_] = np.empty((0, 0, 0), dtype=bool)\n return empty_masks\n if self._metric_target == MetricTarget.ORIENTED_BOUNDING_BOXES:\n empty_obb: npt.NDArray[np.float32] = np.empty((0, 4, 2), dtype=np.float32)\n return empty_obb\n raise ValueError(f\"Invalid metric target: {self._metric_target}\")\n\n def _filter_detections_by_size(\n self, detections: Detections, size_category: ObjectSizeCategory\n ) -> Detections:\n \"\"\"Return a copy of detections with contents filtered by object size.\"\"\"", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[768:793]\n==supervision.metrics.precision:[310:337]\n f\"\\n(target: {self.metric_target.value},\"\n f\" averaging: {self.averaging_method.value})\"\n )\n ax.set_title(title, fontweight=\"bold\")\n\n x_positions = range(len(labels))\n bars = ax.bar(x_positions, values, color=colors, align=\"center\")\n\n ax.set_xticks(x_positions)\n ax.set_xticklabels(labels, rotation=45, ha=\"right\")\n\n for bar in bars:\n y_value = bar.get_height()\n ax.text(\n bar.get_x() + bar.get_width() / 2,\n y_value + 0.02,\n f\"{y_value:.2f}\",\n ha=\"center\",\n va=\"bottom\",\n )\n\n plt.rcParams[\"font.family\"] = \"sans-serif\"\n\n plt.tight_layout()\n plt.show()", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.mean_average_recall:[219:251]\n==supervision.metrics.recall:[654:686]\n )\n if self.recall_per_class.size == 0:\n out_str += \" No results\\n\"\n for class_id, recall_of_class in zip(\n self.matched_classes, self.recall_per_class\n ):\n out_str += f\" {class_id}: {recall_of_class}\\n\"\n\n indent = \" \"\n if self.small_objects is not None:\n indented = indent + str(self.small_objects).replace(\"\\n\", f\"\\n{indent}\")\n out_str += f\"\\nSmall objects:\\n{indented}\"\n if self.medium_objects is not None:\n indented = indent + str(self.medium_objects).replace(\"\\n\", f\"\\n{indent}\")\n out_str += f\"\\nMedium objects:\\n{indented}\"\n if self.large_objects is not None:\n indented = indent + str(self.large_objects).replace(\"\\n\", f\"\\n{indent}\")\n out_str += f\"\\nLarge objects:\\n{indented}\"\n\n return out_str\n\n def to_pandas(self) -> pd.DataFrame:\n \"\"\"\n Convert the result to a pandas DataFrame.\n\n Returns:\n The result as a DataFrame.\n \"\"\"\n ensure_pandas_installed()\n import pandas as pd\n\n pandas_data = {", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[770:793]\n==supervision.metrics.mean_average_recall:[320:345]\n )\n ax.set_title(title, fontweight=\"bold\")\n\n x_positions = range(len(labels))\n bars = ax.bar(x_positions, values, color=colors, align=\"center\")\n\n ax.set_xticks(x_positions)\n ax.set_xticklabels(labels, rotation=45, ha=\"right\")\n\n for bar in bars:\n y_value = bar.get_height()\n ax.text(\n bar.get_x() + bar.get_width() / 2,\n y_value + 0.02,\n f\"{y_value:.2f}\",\n ha=\"center\",\n va=\"bottom\",\n )\n\n plt.rcParams[\"font.family\"] = \"sans-serif\"\n\n plt.tight_layout()\n plt.show()", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.annotators.core:[1552:1570]\n==supervision.draw.utils:[133:151]\n border_radius = min(border_radius, min(width, height) // 2)\n\n rectangle_coordinates = [\n ((x1 + border_radius, y1), (x2 - border_radius, y2)),\n ((x1, y1 + border_radius), (x2, y2 - border_radius)),\n ]\n circle_centers = [\n (x1 + border_radius, y1 + border_radius),\n (x2 - border_radius, y1 + border_radius),\n (x1 + border_radius, y2 - border_radius),\n (x2 - border_radius, y2 - border_radius),\n ]\n\n for coordinates in rectangle_coordinates:\n cv2.rectangle(\n img=scene,\n pt1=coordinates[0],\n pt2=coordinates[1],", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[773:793]\n==supervision.metrics.mean_average_precision:[316:338]\n x_positions = range(len(labels))\n bars = ax.bar(x_positions, values, color=colors, align=\"center\")\n\n ax.set_xticks(x_positions)\n ax.set_xticklabels(labels, rotation=45, ha=\"right\")\n\n for bar in bars:\n y_value = bar.get_height()\n ax.text(\n bar.get_x() + bar.get_width() / 2,\n y_value + 0.02,\n f\"{y_value:.2f}\",\n ha=\"center\",\n va=\"bottom\",\n )\n\n plt.rcParams[\"font.family\"] = \"sans-serif\"\n\n plt.tight_layout()\n plt.show()", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[713:739]\n==supervision.metrics.mean_average_recall:[254:279]\n }\n\n if self.small_objects is not None:\n small_objects_df = self.small_objects.to_pandas()\n for key, value in small_objects_df.items():\n pandas_data[f\"small_objects_{key}\"] = value\n if self.medium_objects is not None:\n medium_objects_df = self.medium_objects.to_pandas()\n for key, value in medium_objects_df.items():\n pandas_data[f\"medium_objects_{key}\"] = value\n if self.large_objects is not None:\n large_objects_df = self.large_objects.to_pandas()\n for key, value in large_objects_df.items():\n pandas_data[f\"large_objects_{key}\"] = value\n\n return pd.DataFrame(pandas_data, index=[0])\n\n def plot(self) -> None:\n \"\"\"\n Plot the Mean Average Recall results.\n\n ![example_plot](\\\n https://media.roboflow.com/supervision-docs/metrics/mAR_plot_example.png\\\n ){ align=center width=\"800\" }\n \"\"\"", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.precision:[256:281]\n==supervision.metrics.recall:[688:714]\n }\n\n if self.small_objects is not None:\n small_objects_df = self.small_objects.to_pandas()\n for key, value in small_objects_df.items():\n pandas_data[f\"small_objects_{key}\"] = value\n if self.medium_objects is not None:\n medium_objects_df = self.medium_objects.to_pandas()\n for key, value in medium_objects_df.items():\n pandas_data[f\"medium_objects_{key}\"] = value\n if self.large_objects is not None:\n large_objects_df = self.large_objects.to_pandas()\n for key, value in large_objects_df.items():\n pandas_data[f\"large_objects_{key}\"] = value\n\n return pd.DataFrame(pandas_data, index=[0])\n\n def plot(self) -> None:\n \"\"\"\n Plot the precision results.\n\n ![example_plot](\n https://media.roboflow.com/supervision-docs/metrics/precision_plot_example.png\n ){ align=center width=\"800\" }\n \"\"\"", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[713:728]\n==supervision.metrics.mean_average_precision:[248:264]\n }\n\n if self.small_objects is not None:\n small_objects_df = self.small_objects.to_pandas()\n for key, value in small_objects_df.items():\n pandas_data[f\"small_objects_{key}\"] = value\n if self.medium_objects is not None:\n medium_objects_df = self.medium_objects.to_pandas()\n for key, value in medium_objects_df.items():\n pandas_data[f\"medium_objects_{key}\"] = value\n if self.large_objects is not None:\n large_objects_df = self.large_objects.to_pandas()\n for key, value in large_objects_df.items():\n pandas_data[f\"large_objects_{key}\"] = value\n", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[600:672]\n==supervision.metrics.mean_average_recall:[47:83]\n return self.size_results\n\n @property\n def small_objects(self) -> F1ScoreResult | None:\n if self.size_results is None:\n return None\n return self.size_results.small_objects\n\n @small_objects.setter\n def small_objects(self, value: F1ScoreResult | None) -> None:\n self._ensure_size_results().small_objects = value\n\n @property\n def medium_objects(self) -> F1ScoreResult | None:\n if self.size_results is None:\n return None\n return self.size_results.medium_objects\n\n @medium_objects.setter\n def medium_objects(self, value: F1ScoreResult | None) -> None:\n self._ensure_size_results().medium_objects = value\n\n @property\n def large_objects(self) -> F1ScoreResult | None:\n if self.size_results is None:\n return None\n return self.size_results.large_objects\n\n @large_objects.setter\n def large_objects(self, value: F1ScoreResult | None) -> None:\n self._ensure_size_results().large_objects = value\n\n def __str__(self) -> str:\n \"\"\"\n Format as a pretty string.\n\n Example:\n ```pycon\n >>> import numpy as np\n >>> import supervision as sv\n >>> from supervision.metrics import F1Score\n >>> predictions = sv.Detections(\n ... xyxy=np.array([[0, 0, 10, 10]]),\n ... class_id=np.array([0]),\n ... confidence=np.array([0.9])\n ... )\n >>> targets = sv.Detections(\n ... xyxy=np.array([[0, 0, 10, 10]]),\n ... class_id=np.array([0])\n ... )\n >>> f1_metric = F1Score()\n >>> f1_result = f1_metric.update(predictions, targets).compute()\n >>> print(f1_result) # doctest: +ELLIPSIS\n F1ScoreResult:\n Metric target: MetricTarget.BOXES\n Averaging method: AveragingMethod.WEIGHTED\n F1 @ 50: 1.0000\n F1 @ 75: 1.0000\n F1 @ thresh: [1. ... 1.]\n IoU thresh: [0.5 0.55 ... 0.95]\n F1 per class:\n 0: [1. ... 1.]\n ...\n Medium objects:\n F1ScoreResult:\n Metric target: MetricTarget.BOXES\n Averaging method: AveragingMethod.WEIGHTED\n F1 @ 50: 0.0000\n ...\n\n ```\n \"\"\"", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[687:711]\n==supervision.metrics.mean_average_recall:[227:251]\n indent = \" \"\n if self.small_objects is not None:\n indented = indent + str(self.small_objects).replace(\"\\n\", f\"\\n{indent}\")\n out_str += f\"\\nSmall objects:\\n{indented}\"\n if self.medium_objects is not None:\n indented = indent + str(self.medium_objects).replace(\"\\n\", f\"\\n{indent}\")\n out_str += f\"\\nMedium objects:\\n{indented}\"\n if self.large_objects is not None:\n indented = indent + str(self.large_objects).replace(\"\\n\", f\"\\n{indent}\")\n out_str += f\"\\nLarge objects:\\n{indented}\"\n\n return out_str\n\n def to_pandas(self) -> pd.DataFrame:\n \"\"\"\n Convert the result to a pandas DataFrame.\n\n Returns:\n The result as a DataFrame.\n \"\"\"\n ensure_pandas_installed()\n import pandas as pd\n\n pandas_data = {", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[250:287]\n==supervision.metrics.precision:[567:604]\n )\n\n def _compute_precision_for_classes(\n self,\n matches: npt.NDArray[np.bool_],\n prediction_confidence: npt.NDArray[np.float32],\n prediction_class_ids: npt.NDArray[np.int32],\n true_class_ids: npt.NDArray[np.int32],\n ) -> tuple[\n npt.NDArray[np.float64],\n npt.NDArray[np.float64],\n npt.NDArray[np.int32],\n ]:\n \"\"\"Compute precision scores from concatenated stats across all images.\n\n ``unique_classes`` is the union of GT and predicted classes so that\n predictions of classes absent from GT still count as false positives.\n \"\"\"\n sorted_indices = np.argsort(-prediction_confidence)\n matches = matches[sorted_indices]\n prediction_class_ids = prediction_class_ids[sorted_indices]\n # Predictions whose class never appears in the ground truth are still\n # false positives, so include those classes in the confusion matrix\n # (their true-instance count is zero).\n unique_classes = np.unique(\n np.concatenate((true_class_ids, prediction_class_ids))\n )\n true_classes, true_counts = np.unique(true_class_ids, return_counts=True)\n class_counts = np.zeros(unique_classes.shape[0], dtype=int)\n class_counts[np.searchsorted(unique_classes, true_classes)] = true_counts\n\n # Shape: PxTh,P,C,C -> CxThx3\n confusion_matrix = self._compute_confusion_matrix(\n matches, prediction_class_ids, unique_classes, class_counts\n )\n\n # Shape: CxThx3 -> CxTh", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.precision:[230:254]\n==supervision.metrics.recall:[662:686]\n indent = \" \"\n if self.small_objects is not None:\n indented = indent + str(self.small_objects).replace(\"\\n\", f\"\\n{indent}\")\n out_str += f\"\\nSmall objects:\\n{indented}\"\n if self.medium_objects is not None:\n indented = indent + str(self.medium_objects).replace(\"\\n\", f\"\\n{indent}\")\n out_str += f\"\\nMedium objects:\\n{indented}\"\n if self.large_objects is not None:\n indented = indent + str(self.large_objects).replace(\"\\n\", f\"\\n{indent}\")\n out_str += f\"\\nLarge objects:\\n{indented}\"\n\n return out_str\n\n def to_pandas(self) -> pd.DataFrame:\n \"\"\"\n Convert the result to a pandas DataFrame.\n\n Returns:\n The result as a DataFrame.\n \"\"\"\n ensure_pandas_installed()\n import pandas as pd\n\n pandas_data = {", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.detection.utils.iou_and_nms:[39:53]\n==supervision.detection.vlm:[58:72]\n if isinstance(value, cls):\n return value\n if isinstance(value, str):\n value = value.lower()\n try:\n return cls(value)\n except ValueError:\n raise ValueError(f\"Invalid value: {value}. Must be one of {cls.list()}\")\n raise ValueError(\n f\"Invalid value type: {type(value)}. Must be an instance of \"\n f\"{cls.__name__} or str.\"\n )\n\n", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[389:417]\n==supervision.metrics.mean_average_recall:[678:707]\n false_negatives = num_true - true_positives\n\n confusion_matrix[class_idx] = np.stack(\n [true_positives, false_positives, false_negatives], axis=1\n )\n\n result_confusion_matrix: npt.NDArray[np.float64] = confusion_matrix\n return result_confusion_matrix\n\n @staticmethod\n def _compute_recall(\n confusion_matrix: npt.NDArray[np.float64],\n ) -> npt.NDArray[np.float64]:\n \"\"\"\n Broadcastable function, computing the recall from the confusion matrix.\n\n Args:\n confusion_matrix: shape (N, ..., 3), where the last dimension\n contains the true positives, false positives, and false negatives.\n\n Returns:\n shape (N, ...), containing the recall for each element.\n \"\"\"\n if not confusion_matrix.shape[-1] == 3:\n raise ValueError(\n f\"Confusion matrix must have shape (..., 3), got \"\n f\"{confusion_matrix.shape}\"\n )\n true_positives = confusion_matrix[..., 0]", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.detection:[1076:1090]\n==supervision.metrics.f1_score:[321:336]\n for i, iou_level in enumerate(iou_thresholds):\n matched_indices = np.where((iou >= iou_level) & correct_class)\n\n if matched_indices[0].shape[0]:\n combined_indices = np.stack(matched_indices, axis=1)\n iou_values = iou[matched_indices][:, None]\n matches = np.hstack([combined_indices, iou_values])\n\n if matched_indices[0].shape[0] > 1:\n matches = matches[matches[:, 2].argsort()[::-1]]\n matches = matches[np.unique(matches[:, 1], return_index=True)[1]]\n matches = matches[np.unique(matches[:, 0], return_index=True)[1]]\n\n correct[matches[:, 1].astype(int), i] = True", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[88:117]\n==supervision.metrics.mean_average_precision:[1468:1497]\n self._predictions_list = []\n self._targets_list = []\n\n def update(\n self,\n predictions: Detections | list[Detections],\n targets: Detections | list[Detections],\n ) -> MeanAveragePrecision:\n \"\"\"\n Add new predictions and targets to the metric, but do not compute the result.\n\n Args:\n predictions: The predicted detections.\n targets: The ground-truth detections.\n\n Returns:\n The updated metric instance.\n \"\"\"\n if not isinstance(predictions, list):\n predictions = [predictions]\n if not isinstance(targets, list):\n targets = [targets]\n\n if len(predictions) != len(targets):\n raise ValueError(\n f\"The number of predictions ({len(predictions)}) and\"\n f\" targets ({len(targets)}) during the update must be the same.\"\n )\n", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.detection.tools.csv_sink:[115:169]\n==supervision.detection.tools.json_sink:[118:172]\n self.file.close()\n\n @staticmethod\n def _slice_value(value: Any, i: int, n: int) -> Any:\n \"\"\"\n Return the i-th element when the value stores per-detection data.\n\n Dispatch rules:\n - np.ndarray with ndim == 0: return as-is for broadcasting\n - np.ndarray with ndim >= 1: return value[i]\n - list or tuple with len equal to n: return value[i]\n - any other type: return as-is for broadcasting\n\n Args:\n value: Custom-data field value.\n i: Zero-based detection index.\n n: Total number of detections.\n\n Returns:\n Element at position i if value is a per-detection sequence,\n otherwise value unchanged.\n \"\"\"\n if isinstance(value, np.ndarray):\n return value if value.ndim == 0 else value[i]\n if isinstance(value, (list, tuple)) and len(value) == n:\n return value[i]\n return value\n\n @staticmethod\n def parse_detection_data(\n detections: Detections, custom_data: dict[str, Any] | None = None\n ) -> list[dict[str, Any]]:\n \"\"\"\n Convert detections and optional custom data into per-detection rows.\n\n Builds one dictionary per detection containing bounding box coordinates,\n detection attributes, and any values from ``detections.data`` or\n ``custom_data``. List and tuple values in ``custom_data`` with length\n equal to ``len(detections.xyxy)`` are sliced one element per row; all\n other values are broadcast to every row.\n\n Args:\n detections: Detection data to serialize into row dictionaries.\n custom_data: Optional extra fields to include in each row.\n\n Returns:\n A list of dictionaries, one per detection, containing ``xyxy``\n coordinates, ``class_id``, ``confidence``, ``tracker_id``, and any\n values from ``detections.data`` or ``custom_data``.\n \"\"\"\n parsed_rows = []\n n = len(detections.xyxy)\n for i in range(n):\n row = {", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.dataset.formats.pascal_voc:[158:167]\n==supervision.dataset.formats.yolo:[397:406]\n if mask is not None:\n polygons = approximate_mask_with_polygons(\n mask=mask,\n min_image_area_percentage=min_image_area_percentage,\n max_image_area_percentage=max_image_area_percentage,\n approximation_percentage=approximation_percentage,\n )\n for polygon in polygons:\n xyxy = polygon_to_xyxy(polygon=polygon)", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[578:588]\n==supervision.metrics.mean_average_recall:[141:151]\n self.iou_thresholds = iou_thresholds\n self.matched_classes = matched_classes\n\n if size_results is not None:\n self.size_results = size_results\n elif (\n small_objects is not None\n or medium_objects is not None\n or large_objects is not None\n ):", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.detection.utils.iou_and_nms:[79:128]\n==supervision.detection.vlm:[62:72]\n try:\n return cls(value)\n except ValueError:\n raise ValueError(f\"Invalid value: {value}. Must be one of {cls.list()}\")\n raise ValueError(\n f\"Invalid value type: {type(value)}. Must be an instance of \"\n f\"{cls.__name__} or str.\"\n )\n\n", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.mean_average_precision:[87:96]\n==supervision.metrics.precision:[96:105]\n self.iou_thresholds = iou_thresholds\n self.matched_classes = matched_classes\n self._size_results = None\n\n if (\n small_objects is not None\n or medium_objects is not None\n or large_objects is not None\n ):", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.mean_average_recall:[701:710]\n==supervision.metrics.recall:[506:515]\n if not confusion_matrix.shape[-1] == 3:\n raise ValueError(\n f\"Confusion matrix must have shape (..., 3), got \"\n f\"{confusion_matrix.shape}\"\n )\n true_positives = confusion_matrix[..., 0]\n false_negatives = confusion_matrix[..., 2]\n\n denominator = true_positives + false_negatives", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.annotators.core:[1571:1578]\n==supervision.draw.utils:[152:159]\n thickness=-1,\n )\n for center in circle_centers:\n cv2.circle(\n img=scene,\n center=center,\n radius=border_radius,", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[411:418]\n==supervision.metrics.precision:[728:736]\n if not confusion_matrix.shape[-1] == 3:\n raise ValueError(\n f\"Confusion matrix must have shape (..., 3), got \"\n f\"{confusion_matrix.shape}\"\n )\n true_positives = confusion_matrix[..., 0]\n false_positives = confusion_matrix[..., 1]", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[589:598]\n==supervision.metrics.recall:[112:121]\n small_objects=small_objects,\n medium_objects=medium_objects,\n large_objects=large_objects,\n )\n else:\n self.size_results = None\n\n def _ensure_size_results(self) -> RecallSizeResults:\n if self.size_results is None:", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.mean_average_precision:[137:153]\n==supervision.metrics.precision:[135:151]\n self._size_results.small_objects = value\n\n @property\n def medium_objects(self) -> PrecisionResult | None:\n \"\"\"The precision results for medium objects.\"\"\"\n if self._size_results is None:\n return None\n\n return self._size_results.medium_objects\n\n @medium_objects.setter\n def medium_objects(self, value: PrecisionResult | None) -> None:\n if self._size_results is None and value is None:\n return\n\n if self._size_results is None:", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.mean_average_precision:[155:171]\n==supervision.metrics.precision:[153:169]\n self._size_results.medium_objects = value\n\n @property\n def large_objects(self) -> PrecisionResult | None:\n \"\"\"The precision results for large objects.\"\"\"\n if self._size_results is None:\n return None\n\n return self._size_results.large_objects\n\n @large_objects.setter\n def large_objects(self, value: PrecisionResult | None) -> None:\n if self._size_results is None and value is None:\n return\n\n if self._size_results is None:", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.mean_average_recall:[533:541]\n==supervision.metrics.precision:[545:553]\n iou_thresholds=iou_thresholds,\n matched_classes=np.array([], dtype=int),\n small_objects=None,\n medium_objects=None,\n large_objects=None,\n )\n\n concatenated_stats = [np.concatenate(items, 0) for items in zip(*stats)]", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.annotators.utils:[99:105]\n==supervision.key_points.annotators:[921:935]\n return (\n center_x - text_w // 2,\n center_y - text_h // 2,\n center_x + text_w // 2,\n center_y + text_h // 2,\n )", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.dataset.formats.coco:[241:249]\n==supervision.dataset.formats.pascal_voc:[159:165]\n polygons = approximate_mask_with_polygons(\n mask=mask,\n min_image_area_percentage=min_image_area_percentage,\n max_image_area_percentage=max_image_area_percentage,\n approximation_percentage=approximation_percentage,\n )\n # Small/noisy masks can be filtered out by approximation settings.\n # Guard against empty output and keep a valid COCO annotation record.", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[589:597]\n==supervision.metrics.mean_average_recall:[152:161]\n small_objects=small_objects,\n medium_objects=medium_objects,\n large_objects=large_objects,\n )\n else:\n self.size_results = None\n\n @property\n def mAR_at_1(self) -> float:", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[759:767]\n==supervision.metrics.precision:[301:309]\n colors += [LEGACY_COLOR_PALETTE[4]] * 2\n\n plt.rcParams[\"font.family\"] = \"monospace\"\n\n _, ax = plt.subplots(figsize=(10, 6))\n ax.set_ylim(0, 1)\n ax.set_ylabel(\"Value\", fontweight=\"bold\")\n title = (", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[411:417]\n==supervision.metrics.recall:[506:512]\n if not confusion_matrix.shape[-1] == 3:\n raise ValueError(\n f\"Confusion matrix must have shape (..., 3), got \"\n f\"{confusion_matrix.shape}\"\n )\n true_positives = confusion_matrix[..., 0]", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.mean_average_precision:[306:314]\n==supervision.metrics.mean_average_recall:[310:318]\n ]\n colors += [LEGACY_COLOR_PALETTE[4]] * 3\n\n plt.rcParams[\"font.family\"] = \"monospace\"\n\n _, ax = plt.subplots(figsize=(10, 6))\n ax.set_ylim(0, 1)\n ax.set_ylabel(\"Value\", fontweight=\"bold\")", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.mean_average_precision:[124:135]\n==supervision.metrics.precision:[122:133]\n if self._size_results is None:\n return None\n\n return self._size_results.small_objects\n\n @small_objects.setter\n def small_objects(self, value: PrecisionResult | None) -> None:\n if self._size_results is None and value is None:\n return\n\n if self._size_results is None:", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.mean_average_recall:[550:568]\n==supervision.metrics.precision:[562:585]\n iou_thresholds=iou_thresholds,\n matched_classes=unique_classes,\n small_objects=None,\n medium_objects=None,\n large_objects=None,\n )\n\n def _compute_average_recall_for_classes(\n self,\n matches: npt.NDArray[np.bool_],\n prediction_indices: npt.NDArray[np.int32],\n prediction_class_ids: npt.NDArray[np.int32],\n true_class_ids: npt.NDArray[np.int32],\n ) -> tuple[\n npt.NDArray[np.float64],\n npt.NDArray[np.float64],\n npt.NDArray[np.int32],\n ]:", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.mean_average_recall:[701:707]\n==supervision.metrics.precision:[728:734]\n if not confusion_matrix.shape[-1] == 3:\n raise ValueError(\n f\"Confusion matrix must have shape (..., 3), got \"\n f\"{confusion_matrix.shape}\"\n )\n true_positives = confusion_matrix[..., 0]", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.precision:[562:591]\n==supervision.metrics.recall:[361:382]\n iou_thresholds=iou_thresholds,\n matched_classes=unique_classes,\n small_objects=None,\n medium_objects=None,\n large_objects=None,\n )\n\n def _compute_recall_for_classes(\n self,\n matches: npt.NDArray[np.bool_],\n prediction_confidence: npt.NDArray[np.float32],\n prediction_class_ids: npt.NDArray[np.int32],\n true_class_ids: npt.NDArray[np.int32],\n ) -> tuple[\n npt.NDArray[np.float64],\n npt.NDArray[np.float64],\n npt.NDArray[np.int32],\n ]:\n sorted_indices = np.argsort(-prediction_confidence)\n matches = matches[sorted_indices]\n prediction_class_ids = prediction_class_ids[sorted_indices]", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[761:767]\n==supervision.metrics.mean_average_recall:[313:319]\n plt.rcParams[\"font.family\"] = \"monospace\"\n\n _, ax = plt.subplots(figsize=(10, 6))\n ax.set_ylim(0, 1)\n ax.set_ylabel(\"Value\", fontweight=\"bold\")\n title = (", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "cyclic-import", + "message": "Cyclic import (supervision -> supervision.detection.tools.polygon_zone)", + "message-id": "R0401" + } +] diff --git a/metrics-after-pylint/pylint_distribuicao_categorias_depois.json b/metrics-after-pylint/pylint_distribuicao_categorias_depois.json new file mode 100644 index 0000000000..b7303789ad --- /dev/null +++ b/metrics-after-pylint/pylint_distribuicao_categorias_depois.json @@ -0,0 +1,22 @@ +[ + { + "categoria": "convention", + "ocorrencias": 426, + "percentual": 38.59 + }, + { + "categoria": "refactor", + "ocorrencias": 298, + "percentual": 26.99 + }, + { + "categoria": "error", + "ocorrencias": 260, + "percentual": 23.55 + }, + { + "categoria": "warning", + "ocorrencias": 120, + "percentual": 10.87 + } +] \ No newline at end of file diff --git a/metrics-after-pylint/pylint_error_depois.json b/metrics-after-pylint/pylint_error_depois.json new file mode 100644 index 0000000000..f8fc63ab8a --- /dev/null +++ b/metrics-after-pylint/pylint_error_depois.json @@ -0,0 +1,3382 @@ +[ + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "", + "line": 81, + "column": 11, + "endLine": 81, + "endColumn": 35, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'FONT_HERSHEY_SIMPLEX' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "BoxAnnotator.annotate", + "line": 340, + "column": 12, + "endLine": 340, + "endColumn": 25, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'rectangle' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "OrientedBoxAnnotator.annotate", + "line": 432, + "column": 12, + "endLine": 432, + "endColumn": 28, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'drawContours' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "MaskAnnotator.annotate", + "line": 578, + "column": 8, + "endLine": 578, + "endColumn": 23, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'addWeighted' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "ColorAnnotator.annotate", + "line": 757, + "column": 12, + "endLine": 757, + "endColumn": 25, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'rectangle' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "ColorAnnotator.annotate", + "line": 765, + "column": 8, + "endLine": 765, + "endColumn": 23, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'addWeighted' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "HaloAnnotator.annotate", + "line": 859, + "column": 23, + "endLine": 859, + "endColumn": 31, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'blur' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "HaloAnnotator.annotate", + "line": 861, + "column": 15, + "endLine": 861, + "endColumn": 27, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'cvtColor' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "HaloAnnotator.annotate", + "line": 861, + "column": 42, + "endLine": 861, + "endColumn": 60, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'COLOR_BGR2GRAY' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "EllipseAnnotator.annotate", + "line": 958, + "column": 12, + "endLine": 958, + "endColumn": 23, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'ellipse' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "EllipseAnnotator.annotate", + "line": 967, + "column": 25, + "endLine": 967, + "endColumn": 35, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'LINE_4' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "BoxCornerAnnotator.annotate", + "line": 1056, + "column": 16, + "endLine": 1056, + "endColumn": 24, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'line' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "BoxCornerAnnotator.annotate", + "line": 1061, + "column": 16, + "endLine": 1061, + "endColumn": 24, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'line' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "CircleAnnotator.annotate", + "line": 1148, + "column": 12, + "endLine": 1148, + "endColumn": 22, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'circle' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "DotAnnotator.annotate", + "line": 1250, + "column": 12, + "endLine": 1250, + "endColumn": 22, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'circle' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "DotAnnotator.annotate", + "line": 1260, + "column": 16, + "endLine": 1260, + "endColumn": 26, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'circle' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "LabelAnnotator._get_label_properties", + "line": 1427, + "column": 35, + "endLine": 1427, + "endColumn": 50, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'getTextSize' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "LabelAnnotator._draw_labels", + "line": 1510, + "column": 34, + "endLine": 1510, + "endColumn": 49, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'getTextSize' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "LabelAnnotator._draw_labels", + "line": 1519, + "column": 30, + "endLine": 1519, + "endColumn": 45, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'getTextSize' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "LabelAnnotator._draw_labels", + "line": 1529, + "column": 16, + "endLine": 1529, + "endColumn": 27, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'putText' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "LabelAnnotator._draw_labels", + "line": 1537, + "column": 29, + "endLine": 1537, + "endColumn": 40, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'LINE_AA' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "LabelAnnotator.draw_rounded_rectangle", + "line": 1567, + "column": 12, + "endLine": 1567, + "endColumn": 25, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'rectangle' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "LabelAnnotator.draw_rounded_rectangle", + "line": 1575, + "column": 12, + "endLine": 1575, + "endColumn": 22, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'circle' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "IconAnnotator.annotate", + "line": 1953, + "column": 23, + "endLine": 1953, + "endColumn": 57, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-function-args", + "message": "Too many positional arguments for classmethod call", + "message-id": "E1121" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "IconAnnotator._load_icon", + "line": 1958, + "column": 15, + "endLine": 1958, + "endColumn": 25, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'imread' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "IconAnnotator._load_icon", + "line": 1958, + "column": 37, + "endLine": 1958, + "endColumn": 57, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'IMREAD_UNCHANGED' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "BlurAnnotator.annotate", + "line": 2041, + "column": 18, + "endLine": 2041, + "endColumn": 26, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'blur' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "TraceAnnotator.annotate", + "line": 2182, + "column": 16, + "endLine": 2182, + "endColumn": 29, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'polylines' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "HeatMapAnnotator.annotate", + "line": 2279, + "column": 12, + "endLine": 2279, + "endColumn": 22, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'circle' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "HeatMapAnnotator.annotate", + "line": 2293, + "column": 19, + "endLine": 2293, + "endColumn": 27, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'blur' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "HeatMapAnnotator.annotate", + "line": 2296, + "column": 15, + "endLine": 2296, + "endColumn": 27, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'cvtColor' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "HeatMapAnnotator.annotate", + "line": 2296, + "column": 33, + "endLine": 2296, + "endColumn": 50, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'COLOR_HSV2BGR' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "HeatMapAnnotator.annotate", + "line": 2297, + "column": 15, + "endLine": 2297, + "endColumn": 27, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'cvtColor' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "HeatMapAnnotator.annotate", + "line": 2297, + "column": 61, + "endLine": 2297, + "endColumn": 79, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'COLOR_GRAY2BGR' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "HeatMapAnnotator.annotate", + "line": 2298, + "column": 22, + "endLine": 2298, + "endColumn": 37, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'addWeighted' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "PixelateAnnotator.annotate", + "line": 2378, + "column": 42, + "endLine": 2378, + "endColumn": 50, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'mean' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "PixelateAnnotator.annotate", + "line": 2381, + "column": 42, + "endLine": 2381, + "endColumn": 50, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'mean' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "PixelateAnnotator.annotate", + "line": 2384, + "column": 28, + "endLine": 2384, + "endColumn": 38, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'resize' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "PixelateAnnotator.annotate", + "line": 2387, + "column": 30, + "endLine": 2387, + "endColumn": 40, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'resize' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "PixelateAnnotator.annotate", + "line": 2390, + "column": 30, + "endLine": 2390, + "endColumn": 47, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'INTER_NEAREST' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "TriangleAnnotator.annotate", + "line": 2500, + "column": 12, + "endLine": 2500, + "endColumn": 24, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'fillPoly' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "TriangleAnnotator.annotate", + "line": 2510, + "column": 16, + "endLine": 2510, + "endColumn": 29, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'polylines' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "RoundBoxAnnotator.annotate", + "line": 2634, + "column": 16, + "endLine": 2634, + "endColumn": 27, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'ellipse' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "RoundBoxAnnotator.annotate", + "line": 2645, + "column": 16, + "endLine": 2645, + "endColumn": 24, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'line' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "PercentageBarAnnotator.annotate", + "line": 2775, + "column": 12, + "endLine": 2775, + "endColumn": 25, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'rectangle' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "PercentageBarAnnotator.annotate", + "line": 2785, + "column": 12, + "endLine": 2785, + "endColumn": 25, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'rectangle' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "CropAnnotator.annotate", + "line": 2957, + "column": 20, + "endLine": 2957, + "endColumn": 85, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "redundant-keyword-arg", + "message": "Argument 'image' passed by position and keyword in classmethod call", + "message-id": "E1124" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "CropAnnotator.annotate", + "line": 2966, + "column": 12, + "endLine": 2966, + "endColumn": 25, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'rectangle' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "BackgroundOverlayAnnotator.annotate", + "line": 3089, + "column": 8, + "endLine": 3089, + "endColumn": 23, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'addWeighted' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "ComparisonAnnotator._draw_labels", + "line": 3344, + "column": 26, + "endLine": 3344, + "endColumn": 41, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'getTextSize' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.dataset.core", + "obj": "DetectionDataset._get_image", + "line": 105, + "column": 16, + "endLine": 105, + "endColumn": 26, + "path": "src\\supervision\\dataset\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'imread' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.dataset.core", + "obj": "ClassificationDataset._get_image", + "line": 770, + "column": 16, + "endLine": 770, + "endColumn": 26, + "path": "src\\supervision\\dataset\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'imread' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.dataset.core", + "obj": "ClassificationDataset.as_folder_structure", + "line": 919, + "column": 12, + "endLine": 919, + "endColumn": 23, + "path": "src\\supervision\\dataset\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'imwrite' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.dataset.utils", + "obj": "save_dataset_images", + "line": 134, + "column": 12, + "endLine": 134, + "endColumn": 23, + "path": "src\\supervision\\dataset\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'imwrite' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.dataset.formats.pascal_voc", + "obj": "load_pascal_voc_annotations", + "line": 223, + "column": 16, + "endLine": 223, + "endColumn": 26, + "path": "src\\supervision\\dataset\\formats\\pascal_voc.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'imread' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.dataset.formats.yolo", + "obj": "yolo_annotations_to_detections", + "line": 172, + "column": 19, + "endLine": 172, + "endColumn": 54, + "path": "src\\supervision\\dataset\\formats\\yolo.py", + "symbol": "too-many-function-args", + "message": "Too many positional arguments for method call", + "message-id": "E1121" + }, + { + "type": "error", + "module": "supervision.detection.compact_mask", + "obj": "_resize_crop", + "line": 381, + "column": 14, + "endLine": 381, + "endColumn": 24, + "path": "src\\supervision\\detection\\compact_mask.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'resize' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.compact_mask", + "obj": "_resize_crop", + "line": 384, + "column": 22, + "endLine": 384, + "endColumn": 39, + "path": "src\\supervision\\detection\\compact_mask.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'INTER_NEAREST' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.core", + "obj": "merge_inner_detection_object_pair", + "line": 2785, + "column": 13, + "endLine": 2785, + "endColumn": 30, + "path": "src\\supervision\\detection\\core.py", + "symbol": "no-member", + "message": "Module 'supervision.detection.core' has no 'xyxy' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.core", + "obj": "merge_inner_detection_object_pair", + "line": 2787, + "column": 7, + "endLine": 2787, + "endColumn": 30, + "path": "src\\supervision\\detection\\core.py", + "symbol": "no-member", + "message": "Module 'supervision.detection.core' has no 'confidence' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.core", + "obj": "merge_inner_detection_object_pair", + "line": 2790, + "column": 15, + "endLine": 2790, + "endColumn": 38, + "path": "src\\supervision\\detection\\core.py", + "symbol": "no-member", + "message": "Module 'supervision.detection.core' has no 'confidence' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.core", + "obj": "merge_inner_detection_object_pair", + "line": 2795, + "column": 31, + "endLine": 2795, + "endColumn": 54, + "path": "src\\supervision\\detection\\core.py", + "symbol": "no-member", + "message": "Module 'supervision.detection.core' has no 'confidence' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.core", + "obj": "merge_inner_detection_object_pair", + "line": 2804, + "column": 7, + "endLine": 2804, + "endColumn": 24, + "path": "src\\supervision\\detection\\core.py", + "symbol": "no-member", + "message": "Module 'supervision.detection.core' has no 'mask' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.core", + "obj": "merge_inner_detection_object_pair", + "line": 2807, + "column": 36, + "endLine": 2807, + "endColumn": 53, + "path": "src\\supervision\\detection\\core.py", + "symbol": "no-member", + "message": "Module 'supervision.detection.core' has no 'mask' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.core", + "obj": "merge_inner_detection_object_pair", + "line": 2809, + "column": 7, + "endLine": 2809, + "endColumn": 30, + "path": "src\\supervision\\detection\\core.py", + "symbol": "no-member", + "message": "Module 'supervision.detection.core' has no 'confidence' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.core", + "obj": "merge_inner_detection_object_pair", + "line": 2811, + "column": 9, + "endLine": 2811, + "endColumn": 32, + "path": "src\\supervision\\detection\\core.py", + "symbol": "no-member", + "message": "Module 'supervision.detection.core' has no 'confidence' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.core", + "obj": "merge_inner_detection_object_pair", + "line": 2816, + "column": 31, + "endLine": 2816, + "endColumn": 52, + "path": "src\\supervision\\detection\\core.py", + "symbol": "no-member", + "message": "Module 'supervision.detection.core' has no 'metadata' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.core", + "obj": "merge_inner_detections_objects", + "line": 2843, + "column": 19, + "endLine": 2843, + "endColumn": 29, + "path": "src\\supervision\\detection\\core.py", + "symbol": "unsubscriptable-object", + "message": "Value 'detections' is unsubscriptable", + "message-id": "E1136" + }, + { + "type": "error", + "module": "supervision.detection.core", + "obj": "merge_inner_detections_objects", + "line": 2844, + "column": 24, + "endLine": 2844, + "endColumn": 34, + "path": "src\\supervision\\detection\\core.py", + "symbol": "unsubscriptable-object", + "message": "Value 'detections' is unsubscriptable", + "message-id": "E1136" + }, + { + "type": "error", + "module": "supervision.detection.core", + "obj": "merge_inner_detections_objects", + "line": 2853, + "column": 23, + "endLine": 2853, + "endColumn": 84, + "path": "src\\supervision\\detection\\core.py", + "symbol": "too-many-function-args", + "message": "Too many positional arguments for classmethod call", + "message-id": "E1121" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator.annotate", + "line": 455, + "column": 8, + "endLine": 455, + "endColumn": 16, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'line' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator.annotate", + "line": 461, + "column": 21, + "endLine": 461, + "endColumn": 32, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'LINE_AA' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator.annotate", + "line": 464, + "column": 8, + "endLine": 464, + "endColumn": 18, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'circle' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator.annotate", + "line": 470, + "column": 21, + "endLine": 470, + "endColumn": 32, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'LINE_AA' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator.annotate", + "line": 472, + "column": 8, + "endLine": 472, + "endColumn": 18, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'circle' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator.annotate", + "line": 478, + "column": 21, + "endLine": 478, + "endColumn": 32, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'LINE_AA' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator._draw_basic_label", + "line": 619, + "column": 25, + "endLine": 619, + "endColumn": 40, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'getTextSize' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator._draw_basic_label", + "line": 621, + "column": 12, + "endLine": 621, + "endColumn": 36, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'FONT_HERSHEY_SIMPLEX' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator._draw_oriented_label", + "line": 679, + "column": 34, + "endLine": 679, + "endColumn": 49, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'getTextSize' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator._draw_oriented_label", + "line": 681, + "column": 12, + "endLine": 681, + "endColumn": 36, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'FONT_HERSHEY_SIMPLEX' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator._draw_oriented_label", + "line": 694, + "column": 16, + "endLine": 694, + "endColumn": 63, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "too-many-function-args", + "message": "Too many positional arguments for classmethod call", + "message-id": "E1121" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator._make_label_image", + "line": 727, + "column": 34, + "endLine": 727, + "endColumn": 49, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'getTextSize' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator._make_label_image", + "line": 728, + "column": 18, + "endLine": 728, + "endColumn": 42, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'FONT_HERSHEY_SIMPLEX' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator._make_label_image", + "line": 761, + "column": 25, + "endLine": 761, + "endColumn": 33, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'flip' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator._make_label_image", + "line": 764, + "column": 26, + "endLine": 764, + "endColumn": 49, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'getRotationMatrix2D' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator._make_label_image", + "line": 767, + "column": 21, + "endLine": 767, + "endColumn": 35, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'warpAffine' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotatorMulticlass.annotate", + "line": 888, + "column": 38, + "endLine": 888, + "endColumn": 53, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'getTextSize' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotatorMulticlass.annotate", + "line": 889, + "column": 22, + "endLine": 889, + "endColumn": 46, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'FONT_HERSHEY_SIMPLEX' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotatorMulticlass.annotate", + "line": 926, + "column": 29, + "endLine": 926, + "endColumn": 44, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'getTextSize' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotatorMulticlass.annotate", + "line": 927, + "column": 22, + "endLine": 927, + "endColumn": 46, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'FONT_HERSHEY_SIMPLEX' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotatorMulticlass.annotate", + "line": 933, + "column": 12, + "endLine": 933, + "endColumn": 23, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'putText' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotatorMulticlass.annotate", + "line": 937, + "column": 25, + "endLine": 937, + "endColumn": 49, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'FONT_HERSHEY_SIMPLEX' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotatorMulticlass.annotate", + "line": 941, + "column": 25, + "endLine": 941, + "endColumn": 36, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'LINE_AA' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.vlm", + "obj": "from_florence_2", + "line": 539, + "column": 19, + "endLine": 539, + "endColumn": 45, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "too-many-function-args", + "message": "Too many positional arguments for method call", + "message-id": "E1121" + }, + { + "type": "error", + "module": "supervision.detection.vlm", + "obj": "_parse_gemini_2_5_item", + "line": 636, + "column": 20, + "endLine": 640, + "endColumn": 5, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "redundant-keyword-arg", + "message": "Argument 'resolution_wh' passed by position and keyword in classmethod call", + "message-id": "E1124" + }, + { + "type": "error", + "module": "supervision.detection.vlm", + "obj": "from_google_gemini_2_0", + "line": 823, + "column": 11, + "endLine": 827, + "endColumn": 5, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "redundant-keyword-arg", + "message": "Argument 'resolution_wh' passed by position and keyword in classmethod call", + "message-id": "E1124" + }, + { + "type": "error", + "module": "supervision.detection.vlm", + "obj": "from_moondream", + "line": 982, + "column": 8, + "endLine": 985, + "endColumn": 9, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "redundant-keyword-arg", + "message": "Argument 'resolution_wh' passed by position and keyword in classmethod call", + "message-id": "E1124" + }, + { + "type": "error", + "module": "supervision.detection.tools.inference_slicer", + "obj": "InferenceSlicer._warn_obb_sequential_fallback", + "line": 409, + "column": 13, + "endLine": 409, + "endColumn": 42, + "path": "src\\supervision\\detection\\tools\\inference_slicer.py", + "symbol": "no-member", + "message": "Instance of 'InferenceSlicer' has no '_obb_thread_workers_lock' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.tools.inference_slicer", + "obj": "InferenceSlicer._warn_obb_sequential_fallback", + "line": 410, + "column": 15, + "endLine": 410, + "endColumn": 46, + "path": "src\\supervision\\detection\\tools\\inference_slicer.py", + "symbol": "no-member", + "message": "Instance of 'InferenceSlicer' has no '_obb_thread_workers_warned' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.tools.inference_slicer", + "obj": "InferenceSlicer._warn_obb_sequential_fallback", + "line": 413, + "column": 12, + "endLine": 413, + "endColumn": 43, + "path": "src\\supervision\\detection\\tools\\inference_slicer.py", + "symbol": "assigning-non-slot", + "message": "Assigning to attribute '_obb_thread_workers_warned' not defined in class slots", + "message-id": "E0237" + }, + { + "type": "error", + "module": "supervision.detection.tools.polygon_zone", + "obj": "", + "line": 18, + "column": 11, + "endLine": 18, + "endColumn": 35, + "path": "src\\supervision\\detection\\tools\\polygon_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'FONT_HERSHEY_SIMPLEX' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.utils.boxes", + "obj": "denormalize_boxes", + "line": 156, + "column": 13, + "endLine": 156, + "endColumn": 22, + "path": "src\\supervision\\detection\\utils\\boxes.py", + "symbol": "no-member", + "message": "Module 'supervision.detection.utils.boxes' has no 'copy' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.utils.converters", + "obj": "polygon_to_mask", + "line": 48, + "column": 4, + "endLine": 48, + "endColumn": 16, + "path": "src\\supervision\\detection\\utils\\converters.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'fillPoly' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.utils.converters", + "obj": "mask_to_polygons", + "line": 322, + "column": 18, + "endLine": 322, + "endColumn": 34, + "path": "src\\supervision\\detection\\utils\\converters.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'findContours' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.utils.converters", + "obj": "mask_to_polygons", + "line": 323, + "column": 31, + "endLine": 323, + "endColumn": 44, + "path": "src\\supervision\\detection\\utils\\converters.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'RETR_TREE' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.utils.converters", + "obj": "mask_to_polygons", + "line": 323, + "column": 46, + "endLine": 323, + "endColumn": 69, + "path": "src\\supervision\\detection\\utils\\converters.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'CHAIN_APPROX_SIMPLE' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.utils.internal", + "obj": "extract_ultralytics_masks", + "line": 47, + "column": 19, + "endLine": 47, + "endColumn": 29, + "path": "src\\supervision\\detection\\utils\\internal.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'resize' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.utils.internal", + "obj": "_decode_rle_mask", + "line": 66, + "column": 19, + "endLine": 66, + "endColumn": 29, + "path": "src\\supervision\\detection\\utils\\internal.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'resize' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.utils.internal", + "obj": "_decode_rle_mask", + "line": 69, + "column": 30, + "endLine": 69, + "endColumn": 47, + "path": "src\\supervision\\detection\\utils\\internal.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'INTER_NEAREST' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "oriented_box_iou_batch", + "line": 553, + "column": 26, + "endLine": 553, + "endColumn": 51, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'intersectConvexConvex' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.utils.masks", + "obj": "contains_holes", + "line": 191, + "column": 19, + "endLine": 191, + "endColumn": 35, + "path": "src\\supervision\\detection\\utils\\masks.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'findContours' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.utils.masks", + "obj": "contains_holes", + "line": 191, + "column": 48, + "endLine": 191, + "endColumn": 62, + "path": "src\\supervision\\detection\\utils\\masks.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'RETR_CCOMP' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.utils.masks", + "obj": "contains_holes", + "line": 191, + "column": 64, + "endLine": 191, + "endColumn": 87, + "path": "src\\supervision\\detection\\utils\\masks.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'CHAIN_APPROX_SIMPLE' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.utils.masks", + "obj": "contains_multiple_segments", + "line": 257, + "column": 26, + "endLine": 257, + "endColumn": 49, + "path": "src\\supervision\\detection\\utils\\masks.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'connectedComponents' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.utils.masks", + "obj": "_filter_labels_by_edge_distance", + "line": 329, + "column": 25, + "endLine": 329, + "endColumn": 46, + "path": "src\\supervision\\detection\\utils\\masks.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'distanceTransform' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.utils.masks", + "obj": "_filter_labels_by_edge_distance", + "line": 329, + "column": 56, + "endLine": 329, + "endColumn": 67, + "path": "src\\supervision\\detection\\utils\\masks.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'DIST_L2' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.utils.masks", + "obj": "filter_segments_by_distance", + "line": 437, + "column": 43, + "endLine": 437, + "endColumn": 75, + "path": "src\\supervision\\detection\\utils\\masks.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'connectedComponentsWithStats' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.utils.masks", + "obj": "filter_segments_by_distance", + "line": 444, + "column": 22, + "endLine": 444, + "endColumn": 38, + "path": "src\\supervision\\detection\\utils\\masks.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'CC_STAT_AREA' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.utils.polygons", + "obj": "filter_polygons_by_area", + "line": 35, + "column": 12, + "endLine": 35, + "endColumn": 27, + "path": "src\\supervision\\detection\\utils\\polygons.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'contourArea' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.utils.polygons", + "obj": "approximate_polygon", + "line": 109, + "column": 31, + "endLine": 109, + "endColumn": 47, + "path": "src\\supervision\\detection\\utils\\polygons.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'approxPolyDP' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.draw.color", + "obj": "Color.WHITE", + "line": 356, + "column": 4, + "endLine": 356, + "endColumn": 13, + "path": "src\\supervision\\draw\\color.py", + "symbol": "no-self-argument", + "message": "Method 'WHITE' should have \"self\" as first argument", + "message-id": "E0213" + }, + { + "type": "error", + "module": "supervision.draw.color", + "obj": "Color.BLACK", + "line": 360, + "column": 4, + "endLine": 360, + "endColumn": 13, + "path": "src\\supervision\\draw\\color.py", + "symbol": "no-self-argument", + "message": "Method 'BLACK' should have \"self\" as first argument", + "message-id": "E0213" + }, + { + "type": "error", + "module": "supervision.draw.color", + "obj": "Color.GREY", + "line": 364, + "column": 4, + "endLine": 364, + "endColumn": 12, + "path": "src\\supervision\\draw\\color.py", + "symbol": "no-self-argument", + "message": "Method 'GREY' should have \"self\" as first argument", + "message-id": "E0213" + }, + { + "type": "error", + "module": "supervision.draw.color", + "obj": "Color.RED", + "line": 368, + "column": 4, + "endLine": 368, + "endColumn": 11, + "path": "src\\supervision\\draw\\color.py", + "symbol": "no-self-argument", + "message": "Method 'RED' should have \"self\" as first argument", + "message-id": "E0213" + }, + { + "type": "error", + "module": "supervision.draw.color", + "obj": "Color.GREEN", + "line": 372, + "column": 4, + "endLine": 372, + "endColumn": 13, + "path": "src\\supervision\\draw\\color.py", + "symbol": "no-self-argument", + "message": "Method 'GREEN' should have \"self\" as first argument", + "message-id": "E0213" + }, + { + "type": "error", + "module": "supervision.draw.color", + "obj": "Color.BLUE", + "line": 376, + "column": 4, + "endLine": 376, + "endColumn": 12, + "path": "src\\supervision\\draw\\color.py", + "symbol": "no-self-argument", + "message": "Method 'BLUE' should have \"self\" as first argument", + "message-id": "E0213" + }, + { + "type": "error", + "module": "supervision.draw.color", + "obj": "Color.YELLOW", + "line": 380, + "column": 4, + "endLine": 380, + "endColumn": 14, + "path": "src\\supervision\\draw\\color.py", + "symbol": "no-self-argument", + "message": "Method 'YELLOW' should have \"self\" as first argument", + "message-id": "E0213" + }, + { + "type": "error", + "module": "supervision.draw.color", + "obj": "Color.ROBOFLOW", + "line": 384, + "column": 4, + "endLine": 384, + "endColumn": 16, + "path": "src\\supervision\\draw\\color.py", + "symbol": "no-self-argument", + "message": "Method 'ROBOFLOW' should have \"self\" as first argument", + "message-id": "E0213" + }, + { + "type": "error", + "module": "supervision.draw.color", + "obj": "ColorPalette.DEFAULT", + "line": 410, + "column": 4, + "endLine": 410, + "endColumn": 15, + "path": "src\\supervision\\draw\\color.py", + "symbol": "no-self-argument", + "message": "Method 'DEFAULT' should have \"self\" as first argument", + "message-id": "E0213" + }, + { + "type": "error", + "module": "supervision.draw.color", + "obj": "ColorPalette.ROBOFLOW", + "line": 431, + "column": 4, + "endLine": 431, + "endColumn": 16, + "path": "src\\supervision\\draw\\color.py", + "symbol": "no-self-argument", + "message": "Method 'ROBOFLOW' should have \"self\" as first argument", + "message-id": "E0213" + }, + { + "type": "error", + "module": "supervision.draw.color", + "obj": "ColorPalette.LEGACY", + "line": 452, + "column": 4, + "endLine": 452, + "endColumn": 14, + "path": "src\\supervision\\draw\\color.py", + "symbol": "no-self-argument", + "message": "Method 'LEGACY' should have \"self\" as first argument", + "message-id": "E0213" + }, + { + "type": "error", + "module": "supervision.draw.utils", + "obj": "draw_line", + "line": 34, + "column": 4, + "endLine": 34, + "endColumn": 12, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'line' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.draw.utils", + "obj": "draw_rectangle", + "line": 62, + "column": 4, + "endLine": 62, + "endColumn": 17, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'rectangle' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.draw.utils", + "obj": "draw_filled_rectangle", + "line": 91, + "column": 8, + "endLine": 91, + "endColumn": 21, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'rectangle' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.draw.utils", + "obj": "draw_filled_rectangle", + "line": 100, + "column": 8, + "endLine": 100, + "endColumn": 21, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'rectangle' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.draw.utils", + "obj": "draw_filled_rectangle", + "line": 107, + "column": 8, + "endLine": 107, + "endColumn": 23, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'addWeighted' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.draw.utils", + "obj": "draw_rounded_rectangle", + "line": 148, + "column": 8, + "endLine": 148, + "endColumn": 21, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'rectangle' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.draw.utils", + "obj": "draw_rounded_rectangle", + "line": 156, + "column": 8, + "endLine": 156, + "endColumn": 18, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'circle' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.draw.utils", + "obj": "draw_polygon", + "line": 183, + "column": 4, + "endLine": 183, + "endColumn": 17, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'polylines' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.draw.utils", + "obj": "draw_filled_polygon", + "line": 207, + "column": 8, + "endLine": 207, + "endColumn": 20, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'fillPoly' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.draw.utils", + "obj": "draw_filled_polygon", + "line": 210, + "column": 8, + "endLine": 210, + "endColumn": 20, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'fillPoly' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.draw.utils", + "obj": "draw_filled_polygon", + "line": 211, + "column": 8, + "endLine": 211, + "endColumn": 23, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'addWeighted' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.draw.utils", + "obj": "draw_text", + "line": 226, + "column": 21, + "endLine": 226, + "endColumn": 45, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'FONT_HERSHEY_SIMPLEX' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.draw.utils", + "obj": "draw_text", + "line": 267, + "column": 30, + "endLine": 267, + "endColumn": 45, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'getTextSize' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.draw.utils", + "obj": "draw_text", + "line": 288, + "column": 4, + "endLine": 288, + "endColumn": 15, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'putText' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.draw.utils", + "obj": "draw_text", + "line": 296, + "column": 17, + "endLine": 296, + "endColumn": 28, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'LINE_AA' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.draw.utils", + "obj": "draw_image", + "line": 328, + "column": 16, + "endLine": 328, + "endColumn": 26, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'imread' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.draw.utils", + "obj": "draw_image", + "line": 328, + "column": 34, + "endLine": 328, + "endColumn": 54, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'IMREAD_UNCHANGED' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.draw.utils", + "obj": "draw_image", + "line": 348, + "column": 12, + "endLine": 348, + "endColumn": 22, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'resize' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.draw.utils", + "obj": "draw_image", + "line": 355, + "column": 19, + "endLine": 355, + "endColumn": 38, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'convertScaleAbs' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.draw.utils", + "obj": "draw_image", + "line": 360, + "column": 18, + "endLine": 360, + "endColumn": 37, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'convertScaleAbs' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.key_points.annotators", + "obj": "VertexAnnotator.annotate", + "line": 100, + "column": 16, + "endLine": 100, + "endColumn": 26, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'circle' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.key_points.annotators", + "obj": "EdgeAnnotator.annotate", + "line": 250, + "column": 16, + "endLine": 250, + "endColumn": 24, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'line' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.key_points.annotators", + "obj": "VertexEllipseAreaAnnotator.annotate", + "line": 455, + "column": 16, + "endLine": 455, + "endColumn": 27, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'ellipse' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.key_points.annotators", + "obj": "VertexEllipseAreaAnnotator.annotate", + "line": 464, + "column": 29, + "endLine": 464, + "endColumn": 40, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'LINE_AA' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.key_points.annotators", + "obj": "VertexEllipseAreaAnnotator.annotate", + "line": 467, + "column": 8, + "endLine": 467, + "endColumn": 23, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'addWeighted' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.key_points.annotators", + "obj": "VertexEllipseOutlineAnnotator.annotate", + "line": 553, + "column": 16, + "endLine": 553, + "endColumn": 27, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'ellipse' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.key_points.annotators", + "obj": "VertexEllipseOutlineAnnotator.annotate", + "line": 562, + "column": 29, + "endLine": 562, + "endColumn": 40, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'LINE_AA' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.key_points.annotators", + "obj": "VertexLabelAnnotator.annotate", + "line": 828, + "column": 15, + "endLine": 828, + "endColumn": 39, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'FONT_HERSHEY_SIMPLEX' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.key_points.annotators", + "obj": "VertexLabelAnnotator.annotate", + "line": 894, + "column": 12, + "endLine": 894, + "endColumn": 23, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'putText' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.key_points.annotators", + "obj": "VertexLabelAnnotator.annotate", + "line": 902, + "column": 25, + "endLine": 902, + "endColumn": 36, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'LINE_AA' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.key_points.annotators", + "obj": "VertexLabelAnnotator.get_text_bounding_box", + "line": 915, + "column": 25, + "endLine": 915, + "endColumn": 40, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'getTextSize' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.key_points.core", + "obj": "KeyPoints.from_mediapipe", + "line": 573, + "column": 15, + "endLine": 573, + "endColumn": 22, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "possibly-used-before-assignment", + "message": "Possibly using variable 'results' before assignment", + "message-id": "E0606" + }, + { + "type": "error", + "module": "supervision.metrics.f1_score", + "obj": "F1Score._compute_f1_for_classes", + "line": 306, + "column": 15, + "endLine": 306, + "endColumn": 24, + "path": "src\\supervision\\metrics\\f1_score.py", + "symbol": "possibly-used-before-assignment", + "message": "Possibly using variable 'f1_scores' before assignment", + "message-id": "E0606" + }, + { + "type": "error", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluator._compute_average_precision", + "line": 1156, + "column": 8, + "endLine": 1156, + "endColumn": 12, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "undefined-variable", + "message": "Undefined variable 'self'", + "message-id": "E0602" + }, + { + "type": "error", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluator._compute_average_precision", + "line": 1157, + "column": 22, + "endLine": 1157, + "endColumn": 26, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "undefined-variable", + "message": "Undefined variable 'self'", + "message-id": "E0602" + }, + { + "type": "error", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluator._compute_average_precision", + "line": 1159, + "column": 16, + "endLine": 1159, + "endColumn": 34, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "undefined-variable", + "message": "Undefined variable 'num_iou_thresholds'", + "message-id": "E0602" + }, + { + "type": "error", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluator._compute_average_precision", + "line": 1160, + "column": 16, + "endLine": 1160, + "endColumn": 37, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "undefined-variable", + "message": "Undefined variable 'num_recall_thresholds'", + "message-id": "E0602" + }, + { + "type": "error", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluator._compute_average_precision", + "line": 1161, + "column": 16, + "endLine": 1161, + "endColumn": 30, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "undefined-variable", + "message": "Undefined variable 'num_categories'", + "message-id": "E0602" + }, + { + "type": "error", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluator._compute_average_precision", + "line": 1162, + "column": 16, + "endLine": 1162, + "endColumn": 31, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "undefined-variable", + "message": "Undefined variable 'num_area_ranges'", + "message-id": "E0602" + }, + { + "type": "error", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluator._compute_average_precision", + "line": 1163, + "column": 16, + "endLine": 1163, + "endColumn": 34, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "undefined-variable", + "message": "Undefined variable 'num_max_detections'", + "message-id": "E0602" + }, + { + "type": "error", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluator._compute_average_precision", + "line": 1166, + "column": 25, + "endLine": 1166, + "endColumn": 34, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "undefined-variable", + "message": "Undefined variable 'precision'", + "message-id": "E0602" + }, + { + "type": "error", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluator._compute_average_precision", + "line": 1167, + "column": 22, + "endLine": 1167, + "endColumn": 28, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "undefined-variable", + "message": "Undefined variable 'recall'", + "message-id": "E0602" + }, + { + "type": "error", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluator._compute_average_precision", + "line": 1168, + "column": 22, + "endLine": 1168, + "endColumn": 28, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "undefined-variable", + "message": "Undefined variable 'scores'", + "message-id": "E0602" + }, + { + "type": "error", + "module": "supervision.metrics.precision", + "obj": "Precision._compute_precision_for_classes", + "line": 625, + "column": 15, + "endLine": 625, + "endColumn": 31, + "path": "src\\supervision\\metrics\\precision.py", + "symbol": "possibly-used-before-assignment", + "message": "Possibly using variable 'precision_scores' before assignment", + "message-id": "E0606" + }, + { + "type": "error", + "module": "supervision.metrics.recall", + "obj": "Recall._compute_recall_for_classes", + "line": 403, + "column": 15, + "endLine": 403, + "endColumn": 28, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "possibly-used-before-assignment", + "message": "Possibly using variable 'recall_scores' before assignment", + "message-id": "E0606" + }, + { + "type": "error", + "module": "supervision.metrics.recall", + "obj": "Recall.__str__", + "line": 648, + "column": 33, + "endLine": 648, + "endColumn": 51, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "no-member", + "message": "Instance of 'Recall' has no 'metric_target' member; maybe '_metric_target'?", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.metrics.recall", + "obj": "Recall.__str__", + "line": 650, + "column": 27, + "endLine": 650, + "endColumn": 44, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "no-member", + "message": "Instance of 'Recall' has no 'recall_at_50' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.metrics.recall", + "obj": "Recall.__str__", + "line": 651, + "column": 27, + "endLine": 651, + "endColumn": 44, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "no-member", + "message": "Instance of 'Recall' has no 'recall_at_75' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.metrics.recall", + "obj": "Recall.__str__", + "line": 652, + "column": 27, + "endLine": 652, + "endColumn": 45, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "no-member", + "message": "Instance of 'Recall' has no 'recall_scores' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.metrics.recall", + "obj": "Recall.__str__", + "line": 653, + "column": 27, + "endLine": 653, + "endColumn": 46, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "no-member", + "message": "Instance of 'Recall' has no 'iou_thresholds' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.metrics.recall", + "obj": "Recall.__str__", + "line": 656, + "column": 11, + "endLine": 656, + "endColumn": 32, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "no-member", + "message": "Instance of 'Recall' has no 'recall_per_class' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.metrics.recall", + "obj": "Recall.__str__", + "line": 659, + "column": 12, + "endLine": 659, + "endColumn": 32, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "no-member", + "message": "Instance of 'Recall' has no 'matched_classes' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.metrics.recall", + "obj": "Recall.__str__", + "line": 659, + "column": 34, + "endLine": 659, + "endColumn": 55, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "no-member", + "message": "Instance of 'Recall' has no 'recall_per_class' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.metrics.recall", + "obj": "Recall.__str__", + "line": 664, + "column": 11, + "endLine": 664, + "endColumn": 29, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "no-member", + "message": "Instance of 'Recall' has no 'small_objects' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.metrics.recall", + "obj": "Recall.__str__", + "line": 665, + "column": 36, + "endLine": 665, + "endColumn": 54, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "no-member", + "message": "Instance of 'Recall' has no 'small_objects' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.metrics.recall", + "obj": "Recall.__str__", + "line": 667, + "column": 11, + "endLine": 667, + "endColumn": 30, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "no-member", + "message": "Instance of 'Recall' has no 'medium_objects' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.metrics.recall", + "obj": "Recall.__str__", + "line": 668, + "column": 36, + "endLine": 668, + "endColumn": 55, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "no-member", + "message": "Instance of 'Recall' has no 'medium_objects' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.metrics.recall", + "obj": "Recall.__str__", + "line": 670, + "column": 11, + "endLine": 670, + "endColumn": 29, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "no-member", + "message": "Instance of 'Recall' has no 'large_objects' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.metrics.recall", + "obj": "Recall.__str__", + "line": 671, + "column": 36, + "endLine": 671, + "endColumn": 54, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "no-member", + "message": "Instance of 'Recall' has no 'large_objects' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.metrics.recall", + "obj": "Recall.to_pandas", + "line": 687, + "column": 20, + "endLine": 687, + "endColumn": 37, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "no-member", + "message": "Instance of 'Recall' has no 'recall_at_50' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.metrics.recall", + "obj": "Recall.to_pandas", + "line": 688, + "column": 20, + "endLine": 688, + "endColumn": 37, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "no-member", + "message": "Instance of 'Recall' has no 'recall_at_75' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.metrics.recall", + "obj": "Recall.to_pandas", + "line": 691, + "column": 11, + "endLine": 691, + "endColumn": 29, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "no-member", + "message": "Instance of 'Recall' has no 'small_objects' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.metrics.recall", + "obj": "Recall.to_pandas", + "line": 692, + "column": 31, + "endLine": 692, + "endColumn": 49, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "no-member", + "message": "Instance of 'Recall' has no 'small_objects' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.metrics.recall", + "obj": "Recall.to_pandas", + "line": 695, + "column": 11, + "endLine": 695, + "endColumn": 30, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "no-member", + "message": "Instance of 'Recall' has no 'medium_objects' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.metrics.recall", + "obj": "Recall.to_pandas", + "line": 696, + "column": 32, + "endLine": 696, + "endColumn": 51, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "no-member", + "message": "Instance of 'Recall' has no 'medium_objects' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.metrics.recall", + "obj": "Recall.to_pandas", + "line": 699, + "column": 11, + "endLine": 699, + "endColumn": 29, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "no-member", + "message": "Instance of 'Recall' has no 'large_objects' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.metrics.recall", + "obj": "Recall.to_pandas", + "line": 700, + "column": 31, + "endLine": 700, + "endColumn": 49, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "no-member", + "message": "Instance of 'Recall' has no 'large_objects' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.metrics.recall", + "obj": "Recall.plot", + "line": 716, + "column": 18, + "endLine": 716, + "endColumn": 35, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "no-member", + "message": "Instance of 'Recall' has no 'recall_at_50' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.metrics.recall", + "obj": "Recall.plot", + "line": 716, + "column": 37, + "endLine": 716, + "endColumn": 54, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "no-member", + "message": "Instance of 'Recall' has no 'recall_at_75' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.metrics.recall", + "obj": "Recall.plot", + "line": 719, + "column": 11, + "endLine": 719, + "endColumn": 29, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "no-member", + "message": "Instance of 'Recall' has no 'small_objects' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.metrics.recall", + "obj": "Recall.plot", + "line": 720, + "column": 28, + "endLine": 720, + "endColumn": 46, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "no-member", + "message": "Instance of 'Recall' has no 'small_objects' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.metrics.recall", + "obj": "Recall.plot", + "line": 725, + "column": 11, + "endLine": 725, + "endColumn": 30, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "no-member", + "message": "Instance of 'Recall' has no 'medium_objects' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.metrics.recall", + "obj": "Recall.plot", + "line": 726, + "column": 29, + "endLine": 726, + "endColumn": 48, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "no-member", + "message": "Instance of 'Recall' has no 'medium_objects' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.metrics.recall", + "obj": "Recall.plot", + "line": 731, + "column": 11, + "endLine": 731, + "endColumn": 29, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "no-member", + "message": "Instance of 'Recall' has no 'large_objects' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.metrics.recall", + "obj": "Recall.plot", + "line": 732, + "column": 28, + "endLine": 732, + "endColumn": 46, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "no-member", + "message": "Instance of 'Recall' has no 'large_objects' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.metrics.recall", + "obj": "Recall.plot", + "line": 744, + "column": 26, + "endLine": 744, + "endColumn": 44, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "no-member", + "message": "Instance of 'Recall' has no 'metric_target' member; maybe '_metric_target'?", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack.update_with_tensors", + "line": 220, + "column": 42, + "endLine": 220, + "endColumn": 60, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "no-member", + "message": "Instance of 'ByteTrack' has no 'shared_kalman' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack._split_by_confidence", + "line": 274, + "column": 29, + "endLine": 274, + "endColumn": 60, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "no-member", + "message": "Instance of 'ByteTrack' has no 'track_activation_threshold' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack._split_by_confidence", + "line": 286, + "column": 16, + "endLine": 286, + "endColumn": 27, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "undefined-variable", + "message": "Undefined variable 'unconfirmed'", + "message-id": "E0602" + }, + { + "type": "error", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack._split_by_confidence", + "line": 288, + "column": 16, + "endLine": 288, + "endColumn": 31, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "undefined-variable", + "message": "Undefined variable 'tracked_stracks'", + "message-id": "E0602" + }, + { + "type": "error", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack._split_by_confidence", + "line": 291, + "column": 35, + "endLine": 291, + "endColumn": 50, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "undefined-variable", + "message": "Undefined variable 'tracked_stracks'", + "message-id": "E0602" + }, + { + "type": "error", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack._build_stracks", + "line": 300, + "column": 12, + "endLine": 307, + "endColumn": 13, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "too-many-function-args", + "message": "Too many positional arguments for constructor call", + "message-id": "E1121" + }, + { + "type": "error", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack._build_stracks", + "line": 303, + "column": 16, + "endLine": 303, + "endColumn": 47, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "no-member", + "message": "Instance of 'ByteTrack' has no 'minimum_consecutive_frames' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack._build_stracks", + "line": 304, + "column": 16, + "endLine": 304, + "endColumn": 34, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "no-member", + "message": "Instance of 'ByteTrack' has no 'shared_kalman' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack._build_stracks", + "line": 305, + "column": 16, + "endLine": 305, + "endColumn": 40, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "no-member", + "message": "Instance of 'ByteTrack' has no 'internal_id_counter' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack._build_stracks", + "line": 306, + "column": 16, + "endLine": 306, + "endColumn": 40, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "no-member", + "message": "Instance of 'ByteTrack' has no 'external_id_counter' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack._remove_stale_lost_tracks", + "line": 421, + "column": 48, + "endLine": 421, + "endColumn": 66, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "no-member", + "message": "Instance of 'ByteTrack' has no 'max_time_lost' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack._remove_stale_lost_tracks", + "line": 430, + "column": 39, + "endLine": 430, + "endColumn": 56, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "undefined-variable", + "message": "Undefined variable 'activated_starcks'", + "message-id": "E0602" + }, + { + "type": "error", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack._remove_stale_lost_tracks", + "line": 433, + "column": 39, + "endLine": 433, + "endColumn": 53, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "undefined-variable", + "message": "Undefined variable 'refind_stracks'", + "message-id": "E0602" + }, + { + "type": "error", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack._remove_stale_lost_tracks", + "line": 438, + "column": 38, + "endLine": 438, + "endColumn": 50, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "undefined-variable", + "message": "Undefined variable 'lost_stracks'", + "message-id": "E0602" + }, + { + "type": "error", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack._remove_stale_lost_tracks", + "line": 442, + "column": 36, + "endLine": 442, + "endColumn": 51, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "undefined-variable", + "message": "Undefined variable 'removed_stracks'", + "message-id": "E0602" + }, + { + "type": "error", + "module": "supervision.utils.conversion", + "obj": "pillow_to_cv2", + "line": 160, + "column": 12, + "endLine": 160, + "endColumn": 24, + "path": "src\\supervision\\utils\\conversion.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'cvtColor' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.conversion", + "obj": "pillow_to_cv2", + "line": 160, + "column": 32, + "endLine": 160, + "endColumn": 49, + "path": "src\\supervision\\utils\\conversion.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'COLOR_RGB2BGR' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.conversion", + "obj": "cv2_to_pillow", + "line": 177, + "column": 12, + "endLine": 177, + "endColumn": 24, + "path": "src\\supervision\\utils\\conversion.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'cvtColor' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.conversion", + "obj": "cv2_to_pillow", + "line": 177, + "column": 32, + "endLine": 177, + "endColumn": 49, + "path": "src\\supervision\\utils\\conversion.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'COLOR_BGR2RGB' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.image", + "obj": "scale_image", + "line": 142, + "column": 11, + "endLine": 142, + "endColumn": 21, + "path": "src\\supervision\\utils\\image.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'resize' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.image", + "obj": "scale_image", + "line": 142, + "column": 68, + "endLine": 142, + "endColumn": 84, + "path": "src\\supervision\\utils\\image.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'INTER_LINEAR' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.image", + "obj": "resize_image", + "line": 206, + "column": 11, + "endLine": 206, + "endColumn": 21, + "path": "src\\supervision\\utils\\image.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'resize' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.image", + "obj": "resize_image", + "line": 206, + "column": 68, + "endLine": 206, + "endColumn": 84, + "path": "src\\supervision\\utils\\image.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'INTER_LINEAR' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.image", + "obj": "letterbox_image", + "line": 265, + "column": 25, + "endLine": 265, + "endColumn": 43, + "path": "src\\supervision\\utils\\image.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'copyMakeBorder' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.image", + "obj": "letterbox_image", + "line": 271, + "column": 8, + "endLine": 271, + "endColumn": 27, + "path": "src\\supervision\\utils\\image.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'BORDER_CONSTANT' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.image", + "obj": "overlay_image", + "line": 317, + "column": 32, + "endLine": 317, + "endColumn": 43, + "path": "src\\supervision\\utils\\image.py", + "symbol": "no-member", + "message": "Module 'supervision.utils.image' has no 'shape' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.image", + "obj": "overlay_image", + "line": 338, + "column": 25, + "endLine": 338, + "endColumn": 34, + "path": "src\\supervision\\utils\\image.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'split' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.image", + "obj": "overlay_image", + "line": 342, + "column": 24, + "endLine": 342, + "endColumn": 33, + "path": "src\\supervision\\utils\\image.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'merge' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.image", + "obj": "overlay_image", + "line": 344, + "column": 14, + "endLine": 344, + "endColumn": 19, + "path": "src\\supervision\\utils\\image.py", + "symbol": "unsubscriptable-object", + "message": "Value 'image' is unsubscriptable", + "message-id": "E1136" + }, + { + "type": "error", + "module": "supervision.utils.image", + "obj": "overlay_image", + "line": 346, + "column": 8, + "endLine": 346, + "endColumn": 13, + "path": "src\\supervision\\utils\\image.py", + "symbol": "unsupported-assignment-operation", + "message": "'image' does not support item assignment", + "message-id": "E1137" + }, + { + "type": "error", + "module": "supervision.utils.image", + "obj": "overlay_image", + "line": 348, + "column": 8, + "endLine": 348, + "endColumn": 13, + "path": "src\\supervision\\utils\\image.py", + "symbol": "unsupported-assignment-operation", + "message": "'image' does not support item assignment", + "message-id": "E1137" + }, + { + "type": "error", + "module": "supervision.utils.image", + "obj": "tint_image", + "line": 397, + "column": 4, + "endLine": 397, + "endColumn": 19, + "path": "src\\supervision\\utils\\image.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'addWeighted' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.image", + "obj": "grayscale_image", + "line": 430, + "column": 17, + "endLine": 430, + "endColumn": 29, + "path": "src\\supervision\\utils\\image.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'cvtColor' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.image", + "obj": "grayscale_image", + "line": 430, + "column": 37, + "endLine": 430, + "endColumn": 55, + "path": "src\\supervision\\utils\\image.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'COLOR_BGR2GRAY' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.image", + "obj": "grayscale_image", + "line": 431, + "column": 11, + "endLine": 431, + "endColumn": 23, + "path": "src\\supervision\\utils\\image.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'cvtColor' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.image", + "obj": "grayscale_image", + "line": 431, + "column": 36, + "endLine": 431, + "endColumn": 54, + "path": "src\\supervision\\utils\\image.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'COLOR_GRAY2BGR' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.image", + "obj": "ImageSink.save_image", + "line": 548, + "column": 8, + "endLine": 548, + "endColumn": 19, + "path": "src\\supervision\\utils\\image.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'imwrite' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.image", + "obj": "create_tiles", + "line": 580, + "column": 28, + "endLine": 580, + "endColumn": 52, + "path": "src\\supervision\\utils\\image.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'FONT_HERSHEY_SIMPLEX' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.notebook", + "obj": "plot_image", + "line": 44, + "column": 19, + "endLine": 44, + "endColumn": 31, + "path": "src\\supervision\\utils\\notebook.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'cvtColor' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.notebook", + "obj": "plot_image", + "line": 44, + "column": 39, + "endLine": 44, + "endColumn": 56, + "path": "src\\supervision\\utils\\notebook.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'COLOR_BGR2RGB' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.notebook", + "obj": "plot_images_grid", + "line": 111, + "column": 26, + "endLine": 111, + "endColumn": 38, + "path": "src\\supervision\\utils\\notebook.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'cvtColor' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.notebook", + "obj": "plot_images_grid", + "line": 111, + "column": 52, + "endLine": 111, + "endColumn": 69, + "path": "src\\supervision\\utils\\notebook.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'COLOR_BGR2RGB' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.video", + "obj": "VideoInfo.from_video_path", + "line": 60, + "column": 16, + "endLine": 60, + "endColumn": 32, + "path": "src\\supervision\\utils\\video.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'VideoCapture' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.video", + "obj": "VideoInfo.from_video_path", + "line": 64, + "column": 30, + "endLine": 64, + "endColumn": 54, + "path": "src\\supervision\\utils\\video.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'CAP_PROP_FRAME_WIDTH' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.video", + "obj": "VideoInfo.from_video_path", + "line": 65, + "column": 31, + "endLine": 65, + "endColumn": 56, + "path": "src\\supervision\\utils\\video.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'CAP_PROP_FRAME_HEIGHT' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.video", + "obj": "VideoInfo.from_video_path", + "line": 66, + "column": 30, + "endLine": 66, + "endColumn": 46, + "path": "src\\supervision\\utils\\video.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'CAP_PROP_FPS' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.video", + "obj": "VideoInfo.from_video_path", + "line": 67, + "column": 37, + "endLine": 67, + "endColumn": 61, + "path": "src\\supervision\\utils\\video.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'CAP_PROP_FRAME_COUNT' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.video", + "obj": "VideoSink.__enter__", + "line": 107, + "column": 28, + "endLine": 107, + "endColumn": 50, + "path": "src\\supervision\\utils\\video.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'VideoWriter_fourcc' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.video", + "obj": "VideoSink.__enter__", + "line": 110, + "column": 28, + "endLine": 110, + "endColumn": 50, + "path": "src\\supervision\\utils\\video.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'VideoWriter_fourcc' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.video", + "obj": "VideoSink.__enter__", + "line": 111, + "column": 24, + "endLine": 111, + "endColumn": 39, + "path": "src\\supervision\\utils\\video.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'VideoWriter' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.video", + "obj": "_validate_and_setup_video", + "line": 210, + "column": 12, + "endLine": 210, + "endColumn": 28, + "path": "src\\supervision\\utils\\video.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'VideoCapture' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.video", + "obj": "_validate_and_setup_video", + "line": 213, + "column": 33, + "endLine": 213, + "endColumn": 57, + "path": "src\\supervision\\utils\\video.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'CAP_PROP_FRAME_COUNT' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.video", + "obj": "_validate_and_setup_video", + "line": 226, + "column": 18, + "endLine": 226, + "endColumn": 41, + "path": "src\\supervision\\utils\\video.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'CAP_PROP_POS_FRAMES' member", + "message-id": "E1101" + } +] \ No newline at end of file diff --git a/metrics-after-pylint/pylint_fatal_depois.json b/metrics-after-pylint/pylint_fatal_depois.json new file mode 100644 index 0000000000..0637a088a0 --- /dev/null +++ b/metrics-after-pylint/pylint_fatal_depois.json @@ -0,0 +1 @@ +[] \ No newline at end of file diff --git a/metrics-after-pylint/pylint_ranking_smells_depois.json b/metrics-after-pylint/pylint_ranking_smells_depois.json new file mode 100644 index 0000000000..ba67a1910e --- /dev/null +++ b/metrics-after-pylint/pylint_ranking_smells_depois.json @@ -0,0 +1,74 @@ +[ + { + "simbolo": "too-many-locals", + "ocorrencias": 67 + }, + { + "simbolo": "duplicate-code", + "ocorrencias": 52 + }, + { + "simbolo": "too-many-arguments", + "ocorrencias": 42 + }, + { + "simbolo": "too-many-positional-arguments", + "ocorrencias": 37 + }, + { + "simbolo": "too-few-public-methods", + "ocorrencias": 34 + }, + { + "simbolo": "no-else-return", + "ocorrencias": 13 + }, + { + "simbolo": "too-many-instance-attributes", + "ocorrencias": 11 + }, + { + "simbolo": "use-dict-literal", + "ocorrencias": 11 + }, + { + "simbolo": "too-many-return-statements", + "ocorrencias": 6 + }, + { + "simbolo": "consider-using-in", + "ocorrencias": 4 + }, + { + "simbolo": "use-a-generator", + "ocorrencias": 4 + }, + { + "simbolo": "no-else-raise", + "ocorrencias": 4 + }, + { + "simbolo": "inconsistent-return-statements", + "ocorrencias": 3 + }, + { + "simbolo": "unnecessary-comprehension", + "ocorrencias": 3 + }, + { + "simbolo": "too-many-public-methods", + "ocorrencias": 2 + }, + { + "simbolo": "consider-using-with", + "ocorrencias": 2 + }, + { + "simbolo": "too-many-nested-blocks", + "ocorrencias": 2 + }, + { + "simbolo": "cyclic-import", + "ocorrencias": 1 + } +] \ No newline at end of file diff --git a/metrics-after-pylint/pylint_refactor_depois.json b/metrics-after-pylint/pylint_refactor_depois.json new file mode 100644 index 0000000000..1aecd11c7e --- /dev/null +++ b/metrics-after-pylint/pylint_refactor_depois.json @@ -0,0 +1,3876 @@ +[ + { + "type": "refactor", + "module": "supervision.annotators.base", + "obj": "BaseAnnotator", + "line": 7, + "column": 0, + "endLine": 7, + "endColumn": 19, + "path": "src\\supervision\\annotators\\base.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "_LabelAnnotatorConfig", + "line": 85, + "column": 0, + "endLine": 85, + "endColumn": 27, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-instance-attributes", + "message": "Too many instance attributes (9/7)", + "message-id": "R0902" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "_BaseLabelAnnotator.__init__", + "line": 102, + "column": 4, + "endLine": 102, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (9/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "_BaseLabelAnnotator.__init__", + "line": 102, + "column": 4, + "endLine": 102, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (9/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "BoxAnnotator", + "line": 263, + "column": 0, + "endLine": 263, + "endColumn": 18, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "OrientedBoxAnnotator", + "line": 350, + "column": 0, + "endLine": 350, + "endColumn": 26, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "_paint_masks_by_area", + "line": 438, + "column": 0, + "endLine": 438, + "endColumn": 24, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-locals", + "message": "Too many local variables (16/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "MaskAnnotator", + "line": 496, + "column": 0, + "endLine": 496, + "endColumn": 19, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "PolygonAnnotator", + "line": 584, + "column": 0, + "endLine": 584, + "endColumn": 22, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "ColorAnnotator", + "line": 679, + "column": 0, + "endLine": 679, + "endColumn": 20, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "HaloAnnotator", + "line": 771, + "column": 0, + "endLine": 771, + "endColumn": 19, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "EllipseAnnotator", + "line": 873, + "column": 0, + "endLine": 873, + "endColumn": 22, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "BoxCornerAnnotator", + "line": 972, + "column": 0, + "endLine": 972, + "endColumn": 24, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "CircleAnnotator", + "line": 1067, + "column": 0, + "endLine": 1067, + "endColumn": 21, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "DotAnnotator.__init__", + "line": 1165, + "column": 4, + "endLine": 1165, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (6/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "DotAnnotator.__init__", + "line": 1165, + "column": 4, + "endLine": 1165, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (6/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "DotAnnotator", + "line": 1159, + "column": 0, + "endLine": 1159, + "endColumn": 18, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "LabelAnnotator.__init__", + "line": 1275, + "column": 4, + "endLine": 1275, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (11/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "LabelAnnotator.__init__", + "line": 1275, + "column": 4, + "endLine": 1275, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (11/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "LabelAnnotator._get_label_properties", + "line": 1406, + "column": 4, + "endLine": 1406, + "endColumn": 29, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-locals", + "message": "Too many local variables (18/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "LabelAnnotator._draw_labels", + "line": 1460, + "column": 4, + "endLine": 1460, + "endColumn": 20, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-locals", + "message": "Too many local variables (18/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "RichLabelAnnotator.__init__", + "line": 1591, + "column": 4, + "endLine": 1591, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (11/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "RichLabelAnnotator.__init__", + "line": 1591, + "column": 4, + "endLine": 1591, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (11/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "RichLabelAnnotator._get_label_properties", + "line": 1722, + "column": 4, + "endLine": 1722, + "endColumn": 29, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-locals", + "message": "Too many local variables (24/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "RichLabelAnnotator._draw_labels", + "line": 1774, + "column": 4, + "endLine": 1774, + "endColumn": 20, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-locals", + "message": "Too many local variables (23/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "IconAnnotator", + "line": 1861, + "column": 0, + "endLine": 1861, + "endColumn": 19, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "BlurAnnotator", + "line": 1970, + "column": 0, + "endLine": 1970, + "endColumn": 19, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "TraceAnnotator.__init__", + "line": 2058, + "column": 4, + "endLine": 2058, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (6/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "TraceAnnotator.__init__", + "line": 2058, + "column": 4, + "endLine": 2058, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (6/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "TraceAnnotator.annotate", + "line": 2090, + "column": 4, + "endLine": 2090, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-locals", + "message": "Too many local variables (17/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "TraceAnnotator", + "line": 2047, + "column": 0, + "endLine": 2047, + "endColumn": 20, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "HeatMapAnnotator.__init__", + "line": 2199, + "column": 4, + "endLine": 2199, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (6/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "HeatMapAnnotator.__init__", + "line": 2199, + "column": 4, + "endLine": 2199, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (6/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "HeatMapAnnotator", + "line": 2192, + "column": 0, + "endLine": 2192, + "endColumn": 22, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "PixelateAnnotator", + "line": 2304, + "column": 0, + "endLine": 2304, + "endColumn": 23, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "TriangleAnnotator.__init__", + "line": 2404, + "column": 4, + "endLine": 2404, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (7/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "TriangleAnnotator.__init__", + "line": 2404, + "column": 4, + "endLine": 2404, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (7/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "TriangleAnnotator", + "line": 2398, + "column": 0, + "endLine": 2398, + "endColumn": 23, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "RoundBoxAnnotator.annotate", + "line": 2553, + "column": 4, + "endLine": 2553, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-locals", + "message": "Too many local variables (19/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "RoundBoxAnnotator", + "line": 2520, + "column": 0, + "endLine": 2520, + "endColumn": 23, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "PercentageBarAnnotator.__init__", + "line": 2661, + "column": 4, + "endLine": 2661, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (7/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "PercentageBarAnnotator.__init__", + "line": 2661, + "column": 4, + "endLine": 2661, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (7/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "PercentageBarAnnotator.calculate_border_coordinates", + "line": 2801, + "column": 8, + "endLine": 2821, + "endColumn": 54, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-else-return", + "message": "Unnecessary \"elif\" after \"return\", remove the leading \"el\" from \"elif\"", + "message-id": "R1705" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "PercentageBarAnnotator.calculate_border_coordinates", + "line": 2809, + "column": 13, + "endLine": 2809, + "endColumn": 79, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "consider-using-in", + "message": "Consider merging these comparisons with 'in' by using 'position in (Position.CENTER, Position.CENTER_OF_MASS)'. Use a set instead if elements are hashable.", + "message-id": "R1714" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "PercentageBarAnnotator.calculate_border_coordinates", + "line": 2795, + "column": 4, + "endLine": 2795, + "endColumn": 36, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-return-statements", + "message": "Too many return statements (9/6)", + "message-id": "R0911" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "PercentageBarAnnotator.calculate_border_coordinates", + "line": 2795, + "column": 4, + "endLine": 2795, + "endColumn": 36, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "inconsistent-return-statements", + "message": "Either all return statements in a function should return an expression, or none of them should.", + "message-id": "R1710" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "CropAnnotator.annotate", + "line": 2896, + "column": 4, + "endLine": 2896, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-locals", + "message": "Too many local variables (16/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "CropAnnotator.calculate_crop_coordinates", + "line": 2983, + "column": 8, + "endLine": 3015, + "endColumn": 78, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-else-return", + "message": "Unnecessary \"elif\" after \"return\", remove the leading \"el\" from \"elif\"", + "message-id": "R1705" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "CropAnnotator.calculate_crop_coordinates", + "line": 2997, + "column": 13, + "endLine": 2997, + "endColumn": 79, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "consider-using-in", + "message": "Consider merging these comparisons with 'in' by using 'position in (Position.CENTER, Position.CENTER_OF_MASS)'. Use a set instead if elements are hashable.", + "message-id": "R1714" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "CropAnnotator.calculate_crop_coordinates", + "line": 2977, + "column": 4, + "endLine": 2977, + "endColumn": 34, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-return-statements", + "message": "Too many return statements (9/6)", + "message-id": "R0911" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "CropAnnotator.calculate_crop_coordinates", + "line": 2977, + "column": 4, + "endLine": 2977, + "endColumn": 34, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "inconsistent-return-statements", + "message": "Either all return statements in a function should return an expression, or none of them should.", + "message-id": "R1710" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "BackgroundOverlayAnnotator", + "line": 3018, + "column": 0, + "endLine": 3018, + "endColumn": 32, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "_ComparisonAnnotatorConfig", + "line": 3106, + "column": 0, + "endLine": 3106, + "endColumn": 32, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-instance-attributes", + "message": "Too many instance attributes (8/7)", + "message-id": "R0902" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "ComparisonAnnotator.__init__", + "line": 3128, + "column": 4, + "endLine": 3128, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (8/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "ComparisonAnnotator._draw_labels", + "line": 3311, + "column": 4, + "endLine": 3311, + "endColumn": 20, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-locals", + "message": "Too many local variables (21/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "ComparisonAnnotator", + "line": 3117, + "column": 0, + "endLine": 3117, + "endColumn": 25, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.annotators.utils", + "obj": "resolve_color_idx", + "line": 51, + "column": 4, + "endLine": 76, + "endColumn": 56, + "path": "src\\supervision\\annotators\\utils.py", + "symbol": "no-else-return", + "message": "Unnecessary \"elif\" after \"return\", remove the leading \"el\" from \"elif\"", + "message-id": "R1705" + }, + { + "type": "refactor", + "module": "supervision.annotators.utils", + "obj": "resolve_text_background_xyxy", + "line": 88, + "column": 4, + "endLine": 130, + "endColumn": 9, + "path": "src\\supervision\\annotators\\utils.py", + "symbol": "no-else-return", + "message": "Unnecessary \"elif\" after \"return\", remove the leading \"el\" from \"elif\"", + "message-id": "R1705" + }, + { + "type": "refactor", + "module": "supervision.annotators.utils", + "obj": "resolve_text_background_xyxy", + "line": 99, + "column": 9, + "endLine": 99, + "endColumn": 75, + "path": "src\\supervision\\annotators\\utils.py", + "symbol": "consider-using-in", + "message": "Consider merging these comparisons with 'in' by using 'position in (Position.CENTER, Position.CENTER_OF_MASS)'. Use a set instead if elements are hashable.", + "message-id": "R1714" + }, + { + "type": "refactor", + "module": "supervision.annotators.utils", + "obj": "resolve_text_background_xyxy", + "line": 80, + "column": 0, + "endLine": 80, + "endColumn": 32, + "path": "src\\supervision\\annotators\\utils.py", + "symbol": "too-many-return-statements", + "message": "Too many return statements (9/6)", + "message-id": "R0911" + }, + { + "type": "refactor", + "module": "supervision.annotators.utils", + "obj": "resolve_text_background_xyxy", + "line": 80, + "column": 0, + "endLine": 80, + "endColumn": 32, + "path": "src\\supervision\\annotators\\utils.py", + "symbol": "inconsistent-return-statements", + "message": "Either all return statements in a function should return an expression, or none of them should.", + "message-id": "R1710" + }, + { + "type": "refactor", + "module": "supervision.dataset.core", + "obj": "DetectionDataset.merge", + "line": 285, + "column": 24, + "endLine": 285, + "endColumn": 80, + "path": "src\\supervision\\dataset\\core.py", + "symbol": "use-a-generator", + "message": "Use a generator instead 'all(is_in_memory(dataset) for dataset in dataset_list)'", + "message-id": "R1729" + }, + { + "type": "refactor", + "module": "supervision.dataset.core", + "obj": "DetectionDataset.merge", + "line": 286, + "column": 19, + "endLine": 286, + "endColumn": 70, + "path": "src\\supervision\\dataset\\core.py", + "symbol": "use-a-generator", + "message": "Use a generator instead 'all(is_lazy(dataset) for dataset in dataset_list)'", + "message-id": "R1729" + }, + { + "type": "refactor", + "module": "supervision.dataset.core", + "obj": "DetectionDataset.as_yolo", + "line": 504, + "column": 4, + "endLine": 504, + "endColumn": 15, + "path": "src\\supervision\\dataset\\core.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (7/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.dataset.core", + "obj": "DetectionDataset.as_yolo", + "line": 504, + "column": 4, + "endLine": 504, + "endColumn": 15, + "path": "src\\supervision\\dataset\\core.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (7/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.dataset.core", + "obj": "DetectionDataset.as_coco", + "line": 626, + "column": 4, + "endLine": 626, + "endColumn": 15, + "path": "src\\supervision\\dataset\\core.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (7/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.dataset.core", + "obj": "DetectionDataset.as_coco", + "line": 626, + "column": 4, + "endLine": 626, + "endColumn": 15, + "path": "src\\supervision\\dataset\\core.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (7/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.coco", + "obj": "coco_annotations_to_detections", + "line": 194, + "column": 15, + "endLine": 196, + "endColumn": 9, + "path": "src\\supervision\\dataset\\formats\\coco.py", + "symbol": "use-dict-literal", + "message": "Consider using '{\"iscrowd\": np.asarray(iscrowd, dtype=int), \"area\": np.asarray(area, dtype=float), ... }' instead of a call to 'dict'.", + "message-id": "R1735" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.coco", + "obj": "_build_coco_segmentation_from_mask", + "line": 218, + "column": 0, + "endLine": 218, + "endColumn": 38, + "path": "src\\supervision\\dataset\\formats\\coco.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (6/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.coco", + "obj": "_build_coco_segmentation_from_mask", + "line": 218, + "column": 0, + "endLine": 218, + "endColumn": 38, + "path": "src\\supervision\\dataset\\formats\\coco.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (6/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.coco", + "obj": "detections_to_coco_annotations", + "line": 283, + "column": 0, + "endLine": 283, + "endColumn": 34, + "path": "src\\supervision\\dataset\\formats\\coco.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (6/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.coco", + "obj": "detections_to_coco_annotations", + "line": 283, + "column": 0, + "endLine": 283, + "endColumn": 34, + "path": "src\\supervision\\dataset\\formats\\coco.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (6/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.coco", + "obj": "detections_to_coco_annotations", + "line": 283, + "column": 0, + "endLine": 283, + "endColumn": 34, + "path": "src\\supervision\\dataset\\formats\\coco.py", + "symbol": "too-many-locals", + "message": "Too many local variables (18/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.coco", + "obj": "load_coco_annotations", + "line": 423, + "column": 0, + "endLine": 423, + "endColumn": 25, + "path": "src\\supervision\\dataset\\formats\\coco.py", + "symbol": "too-many-locals", + "message": "Too many local variables (22/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.coco", + "obj": "save_coco_annotations", + "line": 534, + "column": 0, + "endLine": 534, + "endColumn": 25, + "path": "src\\supervision\\dataset\\formats\\coco.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (7/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.coco", + "obj": "save_coco_annotations", + "line": 534, + "column": 0, + "endLine": 534, + "endColumn": 25, + "path": "src\\supervision\\dataset\\formats\\coco.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (7/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.coco", + "obj": "save_coco_annotations", + "line": 534, + "column": 0, + "endLine": 534, + "endColumn": 25, + "path": "src\\supervision\\dataset\\formats\\coco.py", + "symbol": "too-many-locals", + "message": "Too many local variables (22/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.pascal_voc", + "obj": "object_to_pascal_voc", + "line": 19, + "column": 0, + "endLine": 19, + "endColumn": 24, + "path": "src\\supervision\\dataset\\formats\\pascal_voc.py", + "symbol": "too-many-locals", + "message": "Too many local variables (17/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.pascal_voc", + "obj": "detections_to_pascal_voc", + "line": 84, + "column": 0, + "endLine": 84, + "endColumn": 28, + "path": "src\\supervision\\dataset\\formats\\pascal_voc.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (7/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.pascal_voc", + "obj": "detections_to_pascal_voc", + "line": 84, + "column": 0, + "endLine": 84, + "endColumn": 28, + "path": "src\\supervision\\dataset\\formats\\pascal_voc.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (7/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.pascal_voc", + "obj": "detections_to_pascal_voc", + "line": 84, + "column": 0, + "endLine": 84, + "endColumn": 28, + "path": "src\\supervision\\dataset\\formats\\pascal_voc.py", + "symbol": "too-many-locals", + "message": "Too many local variables (28/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.pascal_voc", + "obj": "detections_from_xml_obj", + "line": 235, + "column": 0, + "endLine": 235, + "endColumn": 27, + "path": "src\\supervision\\dataset\\formats\\pascal_voc.py", + "symbol": "too-many-locals", + "message": "Too many local variables (24/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.yolo", + "obj": "_with_seg_mask", + "line": 67, + "column": 11, + "endLine": 67, + "endColumn": 57, + "path": "src\\supervision\\dataset\\formats\\yolo.py", + "symbol": "use-a-generator", + "message": "Use a generator instead 'any(len(line.split()) > 5 for line in lines)'", + "message-id": "R1729" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.yolo", + "obj": "yolo_annotations_to_detections", + "line": 138, + "column": 0, + "endLine": 138, + "endColumn": 34, + "path": "src\\supervision\\dataset\\formats\\yolo.py", + "symbol": "too-many-locals", + "message": "Too many local variables (19/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.yolo", + "obj": "load_yolo_annotations", + "line": 187, + "column": 0, + "endLine": 187, + "endColumn": 25, + "path": "src\\supervision\\dataset\\formats\\yolo.py", + "symbol": "too-many-locals", + "message": "Too many local variables (18/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.yolo", + "obj": "object_to_yolo", + "line": 274, + "column": 0, + "endLine": 274, + "endColumn": 18, + "path": "src\\supervision\\dataset\\formats\\yolo.py", + "symbol": "too-many-locals", + "message": "Too many local variables (17/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.yolo", + "obj": "object_to_yolo", + "line": 281, + "column": 4, + "endLine": 293, + "endColumn": 50, + "path": "src\\supervision\\dataset\\formats\\yolo.py", + "symbol": "no-else-return", + "message": "Unnecessary \"else\" after \"return\", remove the \"else\" and de-indent the code inside it", + "message-id": "R1705" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.yolo", + "obj": "detections_to_yolo_annotations", + "line": 296, + "column": 0, + "endLine": 296, + "endColumn": 34, + "path": "src\\supervision\\dataset\\formats\\yolo.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (6/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.yolo", + "obj": "detections_to_yolo_annotations", + "line": 296, + "column": 0, + "endLine": 296, + "endColumn": 34, + "path": "src\\supervision\\dataset\\formats\\yolo.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (6/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.yolo", + "obj": "detections_to_yolo_annotations", + "line": 296, + "column": 0, + "endLine": 296, + "endColumn": 34, + "path": "src\\supervision\\dataset\\formats\\yolo.py", + "symbol": "too-many-locals", + "message": "Too many local variables (16/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.yolo", + "obj": "save_yolo_annotations", + "line": 422, + "column": 0, + "endLine": 422, + "endColumn": 25, + "path": "src\\supervision\\dataset\\formats\\yolo.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (6/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.yolo", + "obj": "save_yolo_annotations", + "line": 422, + "column": 0, + "endLine": 422, + "endColumn": 25, + "path": "src\\supervision\\dataset\\formats\\yolo.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (6/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.detection.compact_mask", + "obj": "CompactMask.from_dense", + "line": 476, + "column": 4, + "endLine": 476, + "endColumn": 18, + "path": "src\\supervision\\detection\\compact_mask.py", + "symbol": "too-many-locals", + "message": "Too many local variables (24/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.detection.compact_mask", + "obj": "CompactMask.repack", + "line": 984, + "column": 4, + "endLine": 984, + "endColumn": 14, + "path": "src\\supervision\\detection\\compact_mask.py", + "symbol": "too-many-locals", + "message": "Too many local variables (18/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.detection.compact_mask", + "obj": "CompactMask.with_offset", + "line": 1067, + "column": 4, + "endLine": 1067, + "endColumn": 19, + "path": "src\\supervision\\detection\\compact_mask.py", + "symbol": "too-many-locals", + "message": "Too many local variables (29/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.detection.compact_mask", + "obj": "CompactMask.resize", + "line": 1192, + "column": 4, + "endLine": 1192, + "endColumn": 14, + "path": "src\\supervision\\detection\\compact_mask.py", + "symbol": "too-many-locals", + "message": "Too many local variables (27/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.detection.core", + "obj": "Detections.from_transformers", + "line": 560, + "column": 8, + "endLine": 570, + "endColumn": 13, + "path": "src\\supervision\\detection\\core.py", + "symbol": "no-else-return", + "message": "Unnecessary \"else\" after \"return\", remove the \"else\" and de-indent the code inside it", + "message-id": "R1705" + }, + { + "type": "refactor", + "module": "supervision.detection.core", + "obj": "Detections.from_sam3", + "line": 718, + "column": 4, + "endLine": 718, + "endColumn": 17, + "path": "src\\supervision\\detection\\core.py", + "symbol": "too-many-locals", + "message": "Too many local variables (20/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.detection.core", + "obj": "Detections.from_azure_analyze_image", + "line": 813, + "column": 4, + "endLine": 813, + "endColumn": 32, + "path": "src\\supervision\\detection\\core.py", + "symbol": "too-many-locals", + "message": "Too many local variables (19/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.detection.core", + "obj": "Detections.from_vlm", + "line": 1431, + "column": 4, + "endLine": 1431, + "endColumn": 16, + "path": "src\\supervision\\detection\\core.py", + "symbol": "too-many-return-statements", + "message": "Too many return statements (10/6)", + "message-id": "R0911" + }, + { + "type": "refactor", + "module": "supervision.detection.core", + "obj": "Detections.get_anchors_coordinates", + "line": 2206, + "column": 8, + "endLine": 2248, + "endColumn": 75, + "path": "src\\supervision\\detection\\core.py", + "symbol": "no-else-return", + "message": "Unnecessary \"elif\" after \"return\", remove the leading \"el\" from \"elif\"", + "message-id": "R1705" + }, + { + "type": "refactor", + "module": "supervision.detection.core", + "obj": "Detections.get_anchors_coordinates", + "line": 2187, + "column": 4, + "endLine": 2187, + "endColumn": 31, + "path": "src\\supervision\\detection\\core.py", + "symbol": "too-many-return-statements", + "message": "Too many return statements (10/6)", + "message-id": "R0911" + }, + { + "type": "refactor", + "module": "supervision.detection.core", + "obj": "Detections", + "line": 68, + "column": 0, + "endLine": 68, + "endColumn": 16, + "path": "src\\supervision\\detection\\core.py", + "symbol": "too-many-public-methods", + "message": "Too many public methods (26/20)", + "message-id": "R0904" + }, + { + "type": "refactor", + "module": "supervision.detection.core", + "obj": "_merge_detection_group", + "line": 2648, + "column": 0, + "endLine": 2648, + "endColumn": 26, + "path": "src\\supervision\\detection\\core.py", + "symbol": "too-many-locals", + "message": "Too many local variables (18/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotatorConfig", + "line": 28, + "column": 0, + "endLine": 28, + "endColumn": 29, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "too-many-instance-attributes", + "message": "Too many instance attributes (14/7)", + "message-id": "R0902" + }, + { + "type": "refactor", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotatorMulticlassConfig", + "line": 46, + "column": 0, + "endLine": 46, + "endColumn": 39, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "too-many-instance-attributes", + "message": "Too many instance attributes (9/7)", + "message-id": "R0902" + }, + { + "type": "refactor", + "module": "supervision.detection.line_zone", + "obj": "LineZone._update_class_id_to_name", + "line": 373, + "column": 24, + "endLine": 376, + "endColumn": 13, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "unnecessary-comprehension", + "message": "Unnecessary use of a comprehension, use dict(zip(detections.class_id, class_names)) instead.", + "message-id": "R1721" + }, + { + "type": "refactor", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator.__init__", + "line": 381, + "column": 4, + "endLine": 381, + "endColumn": 16, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (14/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator.__init__", + "line": 381, + "column": 4, + "endLine": 381, + "endColumn": 16, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (14/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator._calculate_anchor_in_frame", + "line": 534, + "column": 4, + "endLine": 534, + "endColumn": 34, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "too-many-locals", + "message": "Too many local variables (16/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator._make_label_image", + "line": 700, + "column": 4, + "endLine": 700, + "endColumn": 25, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (8/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator._make_label_image", + "line": 700, + "column": 4, + "endLine": 700, + "endColumn": 25, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "too-many-locals", + "message": "Too many local variables (18/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator._make_label_image", + "line": 738, + "column": 36, + "endLine": 744, + "endColumn": 9, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "use-dict-literal", + "message": "Consider using '{\"text\": text, \"text_anchor\": annotation_center, \"text_scale\": text_scale, ... }' instead of a call to 'dict'.", + "message-id": "R1735" + }, + { + "type": "refactor", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator", + "line": 380, + "column": 0, + "endLine": 380, + "endColumn": 23, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotatorMulticlass.__init__", + "line": 783, + "column": 4, + "endLine": 783, + "endColumn": 16, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (9/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotatorMulticlass.annotate", + "line": 840, + "column": 4, + "endLine": 840, + "endColumn": 16, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "too-many-locals", + "message": "Too many local variables (26/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotatorMulticlass", + "line": 772, + "column": 0, + "endLine": 772, + "endColumn": 33, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.detection.vlm", + "obj": "from_qwen_2_5_vl", + "line": 305, + "column": 0, + "endLine": 305, + "endColumn": 20, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "too-many-locals", + "message": "Too many local variables (20/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.detection.vlm", + "obj": "from_deepseek_vl_2", + "line": 424, + "column": 0, + "endLine": 424, + "endColumn": 22, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "too-many-locals", + "message": "Too many local variables (23/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.detection.vlm", + "obj": "from_florence_2", + "line": 495, + "column": 0, + "endLine": 495, + "endColumn": 19, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "too-many-locals", + "message": "Too many local variables (18/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.detection.vlm", + "obj": "from_florence_2", + "line": 495, + "column": 0, + "endLine": 495, + "endColumn": 19, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "too-many-return-statements", + "message": "Too many return statements (7/6)", + "message-id": "R0911" + }, + { + "type": "refactor", + "module": "supervision.detection.vlm", + "obj": "from_google_gemini_2_5", + "line": 840, + "column": 0, + "endLine": 840, + "endColumn": 26, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "too-many-locals", + "message": "Too many local variables (17/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.csv_sink", + "obj": "WriterProtocol", + "line": 27, + "column": 0, + "endLine": 27, + "endColumn": 20, + "path": "src\\supervision\\detection\\tools\\csv_sink.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.csv_sink", + "obj": "CSVSink.open", + "line": 108, + "column": 20, + "endLine": 108, + "endColumn": 57, + "path": "src\\supervision\\detection\\tools\\csv_sink.py", + "symbol": "consider-using-with", + "message": "Consider using 'with' for resource-allocating operations", + "message-id": "R1732" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.inference_slicer", + "obj": "_InferenceSlicerConfig", + "line": 25, + "column": 0, + "endLine": 25, + "endColumn": 28, + "path": "src\\supervision\\detection\\tools\\inference_slicer.py", + "symbol": "too-many-instance-attributes", + "message": "Too many instance attributes (8/7)", + "message-id": "R0902" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.inference_slicer", + "obj": "InferenceSlicer.__init__", + "line": 166, + "column": 4, + "endLine": 166, + "endColumn": 16, + "path": "src\\supervision\\detection\\tools\\inference_slicer.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (8/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.inference_slicer", + "obj": "InferenceSlicer.__init__", + "line": 166, + "column": 4, + "endLine": 166, + "endColumn": 16, + "path": "src\\supervision\\detection\\tools\\inference_slicer.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (8/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.inference_slicer", + "obj": "InferenceSlicer._run_callback", + "line": 443, + "column": 4, + "endLine": 443, + "endColumn": 21, + "path": "src\\supervision\\detection\\tools\\inference_slicer.py", + "symbol": "too-many-locals", + "message": "Too many local variables (16/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.inference_slicer", + "obj": "InferenceSlicer._generate_offset", + "line": 557, + "column": 4, + "endLine": 557, + "endColumn": 24, + "path": "src\\supervision\\detection\\tools\\inference_slicer.py", + "symbol": "too-many-locals", + "message": "Too many local variables (19/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.json_sink", + "obj": "JSONSink.open", + "line": 82, + "column": 20, + "endLine": 82, + "endColumn": 45, + "path": "src\\supervision\\detection\\tools\\json_sink.py", + "symbol": "consider-using-with", + "message": "Consider using 'with' for resource-allocating operations", + "message-id": "R1732" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.polygon_zone", + "obj": "_PolygonZoneAnnotatorConfig", + "line": 22, + "column": 0, + "endLine": 22, + "endColumn": 33, + "path": "src\\supervision\\detection\\tools\\polygon_zone.py", + "symbol": "too-many-instance-attributes", + "message": "Too many instance attributes (8/7)", + "message-id": "R0902" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.polygon_zone", + "obj": "PolygonZone", + "line": 33, + "column": 0, + "endLine": 33, + "endColumn": 17, + "path": "src\\supervision\\detection\\tools\\polygon_zone.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.polygon_zone", + "obj": "PolygonZoneAnnotator.__init__", + "line": 146, + "column": 4, + "endLine": 146, + "endColumn": 16, + "path": "src\\supervision\\detection\\tools\\polygon_zone.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (9/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.polygon_zone", + "obj": "PolygonZoneAnnotator.__init__", + "line": 146, + "column": 4, + "endLine": 146, + "endColumn": 16, + "path": "src\\supervision\\detection\\tools\\polygon_zone.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (9/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.smoother", + "obj": "DetectionsSmoother.update_with_detections", + "line": 128, + "column": 15, + "endLine": 128, + "endColumn": 62, + "path": "src\\supervision\\detection\\tools\\smoother.py", + "symbol": "use-a-generator", + "message": "Use a generator instead 'all(d is None for d in self.tracks[track_id])'", + "message-id": "R1729" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.transformers", + "obj": "process_transformers_detection_result", + "line": 35, + "column": 11, + "endLine": 40, + "endColumn": 5, + "path": "src\\supervision\\detection\\tools\\transformers.py", + "symbol": "use-dict-literal", + "message": "Consider using '{\"xyxy\": detection_result['boxes'].cpu().detach().numpy(), \"confidence\": detection_result['scores'].cpu().detach().numpy(), ... }' instead of a call to 'dict'.", + "message-id": "R1735" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.transformers", + "obj": "process_transformers_v4_segmentation_result", + "line": 62, + "column": 4, + "endLine": 79, + "endColumn": 9, + "path": "src\\supervision\\detection\\tools\\transformers.py", + "symbol": "no-else-return", + "message": "Unnecessary \"else\" after \"return\", remove the \"else\" and de-indent the code inside it", + "message-id": "R1705" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.transformers", + "obj": "process_transformers_v4_segmentation_result", + "line": 73, + "column": 15, + "endLine": 79, + "endColumn": 9, + "path": "src\\supervision\\detection\\tools\\transformers.py", + "symbol": "use-dict-literal", + "message": "Consider using '{\"xyxy\": boxes if boxes is not None else mask_to_xyxy(masks), \"mask\": np.squeeze(masks, axis=1) if boxes is not None else masks, ... }' instead of a call to 'dict'.", + "message-id": "R1735" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.transformers", + "obj": "process_transformers_v5_semantic_or_instance_segmentation_result", + "line": 139, + "column": 11, + "endLine": 145, + "endColumn": 5, + "path": "src\\supervision\\detection\\tools\\transformers.py", + "symbol": "use-dict-literal", + "message": "Consider using '{\"xyxy\": mask_to_xyxy(masks), \"mask\": masks, \"confidence\": scores}' instead of a call to 'dict'.", + "message-id": "R1735" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.transformers", + "obj": "process_transformers_v4_panoptic_segmentation_result", + "line": 174, + "column": 11, + "endLine": 179, + "endColumn": 5, + "path": "src\\supervision\\detection\\tools\\transformers.py", + "symbol": "use-dict-literal", + "message": "Consider using '{\"xyxy\": mask_to_xyxy(masks), \"mask\": masks, \"class_id\": class_ids, ... }' instead of a call to 'dict'.", + "message-id": "R1735" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.transformers", + "obj": "process_transformers_v5_panoptic_segmentation_result", + "line": 204, + "column": 11, + "endLine": 204, + "endColumn": 84, + "path": "src\\supervision\\detection\\tools\\transformers.py", + "symbol": "use-dict-literal", + "message": "Consider using '{\"xyxy\": mask_to_xyxy(masks), \"mask\": masks, \"class_id\": class_ids, ... }' instead of a call to 'dict'.", + "message-id": "R1735" + }, + { + "type": "refactor", + "module": "supervision.detection.utils.internal", + "obj": "process_roboflow_result", + "line": 81, + "column": 0, + "endLine": 81, + "endColumn": 27, + "path": "src\\supervision\\detection\\utils\\internal.py", + "symbol": "too-many-locals", + "message": "Too many local variables (27/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "box_iou", + "line": 90, + "column": 0, + "endLine": 90, + "endColumn": 11, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "too-many-locals", + "message": "Too many local variables (21/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "box_iou_batch", + "line": 162, + "column": 0, + "endLine": 162, + "endColumn": 17, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "too-many-locals", + "message": "Too many local variables (22/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "_jaccard", + "line": 264, + "column": 0, + "endLine": 264, + "endColumn": 12, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "too-many-locals", + "message": "Too many local variables (19/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "oriented_box_iou_batch", + "line": 456, + "column": 0, + "endLine": 456, + "endColumn": 26, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "too-many-locals", + "message": "Too many local variables (22/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "compact_mask_iou_batch", + "line": 577, + "column": 0, + "endLine": 577, + "endColumn": 26, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "too-many-locals", + "message": "Too many local variables (43/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "oriented_box_non_max_suppression", + "line": 1314, + "column": 8, + "endLine": 1327, + "endColumn": 13, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "no-else-raise", + "message": "Unnecessary \"elif\" after \"raise\", remove the leading \"el\" from \"elif\"", + "message-id": "R1720" + }, + { + "type": "refactor", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "oriented_box_non_max_merge", + "line": 1429, + "column": 8, + "endLine": 1442, + "endColumn": 13, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "no-else-raise", + "message": "Unnecessary \"elif\" after \"raise\", remove the leading \"el\" from \"elif\"", + "message-id": "R1720" + }, + { + "type": "refactor", + "module": "supervision.detection.utils.masks", + "obj": "calculate_masks_centroids", + "line": 90, + "column": 0, + "endLine": 90, + "endColumn": 29, + "path": "src\\supervision\\detection\\utils\\masks.py", + "symbol": "too-many-locals", + "message": "Too many local variables (24/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.detection.utils.masks", + "obj": "contains_multiple_segments", + "line": 251, + "column": 7, + "endLine": 251, + "endColumn": 46, + "path": "src\\supervision\\detection\\utils\\masks.py", + "symbol": "consider-using-in", + "message": "Consider merging these comparisons with 'in' by using 'connectivity not in (4, 8)'. Use a set instead if elements are hashable.", + "message-id": "R1714" + }, + { + "type": "refactor", + "module": "supervision.detection.utils.masks", + "obj": "filter_segments_by_distance", + "line": 344, + "column": 0, + "endLine": 344, + "endColumn": 31, + "path": "src\\supervision\\detection\\utils\\masks.py", + "symbol": "too-many-locals", + "message": "Too many local variables (16/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.draw.color", + "obj": "Color.from_hex", + "line": 141, + "column": 8, + "endLine": 146, + "endColumn": 34, + "path": "src\\supervision\\draw\\color.py", + "symbol": "no-else-return", + "message": "Unnecessary \"else\" after \"return\", remove the \"else\" and de-indent the code inside it", + "message-id": "R1705" + }, + { + "type": "refactor", + "module": "supervision.draw.utils", + "obj": "draw_text", + "line": 218, + "column": 0, + "endLine": 218, + "endColumn": 13, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (9/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.draw.utils", + "obj": "draw_text", + "line": 218, + "column": 0, + "endLine": 218, + "endColumn": 13, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (9/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.key_points.annotators", + "obj": "BaseKeyPointAnnotator", + "line": 24, + "column": 0, + "endLine": 24, + "endColumn": 27, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.key_points.annotators", + "obj": "VertexAnnotator", + "line": 30, + "column": 0, + "endLine": 30, + "endColumn": 21, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.key_points.annotators", + "obj": "EdgeAnnotator", + "line": 111, + "column": 0, + "endLine": 111, + "endColumn": 19, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.key_points.annotators", + "obj": "_BaseVertexEllipseAnnotator._iter_ellipse_params", + "line": 330, + "column": 4, + "endLine": 330, + "endColumn": 28, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "too-many-locals", + "message": "Too many local variables (20/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.key_points.annotators", + "obj": "_BaseVertexEllipseAnnotator", + "line": 261, + "column": 0, + "endLine": 261, + "endColumn": 33, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.key_points.annotators", + "obj": "VertexEllipseAreaAnnotator", + "line": 370, + "column": 0, + "endLine": 370, + "endColumn": 32, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.key_points.annotators", + "obj": "VertexEllipseOutlineAnnotator", + "line": 471, + "column": 0, + "endLine": 471, + "endColumn": 35, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.key_points.annotators", + "obj": "VertexEllipseHaloAnnotator.annotate", + "line": 606, + "column": 4, + "endLine": 606, + "endColumn": 16, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "too-many-locals", + "message": "Too many local variables (39/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.key_points.annotators", + "obj": "VertexEllipseHaloAnnotator", + "line": 568, + "column": 0, + "endLine": 568, + "endColumn": 32, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.key_points.annotators", + "obj": "VertexLabelAnnotator.__init__", + "line": 709, + "column": 4, + "endLine": 709, + "endColumn": 16, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (7/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.key_points.annotators", + "obj": "VertexLabelAnnotator.__init__", + "line": 709, + "column": 4, + "endLine": 709, + "endColumn": 16, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (7/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.key_points.annotators", + "obj": "VertexLabelAnnotator.annotate", + "line": 740, + "column": 4, + "endLine": 740, + "endColumn": 16, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "too-many-locals", + "message": "Too many local variables (26/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.key_points.core", + "obj": "KeyPoints.__init__", + "line": 245, + "column": 4, + "endLine": 245, + "endColumn": 16, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (7/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.key_points.core", + "obj": "KeyPoints.__init__", + "line": 245, + "column": 4, + "endLine": 245, + "endColumn": 16, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (6/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.key_points.core", + "obj": "KeyPoints.from_mediapipe", + "line": 557, + "column": 24, + "endLine": 560, + "endColumn": 25, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "unnecessary-comprehension", + "message": "Unnecessary use of a comprehension, use list(mediapipe_results.pose_landmarks.landmark) instead.", + "message-id": "R1721" + }, + { + "type": "refactor", + "module": "supervision.key_points.core", + "obj": "KeyPoints.from_detectron2", + "line": 727, + "column": 8, + "endLine": 743, + "endColumn": 30, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "no-else-return", + "message": "Unnecessary \"else\" after \"return\", remove the \"else\" and de-indent the code inside it", + "message-id": "R1705" + }, + { + "type": "refactor", + "module": "supervision.key_points.core", + "obj": "KeyPoints.from_transformers", + "line": 808, + "column": 8, + "endLine": 828, + "endColumn": 30, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "no-else-return", + "message": "Unnecessary \"else\" after \"return\", remove the \"else\" and de-indent the code inside it", + "message-id": "R1705" + }, + { + "type": "refactor", + "module": "supervision.key_points.core", + "obj": "KeyPoints.as_detections", + "line": 1272, + "column": 4, + "endLine": 1272, + "endColumn": 21, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "too-many-locals", + "message": "Too many local variables (16/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.metrics.detection", + "obj": "_fill_confusion_matrix_from_iou", + "line": 255, + "column": 0, + "endLine": 255, + "endColumn": 35, + "path": "src\\supervision\\metrics\\detection.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (8/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.metrics.detection", + "obj": "_fill_confusion_matrix_from_iou", + "line": 255, + "column": 0, + "endLine": 255, + "endColumn": 35, + "path": "src\\supervision\\metrics\\detection.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (8/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.metrics.detection", + "obj": "_fill_confusion_matrix_from_iou", + "line": 255, + "column": 0, + "endLine": 255, + "endColumn": 35, + "path": "src\\supervision\\metrics\\detection.py", + "symbol": "too-many-locals", + "message": "Too many local variables (26/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.metrics.detection", + "obj": "ConfusionMatrix.from_detections", + "line": 359, + "column": 4, + "endLine": 359, + "endColumn": 23, + "path": "src\\supervision\\metrics\\detection.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (6/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.metrics.detection", + "obj": "ConfusionMatrix.from_detections", + "line": 359, + "column": 4, + "endLine": 359, + "endColumn": 23, + "path": "src\\supervision\\metrics\\detection.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (6/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.metrics.detection", + "obj": "ConfusionMatrix.from_tensors", + "line": 443, + "column": 4, + "endLine": 443, + "endColumn": 20, + "path": "src\\supervision\\metrics\\detection.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (6/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.metrics.detection", + "obj": "ConfusionMatrix.from_tensors", + "line": 443, + "column": 4, + "endLine": 443, + "endColumn": 20, + "path": "src\\supervision\\metrics\\detection.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (6/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.metrics.detection", + "obj": "ConfusionMatrix.evaluate_detection_batch", + "line": 535, + "column": 4, + "endLine": 535, + "endColumn": 32, + "path": "src\\supervision\\metrics\\detection.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (6/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.metrics.detection", + "obj": "ConfusionMatrix.evaluate_detection_batch", + "line": 535, + "column": 4, + "endLine": 535, + "endColumn": 32, + "path": "src\\supervision\\metrics\\detection.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (6/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.metrics.detection", + "obj": "ConfusionMatrix.evaluate_detection_batch", + "line": 535, + "column": 4, + "endLine": 535, + "endColumn": 32, + "path": "src\\supervision\\metrics\\detection.py", + "symbol": "too-many-locals", + "message": "Too many local variables (16/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.metrics.detection", + "obj": "ConfusionMatrix.plot", + "line": 688, + "column": 4, + "endLine": 688, + "endColumn": 12, + "path": "src\\supervision\\metrics\\detection.py", + "symbol": "too-many-locals", + "message": "Too many local variables (22/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.metrics.detection", + "obj": "MeanAveragePrecision._average_precisions_per_class", + "line": 1095, + "column": 4, + "endLine": 1095, + "endColumn": 37, + "path": "src\\supervision\\metrics\\detection.py", + "symbol": "too-many-locals", + "message": "Too many local variables (21/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.metrics.f1_score", + "obj": "F1Score._compute_confusion_matrix", + "line": 341, + "column": 4, + "endLine": 341, + "endColumn": 33, + "path": "src\\supervision\\metrics\\f1_score.py", + "symbol": "too-many-locals", + "message": "Too many local variables (16/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.metrics.f1_score", + "obj": "F1ScoreResult", + "line": 515, + "column": 0, + "endLine": 515, + "endColumn": 19, + "path": "src\\supervision\\metrics\\f1_score.py", + "symbol": "too-many-instance-attributes", + "message": "Too many instance attributes (10/7)", + "message-id": "R0902" + }, + { + "type": "refactor", + "module": "supervision.metrics.f1_score", + "obj": "F1ScoreResult.__init__", + "line": 562, + "column": 4, + "endLine": 562, + "endColumn": 16, + "path": "src\\supervision\\metrics\\f1_score.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (10/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.metrics.f1_score", + "obj": "F1ScoreResult.__init__", + "line": 562, + "column": 4, + "endLine": 562, + "endColumn": 16, + "path": "src\\supervision\\metrics\\f1_score.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (10/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_precision", + "obj": "MeanAveragePrecisionResult.__init__", + "line": 72, + "column": 4, + "endLine": 72, + "endColumn": 16, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (9/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_precision", + "obj": "MeanAveragePrecisionResult.__init__", + "line": 72, + "column": 4, + "endLine": 72, + "endColumn": 16, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (9/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_precision", + "obj": "MeanAveragePrecisionResult.map50_95", + "line": 107, + "column": 8, + "endLine": 110, + "endColumn": 21, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "no-else-return", + "message": "Unnecessary \"else\" after \"return\", remove the \"else\" and de-indent the code inside it", + "message-id": "R1705" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_precision", + "obj": "EvaluationDataset.__init__", + "line": 356, + "column": 39, + "endLine": 356, + "endColumn": 45, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "use-dict-literal", + "message": "Consider using '{}' instead of a call to 'dict'.", + "message-id": "R1735" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_precision", + "obj": "EvaluationDataset.__init__", + "line": 357, + "column": 36, + "endLine": 357, + "endColumn": 42, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "use-dict-literal", + "message": "Consider using '{}' instead of a call to 'dict'.", + "message-id": "R1735" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_precision", + "obj": "EvaluationDataset.__init__", + "line": 358, + "column": 36, + "endLine": 358, + "endColumn": 42, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "use-dict-literal", + "message": "Consider using '{}' instead of a call to 'dict'.", + "message-id": "R1735" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_precision", + "obj": "EvaluationDataset.__init__", + "line": 359, + "column": 36, + "endLine": 359, + "endColumn": 42, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "use-dict-literal", + "message": "Consider using '{}' instead of a call to 'dict'.", + "message-id": "R1735" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_precision", + "obj": "EvaluationDataset.load_predictions", + "line": 561, + "column": 48, + "endLine": 561, + "endColumn": 87, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "unnecessary-comprehension", + "message": "Unnecessary use of a comprehension, use list(self.dataset['images']) instead.", + "message-id": "R1721" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_precision", + "obj": "EvaluationDataset.load_predictions", + "line": 579, + "column": 8, + "endLine": 610, + "endColumn": 35, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "no-else-raise", + "message": "Unnecessary \"elif\" after \"raise\", remove the leading \"el\" from \"elif\"", + "message-id": "R1720" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluatorParameters", + "line": 636, + "column": 0, + "endLine": 636, + "endColumn": 29, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (0/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluator._evaluate_image", + "line": 822, + "column": 4, + "endLine": 822, + "endColumn": 23, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "too-many-locals", + "message": "Too many local variables (29/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluator._compute_raw_metrics", + "line": 1036, + "column": 4, + "endLine": 1036, + "endColumn": 28, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (10/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluator._compute_raw_metrics", + "line": 1036, + "column": 4, + "endLine": 1036, + "endColumn": 28, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (10/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluator._compute_raw_metrics", + "line": 1036, + "column": 4, + "endLine": 1036, + "endColumn": 28, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "too-many-locals", + "message": "Too many local variables (45/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluator._compute_raw_metrics", + "line": 1049, + "column": 8, + "endLine": 1134, + "endColumn": 71, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "too-many-nested-blocks", + "message": "Too many nested blocks (6/5)", + "message-id": "R1702" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluator._compute_raw_metrics", + "line": 1049, + "column": 8, + "endLine": 1134, + "endColumn": 71, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "too-many-nested-blocks", + "message": "Too many nested blocks (6/5)", + "message-id": "R1702" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluator._compute_average_precision_by_size", + "line": 1174, + "column": 4, + "endLine": 1174, + "endColumn": 42, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "too-many-locals", + "message": "Too many local variables (19/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_precision", + "obj": "MeanAveragePrecision._prepare_targets", + "line": 1514, + "column": 4, + "endLine": 1514, + "endColumn": 24, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "too-many-locals", + "message": "Too many local variables (16/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_recall", + "obj": "MeanAverageRecallResult.__init__", + "line": 125, + "column": 4, + "endLine": 125, + "endColumn": 16, + "path": "src\\supervision\\metrics\\mean_average_recall.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (10/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_recall", + "obj": "MeanAverageRecallResult.__init__", + "line": 125, + "column": 4, + "endLine": 125, + "endColumn": 16, + "path": "src\\supervision\\metrics\\mean_average_recall.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (10/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_recall", + "obj": "MeanAverageRecall._compute", + "line": 468, + "column": 4, + "endLine": 468, + "endColumn": 16, + "path": "src\\supervision\\metrics\\mean_average_recall.py", + "symbol": "too-many-locals", + "message": "Too many local variables (16/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_recall", + "obj": "MeanAverageRecall._compute_confusion_matrix", + "line": 626, + "column": 4, + "endLine": 626, + "endColumn": 33, + "path": "src\\supervision\\metrics\\mean_average_recall.py", + "symbol": "too-many-locals", + "message": "Too many local variables (17/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.metrics.precision", + "obj": "PrecisionResult", + "line": 40, + "column": 0, + "endLine": 40, + "endColumn": 21, + "path": "src\\supervision\\metrics\\precision.py", + "symbol": "too-many-instance-attributes", + "message": "Too many instance attributes (10/7)", + "message-id": "R0902" + }, + { + "type": "refactor", + "module": "supervision.metrics.precision", + "obj": "PrecisionResult.__init__", + "line": 81, + "column": 4, + "endLine": 81, + "endColumn": 16, + "path": "src\\supervision\\metrics\\precision.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (9/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.metrics.precision", + "obj": "PrecisionResult.__init__", + "line": 81, + "column": 4, + "endLine": 81, + "endColumn": 16, + "path": "src\\supervision\\metrics\\precision.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (9/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.metrics.precision", + "obj": "Precision._compute_confusion_matrix", + "line": 659, + "column": 4, + "endLine": 659, + "endColumn": 33, + "path": "src\\supervision\\metrics\\precision.py", + "symbol": "too-many-locals", + "message": "Too many local variables (16/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.metrics.recall", + "obj": "RecallResult", + "line": 40, + "column": 0, + "endLine": 40, + "endColumn": 18, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "too-many-instance-attributes", + "message": "Too many instance attributes (10/7)", + "message-id": "R0902" + }, + { + "type": "refactor", + "module": "supervision.metrics.recall", + "obj": "RecallResult.__init__", + "line": 85, + "column": 4, + "endLine": 85, + "endColumn": 16, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (10/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.metrics.recall", + "obj": "RecallResult.__init__", + "line": 85, + "column": 4, + "endLine": 85, + "endColumn": 16, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (10/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.metrics.recall", + "obj": "Recall._compute_confusion_matrix", + "line": 437, + "column": 4, + "endLine": 437, + "endColumn": 33, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "too-many-locals", + "message": "Too many local variables (16/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack.update_with_detections", + "line": 161, + "column": 8, + "endLine": 183, + "endColumn": 29, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "no-else-return", + "message": "Unnecessary \"else\" after \"return\", remove the \"else\" and de-indent the code inside it", + "message-id": "R1705" + }, + { + "type": "refactor", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack.update_with_tensors", + "line": 196, + "column": 4, + "endLine": 196, + "endColumn": 27, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "too-many-locals", + "message": "Too many local variables (24/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack._second_association", + "line": 349, + "column": 4, + "endLine": 349, + "endColumn": 27, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "too-many-locals", + "message": "Too many local variables (18/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack._unconfirmed_and_init_new", + "line": 386, + "column": 4, + "endLine": 386, + "endColumn": 33, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "too-many-locals", + "message": "Too many local variables (16/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "_STrackData", + "line": 21, + "column": 0, + "endLine": 21, + "endColumn": 17, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "too-many-instance-attributes", + "message": "Too many instance attributes (15/7)", + "message-id": "R0902" + }, + { + "type": "refactor", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "STrack", + "line": 44, + "column": 0, + "endLine": 44, + "endColumn": 12, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "too-many-public-methods", + "message": "Too many public methods (23/20)", + "message-id": "R0904" + }, + { + "type": "refactor", + "module": "supervision.utils.image", + "obj": "overlay_image", + "line": 283, + "column": 0, + "endLine": 283, + "endColumn": 17, + "path": "src\\supervision\\utils\\image.py", + "symbol": "too-many-locals", + "message": "Too many local variables (25/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.utils.image", + "obj": "create_tiles", + "line": 565, + "column": 0, + "endLine": 565, + "endColumn": 16, + "path": "src\\supervision\\utils\\image.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (16/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.utils.image", + "obj": "create_tiles", + "line": 565, + "column": 0, + "endLine": 565, + "endColumn": 16, + "path": "src\\supervision\\utils\\image.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (16/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.utils.image", + "obj": "create_tiles", + "line": 565, + "column": 0, + "endLine": 565, + "endColumn": 16, + "path": "src\\supervision\\utils\\image.py", + "symbol": "too-many-locals", + "message": "Too many local variables (20/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.utils.image", + "obj": "_generate_tiles", + "line": 767, + "column": 0, + "endLine": 767, + "endColumn": 19, + "path": "src\\supervision\\utils\\image.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (15/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.utils.image", + "obj": "_generate_tiles", + "line": 767, + "column": 0, + "endLine": 767, + "endColumn": 19, + "path": "src\\supervision\\utils\\image.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (15/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.utils.image", + "obj": "_generate_tiles", + "line": 767, + "column": 0, + "endLine": 767, + "endColumn": 19, + "path": "src\\supervision\\utils\\image.py", + "symbol": "too-many-locals", + "message": "Too many local variables (18/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.utils.image", + "obj": "_draw_texts", + "line": 816, + "column": 0, + "endLine": 816, + "endColumn": 15, + "path": "src\\supervision\\utils\\image.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (10/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.utils.image", + "obj": "_draw_texts", + "line": 816, + "column": 0, + "endLine": 816, + "endColumn": 15, + "path": "src\\supervision\\utils\\image.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (10/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.utils.image", + "obj": "_draw_texts", + "line": 816, + "column": 0, + "endLine": 816, + "endColumn": 15, + "path": "src\\supervision\\utils\\image.py", + "symbol": "too-many-locals", + "message": "Too many local variables (18/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.utils.internal", + "obj": "classproperty", + "line": 133, + "column": 0, + "endLine": 133, + "endColumn": 19, + "path": "src\\supervision\\utils\\internal.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.utils.video", + "obj": "_VideoProcessor", + "line": 283, + "column": 0, + "endLine": 283, + "endColumn": 21, + "path": "src\\supervision\\utils\\video.py", + "symbol": "too-many-instance-attributes", + "message": "Too many instance attributes (16/7)", + "message-id": "R0902" + }, + { + "type": "refactor", + "module": "supervision.utils.video", + "obj": "_VideoProcessor.__init__", + "line": 284, + "column": 4, + "endLine": 284, + "endColumn": 16, + "path": "src\\supervision\\utils\\video.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (9/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.utils.video", + "obj": "_VideoProcessor", + "line": 283, + "column": 0, + "endLine": 283, + "endColumn": 21, + "path": "src\\supervision\\utils\\video.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.utils.video", + "obj": "process_video", + "line": 424, + "column": 0, + "endLine": 424, + "endColumn": 17, + "path": "src\\supervision\\utils\\video.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (9/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.validators", + "obj": "_validate_data", + "line": 197, + "column": 12, + "endLine": 202, + "endColumn": 17, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "no-else-raise", + "message": "Unnecessary \"elif\" after \"raise\", remove the leading \"el\" from \"elif\"", + "message-id": "R1720" + }, + { + "type": "refactor", + "module": "supervision.validators", + "obj": "_validate_detections_fields", + "line": 259, + "column": 0, + "endLine": 259, + "endColumn": 31, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (6/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.validators", + "obj": "_validate_detections_fields", + "line": 259, + "column": 0, + "endLine": 259, + "endColumn": 31, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (6/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.validators", + "obj": "_validate_keypoints_fields", + "line": 292, + "column": 0, + "endLine": 292, + "endColumn": 30, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (6/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.validators", + "obj": "_validate_keypoints_fields", + "line": 292, + "column": 0, + "endLine": 292, + "endColumn": 30, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (6/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[78:229]\n==supervision.metrics.precision:[389:540]\n self._metric_target = metric_target\n self.averaging_method = averaging_method\n\n self._predictions_list: list[Detections] = []\n self._targets_list: list[Detections] = []\n\n def reset(self) -> None:\n \"\"\"\n Reset the metric to its initial state, clearing all stored data.\n \"\"\"\n self._predictions_list = []\n self._targets_list = []\n\n def update(\n self,\n predictions: Detections | list[Detections],\n targets: Detections | list[Detections],\n ) -> F1Score:\n \"\"\"\n Add new predictions and targets to the metric, but do not compute the result.\n\n Args:\n predictions: The predicted detections.\n targets: The target detections.\n\n Returns:\n The updated metric instance.\n \"\"\"\n if not isinstance(predictions, list):\n predictions = [predictions]\n if not isinstance(targets, list):\n targets = [targets]\n\n if len(predictions) != len(targets):\n raise ValueError(\n f\"The number of predictions ({len(predictions)}) and\"\n f\" targets ({len(targets)}) during the update must be the same.\"\n )\n\n self._predictions_list.extend(predictions)\n self._targets_list.extend(targets)\n\n return self\n\n def compute(self) -> F1ScoreResult:\n \"\"\"\n Calculate the F1 score metric based on the stored predictions and ground-truth\n data, at different IoU thresholds.\n\n Returns:\n The F1 score metric result.\n \"\"\"\n result = self._compute(self._predictions_list, self._targets_list)\n\n small_predictions, small_targets = self._filter_predictions_and_targets_by_size(\n self._predictions_list, self._targets_list, ObjectSizeCategory.SMALL\n )\n result.small_objects = self._compute(small_predictions, small_targets)\n\n medium_predictions, medium_targets = (\n self._filter_predictions_and_targets_by_size(\n self._predictions_list, self._targets_list, ObjectSizeCategory.MEDIUM\n )\n )\n result.medium_objects = self._compute(medium_predictions, medium_targets)\n\n large_predictions, large_targets = self._filter_predictions_and_targets_by_size(\n self._predictions_list, self._targets_list, ObjectSizeCategory.LARGE\n )\n result.large_objects = self._compute(large_predictions, large_targets)\n\n return result\n\n def _compute(\n self, predictions_list: list[Detections], targets_list: list[Detections]\n ) -> F1ScoreResult:\n \"\"\"Build per-image stats tuples and delegate to class-level computation.\n\n Each stats tuple is ``(matches, confidence, class_ids, true_class_ids)``:\n - Both empty: skip (no information).\n - Targets empty, predictions present: all predictions are FPs; true_class_ids\n is ``zeros((0,))``.\n - Targets present: IoU matching produces ``matches`` array.\n \"\"\"\n iou_thresholds = np.linspace(0.5, 0.95, 10)\n stats: list[Any] = []\n\n for predictions, targets in zip(predictions_list, targets_list):\n prediction_contents = self._detections_content(predictions)\n target_contents = self._detections_content(targets)\n\n if len(targets) == 0 and len(predictions) > 0:\n # Only predictions are present (e.g. a background image); every\n # prediction is a false positive.\n if predictions.class_id is None or predictions.confidence is None:\n continue\n stats.append(\n (\n np.zeros(\n (len(predictions), iou_thresholds.size), dtype=np.bool_\n ),\n predictions.confidence,\n predictions.class_id,\n np.zeros((0,), dtype=np.int32),\n )\n )\n elif len(targets) > 0:\n if len(predictions) == 0:\n stats.append(\n (\n np.zeros((0, iou_thresholds.size), dtype=bool),\n np.zeros((0,), dtype=np.float32),\n np.zeros((0,), dtype=int),\n targets.class_id,\n )\n )\n\n else:\n if self._metric_target == MetricTarget.BOXES:\n iou = box_iou_batch(target_contents, prediction_contents)\n elif self._metric_target == MetricTarget.MASKS:\n iou = mask_iou_batch(target_contents, prediction_contents)\n elif self._metric_target == MetricTarget.ORIENTED_BOUNDING_BOXES:\n iou = oriented_box_iou_batch(\n target_contents, prediction_contents\n )\n else:\n raise ValueError(\n \"Unsupported metric target for IoU calculation\"\n )\n\n matches = self._match_detection_batch(\n predictions.class_id\n if predictions.class_id is not None\n else np.array([]),\n targets.class_id\n if targets.class_id is not None\n else np.array([]),\n iou,\n iou_thresholds,\n )\n stats.append(\n (\n matches,\n predictions.confidence,\n predictions.class_id,\n targets.class_id,\n )\n )\n\n if not stats:", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[429:504]\n==supervision.metrics.mean_average_recall:[717:793]\n if self._metric_target == MetricTarget.BOXES:\n result_boxes: npt.NDArray[np.float32] = detections.xyxy\n return result_boxes\n if self._metric_target == MetricTarget.MASKS:\n if detections.mask is not None:\n result_masks: npt.NDArray[np.bool_] = detections.mask\n return result_masks\n return self._make_empty_content()\n if self._metric_target == MetricTarget.ORIENTED_BOUNDING_BOXES:\n obb = detections.data.get(ORIENTED_BOX_COORDINATES)\n if obb is not None and len(obb) > 0:\n result_obb: npt.NDArray[np.float32] = np.array(obb, dtype=np.float32)\n return result_obb\n return self._make_empty_content()\n raise ValueError(f\"Invalid metric target: {self._metric_target}\")\n\n def _make_empty_content(self) -> npt.NDArray[Any]:\n if self._metric_target == MetricTarget.BOXES:\n empty_boxes: npt.NDArray[np.float32] = np.empty((0, 4), dtype=np.float32)\n return empty_boxes\n if self._metric_target == MetricTarget.MASKS:\n empty_masks: npt.NDArray[np.bool_] = np.empty((0, 0, 0), dtype=bool)\n return empty_masks\n if self._metric_target == MetricTarget.ORIENTED_BOUNDING_BOXES:\n empty_obb: npt.NDArray[np.float32] = np.empty((0, 4, 2), dtype=np.float32)\n return empty_obb\n raise ValueError(f\"Invalid metric target: {self._metric_target}\")\n\n def _filter_detections_by_size(\n self, detections: Detections, size_category: ObjectSizeCategory\n ) -> Detections:\n \"\"\"Return a copy of detections with contents filtered by object size.\"\"\"\n new_detections = deepcopy(detections)\n if detections.is_empty() or size_category == ObjectSizeCategory.ANY:\n return new_detections\n\n sizes = get_detection_size_category(new_detections, self._metric_target)\n size_mask = sizes == size_category.value\n\n new_detections.xyxy = new_detections.xyxy[size_mask]\n if new_detections.mask is not None:\n new_detections.mask = new_detections.mask[size_mask]\n if new_detections.class_id is not None:\n new_detections.class_id = new_detections.class_id[size_mask]\n if new_detections.confidence is not None:\n new_detections.confidence = new_detections.confidence[size_mask]\n if new_detections.tracker_id is not None:\n new_detections.tracker_id = new_detections.tracker_id[size_mask]\n if new_detections.data is not None:\n for key, value in new_detections.data.items():\n new_detections.data[key] = np.array(value)[size_mask]\n\n return new_detections\n\n def _filter_predictions_and_targets_by_size(\n self,\n predictions_list: list[Detections],\n targets_list: list[Detections],\n size_category: ObjectSizeCategory,\n ) -> tuple[list[Detections], list[Detections]]:\n \"\"\"\n Filter predictions and targets by object size category.\n \"\"\"\n new_predictions_list = []\n new_targets_list = []\n for predictions, targets in zip(predictions_list, targets_list):\n new_predictions_list.append(\n self._filter_detections_by_size(predictions, size_category)\n )\n new_targets_list.append(\n self._filter_detections_by_size(targets, size_category)\n )\n return new_predictions_list, new_targets_list\n\n", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[314:394]\n==supervision.metrics.precision:[633:711]\n num_predictions, num_iou_levels = (\n predictions_classes.shape[0],\n iou_thresholds.shape[0],\n )\n correct = np.zeros((num_predictions, num_iou_levels), dtype=bool)\n correct_class = target_classes[:, None] == predictions_classes\n\n for i, iou_level in enumerate(iou_thresholds):\n matched_indices = np.where((iou >= iou_level) & correct_class)\n\n if matched_indices[0].shape[0]:\n combined_indices = np.stack(matched_indices, axis=1)\n iou_values = iou[matched_indices][:, None]\n matches = np.hstack([combined_indices, iou_values])\n\n if matched_indices[0].shape[0] > 1:\n matches = matches[matches[:, 2].argsort()[::-1]]\n matches = matches[np.unique(matches[:, 1], return_index=True)[1]]\n matches = matches[np.unique(matches[:, 0], return_index=True)[1]]\n\n correct[matches[:, 1].astype(int), i] = True\n result_correct: npt.NDArray[np.bool_] = correct\n return result_correct\n\n @staticmethod\n def _compute_confusion_matrix(\n sorted_matches: npt.NDArray[np.bool_],\n sorted_prediction_class_ids: npt.NDArray[np.int32],\n unique_classes: npt.NDArray[np.int32],\n class_counts: npt.NDArray[np.int32],\n ) -> npt.NDArray[np.float64]:\n \"\"\"\n Compute the confusion matrix for each class and IoU threshold.\n\n Assumes the matches and prediction_class_ids are sorted by confidence\n in descending order.\n\n Args:\n sorted_matches: shape (P, Th), that is True\n if the prediction is a true positive at the given IoU threshold.\n sorted_prediction_class_ids: shape (P,), containing\n the class id for each prediction.\n unique_classes: shape (C,), containing the unique\n class ids.\n class_counts: shape (C,), containing the number\n of true instances for each class.\n\n Returns:\n shape (C, Th, 3), containing the true positives, false\n positives, and false negatives for each class and IoU threshold.\n \"\"\"\n\n num_thresholds = sorted_matches.shape[1]\n num_classes = unique_classes.shape[0]\n\n confusion_matrix: npt.NDArray[np.float64] = np.zeros(\n (num_classes, num_thresholds, 3), dtype=np.float64\n )\n for class_idx, class_id in enumerate(unique_classes):\n is_class = sorted_prediction_class_ids == class_id\n num_true = class_counts[class_idx]\n num_predictions = is_class.sum()\n\n if num_predictions == 0:\n true_positives = np.zeros(num_thresholds)\n false_positives = np.zeros(num_thresholds)\n false_negatives = np.full(num_thresholds, num_true)\n elif num_true == 0:\n true_positives = np.zeros(num_thresholds)\n false_positives = np.full(num_thresholds, num_predictions)\n false_negatives = np.zeros(num_thresholds)\n else:\n true_positives = sorted_matches[is_class].sum(0)\n false_positives = (1 - sorted_matches[is_class]).sum(0)\n false_negatives = num_true - true_positives\n confusion_matrix[class_idx] = np.stack(\n [true_positives, false_positives, false_negatives], axis=1\n )", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[185:229]\n==supervision.metrics.recall:[295:339]\n if len(predictions) == 0:\n stats.append(\n (\n np.zeros((0, iou_thresholds.size), dtype=bool),\n np.zeros((0,), dtype=np.float32),\n np.zeros((0,), dtype=int),\n targets.class_id,\n )\n )\n\n else:\n if self._metric_target == MetricTarget.BOXES:\n iou = box_iou_batch(target_contents, prediction_contents)\n elif self._metric_target == MetricTarget.MASKS:\n iou = mask_iou_batch(target_contents, prediction_contents)\n elif self._metric_target == MetricTarget.ORIENTED_BOUNDING_BOXES:\n iou = oriented_box_iou_batch(\n target_contents, prediction_contents\n )\n else:\n raise ValueError(\n \"Unsupported metric target for IoU calculation\"\n )\n\n matches = self._match_detection_batch(\n predictions.class_id\n if predictions.class_id is not None\n else np.array([]),\n targets.class_id\n if targets.class_id is not None\n else np.array([]),\n iou,\n iou_thresholds,\n )\n stats.append(\n (\n matches,\n predictions.confidence,\n predictions.class_id,\n targets.class_id,\n )\n )\n\n if not stats:", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.mean_average_recall:[404:482]\n==supervision.metrics.recall:[221:299]\n self._predictions_list = []\n self._targets_list = []\n\n def update(\n self,\n predictions: Detections | list[Detections],\n targets: Detections | list[Detections],\n ) -> MeanAverageRecall:\n \"\"\"\n Add new predictions and targets to the metric, but do not compute the result.\n\n Args:\n predictions: The predicted detections.\n targets: The target detections.\n\n Returns:\n The updated metric instance.\n \"\"\"\n if not isinstance(predictions, list):\n predictions = [predictions]\n if not isinstance(targets, list):\n targets = [targets]\n\n if len(predictions) != len(targets):\n raise ValueError(\n f\"The number of predictions ({len(predictions)}) and\"\n f\" targets ({len(targets)}) during the update must be the same.\"\n )\n\n self._predictions_list.extend(predictions)\n self._targets_list.extend(targets)\n\n return self\n\n def compute(self) -> MeanAverageRecallResult:\n \"\"\"\n Calculate the Mean Average Recall metric based on the stored predictions\n and ground-truth, at different IoU thresholds and maximum detection counts.\n\n Returns:\n The Mean Average Recall metric result.\n \"\"\"\n result = self._compute(self._predictions_list, self._targets_list)\n\n small_predictions, small_targets = self._filter_predictions_and_targets_by_size(\n self._predictions_list, self._targets_list, ObjectSizeCategory.SMALL\n )\n result.small_objects = self._compute(small_predictions, small_targets)\n\n medium_predictions, medium_targets = (\n self._filter_predictions_and_targets_by_size(\n self._predictions_list, self._targets_list, ObjectSizeCategory.MEDIUM\n )\n )\n result.medium_objects = self._compute(medium_predictions, medium_targets)\n\n large_predictions, large_targets = self._filter_predictions_and_targets_by_size(\n self._predictions_list, self._targets_list, ObjectSizeCategory.LARGE\n )\n result.large_objects = self._compute(large_predictions, large_targets)\n\n return result\n\n def _compute(\n self, predictions_list: list[Detections], targets_list: list[Detections]\n ) -> MeanAverageRecallResult:\n iou_thresholds = np.linspace(0.5, 0.95, 10)\n stats: list[Any] = []\n\n for predictions, targets in zip(predictions_list, targets_list):\n prediction_contents = self._detections_content(predictions)\n target_contents = self._detections_content(targets)\n\n if len(targets) > 0:\n if len(predictions) == 0:\n stats.append(\n (\n np.zeros((0, iou_thresholds.size), dtype=bool),", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[78:169]\n==supervision.metrics.recall:[211:294]\n self._metric_target = metric_target\n self.averaging_method = averaging_method\n\n self._predictions_list: list[Detections] = []\n self._targets_list: list[Detections] = []\n\n def reset(self) -> None:\n \"\"\"\n Reset the metric to its initial state, clearing all stored data.\n \"\"\"\n self._predictions_list = []\n self._targets_list = []\n\n def update(\n self,\n predictions: Detections | list[Detections],\n targets: Detections | list[Detections],\n ) -> F1Score:\n \"\"\"\n Add new predictions and targets to the metric, but do not compute the result.\n\n Args:\n predictions: The predicted detections.\n targets: The target detections.\n\n Returns:\n The updated metric instance.\n \"\"\"\n if not isinstance(predictions, list):\n predictions = [predictions]\n if not isinstance(targets, list):\n targets = [targets]\n\n if len(predictions) != len(targets):\n raise ValueError(\n f\"The number of predictions ({len(predictions)}) and\"\n f\" targets ({len(targets)}) during the update must be the same.\"\n )\n\n self._predictions_list.extend(predictions)\n self._targets_list.extend(targets)\n\n return self\n\n def compute(self) -> F1ScoreResult:\n \"\"\"\n Calculate the F1 score metric based on the stored predictions and ground-truth\n data, at different IoU thresholds.\n\n Returns:\n The F1 score metric result.\n \"\"\"\n result = self._compute(self._predictions_list, self._targets_list)\n\n small_predictions, small_targets = self._filter_predictions_and_targets_by_size(\n self._predictions_list, self._targets_list, ObjectSizeCategory.SMALL\n )\n result.small_objects = self._compute(small_predictions, small_targets)\n\n medium_predictions, medium_targets = (\n self._filter_predictions_and_targets_by_size(\n self._predictions_list, self._targets_list, ObjectSizeCategory.MEDIUM\n )\n )\n result.medium_objects = self._compute(medium_predictions, medium_targets)\n\n large_predictions, large_targets = self._filter_predictions_and_targets_by_size(\n self._predictions_list, self._targets_list, ObjectSizeCategory.LARGE\n )\n result.large_objects = self._compute(large_predictions, large_targets)\n\n return result\n\n def _compute(\n self, predictions_list: list[Detections], targets_list: list[Detections]\n ) -> F1ScoreResult:\n \"\"\"Build per-image stats tuples and delegate to class-level computation.\n\n Each stats tuple is ``(matches, confidence, class_ids, true_class_ids)``:\n - Both empty: skip (no information).\n - Targets empty, predictions present: all predictions are FPs; true_class_ids\n is ``zeros((0,))``.\n - Targets present: IoU matching produces ``matches`` array.\n \"\"\"\n iou_thresholds = np.linspace(0.5, 0.95, 10)\n stats: list[Any] = []\n\n for predictions, targets in zip(predictions_list, targets_list):\n prediction_contents = self._detections_content(predictions)\n target_contents = self._detections_content(targets)\n", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.mean_average_recall:[591:674]\n==supervision.metrics.recall:[402:483]\n return recall_scores, recall_per_class, unique_classes\n\n @staticmethod\n def _match_detection_batch(\n predictions_classes: npt.NDArray[np.int32],\n target_classes: npt.NDArray[np.int32],\n iou: npt.NDArray[np.float32],\n iou_thresholds: npt.NDArray[np.float32],\n ) -> npt.NDArray[np.bool_]:\n num_predictions, num_iou_levels = (\n predictions_classes.shape[0],\n iou_thresholds.shape[0],\n )\n correct = np.zeros((num_predictions, num_iou_levels), dtype=bool)\n correct_class = target_classes[:, None] == predictions_classes\n\n for i, iou_level in enumerate(iou_thresholds):\n matched_indices = np.where((iou >= iou_level) & correct_class)\n\n if matched_indices[0].shape[0]:\n combined_indices = np.stack(matched_indices, axis=1)\n iou_values = iou[matched_indices][:, None]\n matches = np.hstack([combined_indices, iou_values])\n\n if matched_indices[0].shape[0] > 1:\n matches = matches[matches[:, 2].argsort()[::-1]]\n matches = matches[np.unique(matches[:, 1], return_index=True)[1]]\n matches = matches[np.unique(matches[:, 0], return_index=True)[1]]\n\n correct[matches[:, 1].astype(int), i] = True\n result_correct: npt.NDArray[np.bool_] = correct\n return result_correct\n\n @staticmethod\n def _compute_confusion_matrix(\n sorted_matches: npt.NDArray[np.bool_],\n sorted_prediction_class_ids: npt.NDArray[np.int32],\n unique_classes: npt.NDArray[np.int32],\n class_counts: npt.NDArray[np.int32],\n ) -> npt.NDArray[np.float64]:\n \"\"\"\n Compute the confusion matrix for each class and IoU threshold.\n\n Assumes the matches and prediction_class_ids are sorted by confidence\n in descending order.\n\n Args:\n sorted_matches: shape (P, Th), that is True\n if the prediction is a true positive at the given IoU threshold.\n sorted_prediction_class_ids: shape (P,), containing\n the class id for each prediction.\n unique_classes: shape (C,), containing the unique\n class ids.\n class_counts: shape (C,), containing the number\n of true instances for each class.\n max_detections: The maximum number of detections to\n consider for each class. Extra detections are considered false\n positives. By default, all detections are considered.\n\n Returns:\n shape (C, Th, 3), containing the true positives, false\n positives, and false negatives for each class and IoU threshold.\n \"\"\"\n num_thresholds = sorted_matches.shape[1]\n num_classes = unique_classes.shape[0]\n\n confusion_matrix: npt.NDArray[np.float64] = np.zeros(\n (num_classes, num_thresholds, 3), dtype=np.float64\n )\n for class_idx, class_id in enumerate(unique_classes):\n is_class = sorted_prediction_class_ids == class_id\n num_true = class_counts[class_idx]\n num_predictions = is_class.sum()\n\n if num_predictions == 0:\n true_positives = np.zeros(num_thresholds)\n false_positives = np.zeros(num_thresholds)\n false_negatives = np.full(num_thresholds, num_true)\n elif num_true == 0:\n true_positives = np.zeros(num_thresholds)\n false_positives = np.full(num_thresholds, num_predictions)\n false_negatives = np.zeros(num_thresholds)\n else:", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[314:387]\n==supervision.metrics.mean_average_recall:[600:674]\n num_predictions, num_iou_levels = (\n predictions_classes.shape[0],\n iou_thresholds.shape[0],\n )\n correct = np.zeros((num_predictions, num_iou_levels), dtype=bool)\n correct_class = target_classes[:, None] == predictions_classes\n\n for i, iou_level in enumerate(iou_thresholds):\n matched_indices = np.where((iou >= iou_level) & correct_class)\n\n if matched_indices[0].shape[0]:\n combined_indices = np.stack(matched_indices, axis=1)\n iou_values = iou[matched_indices][:, None]\n matches = np.hstack([combined_indices, iou_values])\n\n if matched_indices[0].shape[0] > 1:\n matches = matches[matches[:, 2].argsort()[::-1]]\n matches = matches[np.unique(matches[:, 1], return_index=True)[1]]\n matches = matches[np.unique(matches[:, 0], return_index=True)[1]]\n\n correct[matches[:, 1].astype(int), i] = True\n\n result_correct: npt.NDArray[np.bool_] = correct\n return result_correct\n\n @staticmethod\n def _compute_confusion_matrix(\n sorted_matches: npt.NDArray[np.bool_],\n sorted_prediction_class_ids: npt.NDArray[np.int32],\n unique_classes: npt.NDArray[np.int32],\n class_counts: npt.NDArray[np.int32],\n ) -> npt.NDArray[np.float64]:\n \"\"\"\n Compute the confusion matrix for each class and IoU threshold.\n\n Assumes the matches and prediction_class_ids are sorted by confidence\n in descending order.\n\n Args:\n sorted_matches: shape (P, Th), that is True\n if the prediction is a true positive at the given IoU threshold.\n sorted_prediction_class_ids: shape (P,), containing\n the class id for each prediction.\n unique_classes: shape (C,), containing the unique\n class ids.\n class_counts: shape (C,), containing the number\n of true instances for each class.\n\n Returns:\n shape (C, Th, 3), containing the true positives, false\n positives, and false negatives for each class and IoU threshold.\n \"\"\"\n\n num_thresholds = sorted_matches.shape[1]\n num_classes = unique_classes.shape[0]\n\n confusion_matrix: npt.NDArray[np.float64] = np.zeros(\n (num_classes, num_thresholds, 3), dtype=np.float64\n )\n for class_idx, class_id in enumerate(unique_classes):\n is_class = sorted_prediction_class_ids == class_id\n num_true = class_counts[class_idx]\n num_predictions = is_class.sum()\n\n if num_predictions == 0:\n true_positives = np.zeros(num_thresholds)\n false_positives = np.zeros(num_thresholds)\n false_negatives = np.full(num_thresholds, num_true)\n elif num_true == 0:\n true_positives = np.zeros(num_thresholds)\n false_positives = np.full(num_thresholds, num_predictions)\n false_negatives = np.zeros(num_thresholds)\n else:", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[88:169]\n==supervision.metrics.mean_average_recall:[404:477]\n self._predictions_list = []\n self._targets_list = []\n\n def update(\n self,\n predictions: Detections | list[Detections],\n targets: Detections | list[Detections],\n ) -> MeanAverageRecall:\n \"\"\"\n Add new predictions and targets to the metric, but do not compute the result.\n\n Args:\n predictions: The predicted detections.\n targets: The target detections.\n\n Returns:\n The updated metric instance.\n \"\"\"\n if not isinstance(predictions, list):\n predictions = [predictions]\n if not isinstance(targets, list):\n targets = [targets]\n\n if len(predictions) != len(targets):\n raise ValueError(\n f\"The number of predictions ({len(predictions)}) and\"\n f\" targets ({len(targets)}) during the update must be the same.\"\n )\n\n self._predictions_list.extend(predictions)\n self._targets_list.extend(targets)\n\n return self\n\n def compute(self) -> MeanAverageRecallResult:\n \"\"\"\n Calculate the Mean Average Recall metric based on the stored predictions\n and ground-truth, at different IoU thresholds and maximum detection counts.\n\n Returns:\n The Mean Average Recall metric result.\n \"\"\"\n result = self._compute(self._predictions_list, self._targets_list)\n\n small_predictions, small_targets = self._filter_predictions_and_targets_by_size(\n self._predictions_list, self._targets_list, ObjectSizeCategory.SMALL\n )\n result.small_objects = self._compute(small_predictions, small_targets)\n\n medium_predictions, medium_targets = (\n self._filter_predictions_and_targets_by_size(\n self._predictions_list, self._targets_list, ObjectSizeCategory.MEDIUM\n )\n )\n result.medium_objects = self._compute(medium_predictions, medium_targets)\n\n large_predictions, large_targets = self._filter_predictions_and_targets_by_size(\n self._predictions_list, self._targets_list, ObjectSizeCategory.LARGE\n )\n result.large_objects = self._compute(large_predictions, large_targets)\n\n return result\n\n def _compute(\n self, predictions_list: list[Detections], targets_list: list[Detections]\n ) -> MeanAverageRecallResult:\n iou_thresholds = np.linspace(0.5, 0.95, 10)\n stats: list[Any] = []\n\n for predictions, targets in zip(predictions_list, targets_list):\n prediction_contents = self._detections_content(predictions)\n target_contents = self._detections_content(targets)\n", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[455:504]\n==supervision.metrics.recall:[558:645]\n raise ValueError(f\"Invalid metric target: {self._metric_target}\")\n\n def _filter_detections_by_size(\n self, detections: Detections, size_category: ObjectSizeCategory\n ) -> Detections:\n \"\"\"Return a copy of detections with contents filtered by object size.\"\"\"\n new_detections = deepcopy(detections)\n if detections.is_empty() or size_category == ObjectSizeCategory.ANY:\n return new_detections\n\n sizes = get_detection_size_category(new_detections, self._metric_target)\n size_mask = sizes == size_category.value\n\n new_detections.xyxy = new_detections.xyxy[size_mask]\n if new_detections.mask is not None:\n new_detections.mask = new_detections.mask[size_mask]\n if new_detections.class_id is not None:\n new_detections.class_id = new_detections.class_id[size_mask]\n if new_detections.confidence is not None:\n new_detections.confidence = new_detections.confidence[size_mask]\n if new_detections.tracker_id is not None:\n new_detections.tracker_id = new_detections.tracker_id[size_mask]\n if new_detections.data is not None:\n for key, value in new_detections.data.items():\n new_detections.data[key] = np.array(value)[size_mask]\n\n return new_detections\n\n def _filter_predictions_and_targets_by_size(\n self,\n predictions_list: list[Detections],\n targets_list: list[Detections],\n size_category: ObjectSizeCategory,\n ) -> tuple[list[Detections], list[Detections]]:\n \"\"\"\n Filter predictions and targets by object size category.\n \"\"\"\n new_predictions_list = []\n new_targets_list = []\n for predictions, targets in zip(predictions_list, targets_list):\n new_predictions_list.append(\n self._filter_detections_by_size(predictions, size_category)\n )\n new_targets_list.append(\n self._filter_detections_by_size(targets, size_category)\n )\n return new_predictions_list, new_targets_list\n\n", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[190:219]\n==supervision.metrics.mean_average_recall:[483:513]\n np.zeros((0,), dtype=int),\n targets.class_id,\n )\n )\n\n else:\n if self._metric_target == MetricTarget.BOXES:\n iou = box_iou_batch(target_contents, prediction_contents)\n elif self._metric_target == MetricTarget.MASKS:\n iou = mask_iou_batch(target_contents, prediction_contents)\n elif self._metric_target == MetricTarget.ORIENTED_BOUNDING_BOXES:\n iou = oriented_box_iou_batch(\n target_contents, prediction_contents\n )\n else:\n raise ValueError(\n \"Unsupported metric target for IoU calculation\"\n )\n\n matches = self._match_detection_batch(\n predictions.class_id\n if predictions.class_id is not None\n else np.array([]),\n targets.class_id\n if targets.class_id is not None\n else np.array([]),\n iou,\n iou_thresholds,\n )\n", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.mean_average_recall:[712:752]\n==supervision.metrics.recall:[522:558]\n result_recall: npt.NDArray[np.float64] = recall\n return result_recall\n\n def _detections_content(self, detections: Detections) -> npt.NDArray[Any]:\n \"\"\"Return boxes, masks or oriented bounding boxes from detections.\"\"\"\n if self._metric_target == MetricTarget.BOXES:\n result_boxes: npt.NDArray[np.float32] = detections.xyxy\n return result_boxes\n if self._metric_target == MetricTarget.MASKS:\n if detections.mask is not None:\n result_masks: npt.NDArray[np.bool_] = detections.mask\n return result_masks\n return self._make_empty_content()\n if self._metric_target == MetricTarget.ORIENTED_BOUNDING_BOXES:\n obb = detections.data.get(ORIENTED_BOX_COORDINATES)\n if obb is not None and len(obb) > 0:\n result_obb: npt.NDArray[np.float32] = np.array(obb, dtype=np.float32)\n return result_obb\n return self._make_empty_content()\n raise ValueError(f\"Invalid metric target: {self._metric_target}\")\n\n def _make_empty_content(self) -> npt.NDArray[Any]:\n if self._metric_target == MetricTarget.BOXES:\n empty_boxes: npt.NDArray[np.float32] = np.empty((0, 4), dtype=np.float32)\n return empty_boxes\n\n if self._metric_target == MetricTarget.MASKS:\n empty_masks: npt.NDArray[np.bool_] = np.empty((0, 0, 0), dtype=bool)\n return empty_masks\n\n if self._metric_target == MetricTarget.ORIENTED_BOUNDING_BOXES:\n empty_obb: npt.NDArray[np.float32] = np.empty((0, 4, 2), dtype=np.float32)\n return empty_obb\n\n raise ValueError(f\"Invalid metric target: {self._metric_target}\")\n", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[429:461]\n==supervision.metrics.recall:[527:558]\n if self._metric_target == MetricTarget.BOXES:\n result_boxes: npt.NDArray[np.float32] = detections.xyxy\n return result_boxes\n if self._metric_target == MetricTarget.MASKS:\n if detections.mask is not None:\n result_masks: npt.NDArray[np.bool_] = detections.mask\n return result_masks\n return self._make_empty_content()\n if self._metric_target == MetricTarget.ORIENTED_BOUNDING_BOXES:\n obb = detections.data.get(ORIENTED_BOX_COORDINATES)\n if obb is not None and len(obb) > 0:\n result_obb: npt.NDArray[np.float32] = np.array(obb, dtype=np.float32)\n return result_obb\n return self._make_empty_content()\n raise ValueError(f\"Invalid metric target: {self._metric_target}\")\n\n def _make_empty_content(self) -> npt.NDArray[Any]:\n if self._metric_target == MetricTarget.BOXES:\n empty_boxes: npt.NDArray[np.float32] = np.empty((0, 4), dtype=np.float32)\n return empty_boxes\n if self._metric_target == MetricTarget.MASKS:\n empty_masks: npt.NDArray[np.bool_] = np.empty((0, 0, 0), dtype=bool)\n return empty_masks\n if self._metric_target == MetricTarget.ORIENTED_BOUNDING_BOXES:\n empty_obb: npt.NDArray[np.float32] = np.empty((0, 4, 2), dtype=np.float32)\n return empty_obb\n raise ValueError(f\"Invalid metric target: {self._metric_target}\")\n\n def _filter_detections_by_size(\n self, detections: Detections, size_category: ObjectSizeCategory\n ) -> Detections:\n \"\"\"Return a copy of detections with contents filtered by object size.\"\"\"", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[768:793]\n==supervision.metrics.precision:[310:337]\n f\"\\n(target: {self.metric_target.value},\"\n f\" averaging: {self.averaging_method.value})\"\n )\n ax.set_title(title, fontweight=\"bold\")\n\n x_positions = range(len(labels))\n bars = ax.bar(x_positions, values, color=colors, align=\"center\")\n\n ax.set_xticks(x_positions)\n ax.set_xticklabels(labels, rotation=45, ha=\"right\")\n\n for bar in bars:\n y_value = bar.get_height()\n ax.text(\n bar.get_x() + bar.get_width() / 2,\n y_value + 0.02,\n f\"{y_value:.2f}\",\n ha=\"center\",\n va=\"bottom\",\n )\n\n plt.rcParams[\"font.family\"] = \"sans-serif\"\n\n plt.tight_layout()\n plt.show()", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.mean_average_recall:[219:251]\n==supervision.metrics.recall:[654:686]\n )\n if self.recall_per_class.size == 0:\n out_str += \" No results\\n\"\n for class_id, recall_of_class in zip(\n self.matched_classes, self.recall_per_class\n ):\n out_str += f\" {class_id}: {recall_of_class}\\n\"\n\n indent = \" \"\n if self.small_objects is not None:\n indented = indent + str(self.small_objects).replace(\"\\n\", f\"\\n{indent}\")\n out_str += f\"\\nSmall objects:\\n{indented}\"\n if self.medium_objects is not None:\n indented = indent + str(self.medium_objects).replace(\"\\n\", f\"\\n{indent}\")\n out_str += f\"\\nMedium objects:\\n{indented}\"\n if self.large_objects is not None:\n indented = indent + str(self.large_objects).replace(\"\\n\", f\"\\n{indent}\")\n out_str += f\"\\nLarge objects:\\n{indented}\"\n\n return out_str\n\n def to_pandas(self) -> pd.DataFrame:\n \"\"\"\n Convert the result to a pandas DataFrame.\n\n Returns:\n The result as a DataFrame.\n \"\"\"\n ensure_pandas_installed()\n import pandas as pd\n\n pandas_data = {", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[770:793]\n==supervision.metrics.mean_average_recall:[320:345]\n )\n ax.set_title(title, fontweight=\"bold\")\n\n x_positions = range(len(labels))\n bars = ax.bar(x_positions, values, color=colors, align=\"center\")\n\n ax.set_xticks(x_positions)\n ax.set_xticklabels(labels, rotation=45, ha=\"right\")\n\n for bar in bars:\n y_value = bar.get_height()\n ax.text(\n bar.get_x() + bar.get_width() / 2,\n y_value + 0.02,\n f\"{y_value:.2f}\",\n ha=\"center\",\n va=\"bottom\",\n )\n\n plt.rcParams[\"font.family\"] = \"sans-serif\"\n\n plt.tight_layout()\n plt.show()", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.annotators.core:[1552:1570]\n==supervision.draw.utils:[133:151]\n border_radius = min(border_radius, min(width, height) // 2)\n\n rectangle_coordinates = [\n ((x1 + border_radius, y1), (x2 - border_radius, y2)),\n ((x1, y1 + border_radius), (x2, y2 - border_radius)),\n ]\n circle_centers = [\n (x1 + border_radius, y1 + border_radius),\n (x2 - border_radius, y1 + border_radius),\n (x1 + border_radius, y2 - border_radius),\n (x2 - border_radius, y2 - border_radius),\n ]\n\n for coordinates in rectangle_coordinates:\n cv2.rectangle(\n img=scene,\n pt1=coordinates[0],\n pt2=coordinates[1],", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[773:793]\n==supervision.metrics.mean_average_precision:[316:338]\n x_positions = range(len(labels))\n bars = ax.bar(x_positions, values, color=colors, align=\"center\")\n\n ax.set_xticks(x_positions)\n ax.set_xticklabels(labels, rotation=45, ha=\"right\")\n\n for bar in bars:\n y_value = bar.get_height()\n ax.text(\n bar.get_x() + bar.get_width() / 2,\n y_value + 0.02,\n f\"{y_value:.2f}\",\n ha=\"center\",\n va=\"bottom\",\n )\n\n plt.rcParams[\"font.family\"] = \"sans-serif\"\n\n plt.tight_layout()\n plt.show()", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[713:739]\n==supervision.metrics.mean_average_recall:[254:279]\n }\n\n if self.small_objects is not None:\n small_objects_df = self.small_objects.to_pandas()\n for key, value in small_objects_df.items():\n pandas_data[f\"small_objects_{key}\"] = value\n if self.medium_objects is not None:\n medium_objects_df = self.medium_objects.to_pandas()\n for key, value in medium_objects_df.items():\n pandas_data[f\"medium_objects_{key}\"] = value\n if self.large_objects is not None:\n large_objects_df = self.large_objects.to_pandas()\n for key, value in large_objects_df.items():\n pandas_data[f\"large_objects_{key}\"] = value\n\n return pd.DataFrame(pandas_data, index=[0])\n\n def plot(self) -> None:\n \"\"\"\n Plot the Mean Average Recall results.\n\n ![example_plot](\\\n https://media.roboflow.com/supervision-docs/metrics/mAR_plot_example.png\\\n ){ align=center width=\"800\" }\n \"\"\"", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.precision:[256:281]\n==supervision.metrics.recall:[688:714]\n }\n\n if self.small_objects is not None:\n small_objects_df = self.small_objects.to_pandas()\n for key, value in small_objects_df.items():\n pandas_data[f\"small_objects_{key}\"] = value\n if self.medium_objects is not None:\n medium_objects_df = self.medium_objects.to_pandas()\n for key, value in medium_objects_df.items():\n pandas_data[f\"medium_objects_{key}\"] = value\n if self.large_objects is not None:\n large_objects_df = self.large_objects.to_pandas()\n for key, value in large_objects_df.items():\n pandas_data[f\"large_objects_{key}\"] = value\n\n return pd.DataFrame(pandas_data, index=[0])\n\n def plot(self) -> None:\n \"\"\"\n Plot the precision results.\n\n ![example_plot](\n https://media.roboflow.com/supervision-docs/metrics/precision_plot_example.png\n ){ align=center width=\"800\" }\n \"\"\"", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[713:728]\n==supervision.metrics.mean_average_precision:[248:264]\n }\n\n if self.small_objects is not None:\n small_objects_df = self.small_objects.to_pandas()\n for key, value in small_objects_df.items():\n pandas_data[f\"small_objects_{key}\"] = value\n if self.medium_objects is not None:\n medium_objects_df = self.medium_objects.to_pandas()\n for key, value in medium_objects_df.items():\n pandas_data[f\"medium_objects_{key}\"] = value\n if self.large_objects is not None:\n large_objects_df = self.large_objects.to_pandas()\n for key, value in large_objects_df.items():\n pandas_data[f\"large_objects_{key}\"] = value\n", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[600:672]\n==supervision.metrics.mean_average_recall:[47:83]\n return self.size_results\n\n @property\n def small_objects(self) -> F1ScoreResult | None:\n if self.size_results is None:\n return None\n return self.size_results.small_objects\n\n @small_objects.setter\n def small_objects(self, value: F1ScoreResult | None) -> None:\n self._ensure_size_results().small_objects = value\n\n @property\n def medium_objects(self) -> F1ScoreResult | None:\n if self.size_results is None:\n return None\n return self.size_results.medium_objects\n\n @medium_objects.setter\n def medium_objects(self, value: F1ScoreResult | None) -> None:\n self._ensure_size_results().medium_objects = value\n\n @property\n def large_objects(self) -> F1ScoreResult | None:\n if self.size_results is None:\n return None\n return self.size_results.large_objects\n\n @large_objects.setter\n def large_objects(self, value: F1ScoreResult | None) -> None:\n self._ensure_size_results().large_objects = value\n\n def __str__(self) -> str:\n \"\"\"\n Format as a pretty string.\n\n Example:\n ```pycon\n >>> import numpy as np\n >>> import supervision as sv\n >>> from supervision.metrics import F1Score\n >>> predictions = sv.Detections(\n ... xyxy=np.array([[0, 0, 10, 10]]),\n ... class_id=np.array([0]),\n ... confidence=np.array([0.9])\n ... )\n >>> targets = sv.Detections(\n ... xyxy=np.array([[0, 0, 10, 10]]),\n ... class_id=np.array([0])\n ... )\n >>> f1_metric = F1Score()\n >>> f1_result = f1_metric.update(predictions, targets).compute()\n >>> print(f1_result) # doctest: +ELLIPSIS\n F1ScoreResult:\n Metric target: MetricTarget.BOXES\n Averaging method: AveragingMethod.WEIGHTED\n F1 @ 50: 1.0000\n F1 @ 75: 1.0000\n F1 @ thresh: [1. ... 1.]\n IoU thresh: [0.5 0.55 ... 0.95]\n F1 per class:\n 0: [1. ... 1.]\n ...\n Medium objects:\n F1ScoreResult:\n Metric target: MetricTarget.BOXES\n Averaging method: AveragingMethod.WEIGHTED\n F1 @ 50: 0.0000\n ...\n\n ```\n \"\"\"", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[687:711]\n==supervision.metrics.mean_average_recall:[227:251]\n indent = \" \"\n if self.small_objects is not None:\n indented = indent + str(self.small_objects).replace(\"\\n\", f\"\\n{indent}\")\n out_str += f\"\\nSmall objects:\\n{indented}\"\n if self.medium_objects is not None:\n indented = indent + str(self.medium_objects).replace(\"\\n\", f\"\\n{indent}\")\n out_str += f\"\\nMedium objects:\\n{indented}\"\n if self.large_objects is not None:\n indented = indent + str(self.large_objects).replace(\"\\n\", f\"\\n{indent}\")\n out_str += f\"\\nLarge objects:\\n{indented}\"\n\n return out_str\n\n def to_pandas(self) -> pd.DataFrame:\n \"\"\"\n Convert the result to a pandas DataFrame.\n\n Returns:\n The result as a DataFrame.\n \"\"\"\n ensure_pandas_installed()\n import pandas as pd\n\n pandas_data = {", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[250:287]\n==supervision.metrics.precision:[567:604]\n )\n\n def _compute_precision_for_classes(\n self,\n matches: npt.NDArray[np.bool_],\n prediction_confidence: npt.NDArray[np.float32],\n prediction_class_ids: npt.NDArray[np.int32],\n true_class_ids: npt.NDArray[np.int32],\n ) -> tuple[\n npt.NDArray[np.float64],\n npt.NDArray[np.float64],\n npt.NDArray[np.int32],\n ]:\n \"\"\"Compute precision scores from concatenated stats across all images.\n\n ``unique_classes`` is the union of GT and predicted classes so that\n predictions of classes absent from GT still count as false positives.\n \"\"\"\n sorted_indices = np.argsort(-prediction_confidence)\n matches = matches[sorted_indices]\n prediction_class_ids = prediction_class_ids[sorted_indices]\n # Predictions whose class never appears in the ground truth are still\n # false positives, so include those classes in the confusion matrix\n # (their true-instance count is zero).\n unique_classes = np.unique(\n np.concatenate((true_class_ids, prediction_class_ids))\n )\n true_classes, true_counts = np.unique(true_class_ids, return_counts=True)\n class_counts = np.zeros(unique_classes.shape[0], dtype=int)\n class_counts[np.searchsorted(unique_classes, true_classes)] = true_counts\n\n # Shape: PxTh,P,C,C -> CxThx3\n confusion_matrix = self._compute_confusion_matrix(\n matches, prediction_class_ids, unique_classes, class_counts\n )\n\n # Shape: CxThx3 -> CxTh", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.precision:[230:254]\n==supervision.metrics.recall:[662:686]\n indent = \" \"\n if self.small_objects is not None:\n indented = indent + str(self.small_objects).replace(\"\\n\", f\"\\n{indent}\")\n out_str += f\"\\nSmall objects:\\n{indented}\"\n if self.medium_objects is not None:\n indented = indent + str(self.medium_objects).replace(\"\\n\", f\"\\n{indent}\")\n out_str += f\"\\nMedium objects:\\n{indented}\"\n if self.large_objects is not None:\n indented = indent + str(self.large_objects).replace(\"\\n\", f\"\\n{indent}\")\n out_str += f\"\\nLarge objects:\\n{indented}\"\n\n return out_str\n\n def to_pandas(self) -> pd.DataFrame:\n \"\"\"\n Convert the result to a pandas DataFrame.\n\n Returns:\n The result as a DataFrame.\n \"\"\"\n ensure_pandas_installed()\n import pandas as pd\n\n pandas_data = {", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.detection.utils.iou_and_nms:[39:53]\n==supervision.detection.vlm:[58:72]\n if isinstance(value, cls):\n return value\n if isinstance(value, str):\n value = value.lower()\n try:\n return cls(value)\n except ValueError:\n raise ValueError(f\"Invalid value: {value}. Must be one of {cls.list()}\")\n raise ValueError(\n f\"Invalid value type: {type(value)}. Must be an instance of \"\n f\"{cls.__name__} or str.\"\n )\n\n", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[389:417]\n==supervision.metrics.mean_average_recall:[678:707]\n false_negatives = num_true - true_positives\n\n confusion_matrix[class_idx] = np.stack(\n [true_positives, false_positives, false_negatives], axis=1\n )\n\n result_confusion_matrix: npt.NDArray[np.float64] = confusion_matrix\n return result_confusion_matrix\n\n @staticmethod\n def _compute_recall(\n confusion_matrix: npt.NDArray[np.float64],\n ) -> npt.NDArray[np.float64]:\n \"\"\"\n Broadcastable function, computing the recall from the confusion matrix.\n\n Args:\n confusion_matrix: shape (N, ..., 3), where the last dimension\n contains the true positives, false positives, and false negatives.\n\n Returns:\n shape (N, ...), containing the recall for each element.\n \"\"\"\n if not confusion_matrix.shape[-1] == 3:\n raise ValueError(\n f\"Confusion matrix must have shape (..., 3), got \"\n f\"{confusion_matrix.shape}\"\n )\n true_positives = confusion_matrix[..., 0]", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.detection:[1076:1090]\n==supervision.metrics.f1_score:[321:336]\n for i, iou_level in enumerate(iou_thresholds):\n matched_indices = np.where((iou >= iou_level) & correct_class)\n\n if matched_indices[0].shape[0]:\n combined_indices = np.stack(matched_indices, axis=1)\n iou_values = iou[matched_indices][:, None]\n matches = np.hstack([combined_indices, iou_values])\n\n if matched_indices[0].shape[0] > 1:\n matches = matches[matches[:, 2].argsort()[::-1]]\n matches = matches[np.unique(matches[:, 1], return_index=True)[1]]\n matches = matches[np.unique(matches[:, 0], return_index=True)[1]]\n\n correct[matches[:, 1].astype(int), i] = True", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[88:117]\n==supervision.metrics.mean_average_precision:[1468:1497]\n self._predictions_list = []\n self._targets_list = []\n\n def update(\n self,\n predictions: Detections | list[Detections],\n targets: Detections | list[Detections],\n ) -> MeanAveragePrecision:\n \"\"\"\n Add new predictions and targets to the metric, but do not compute the result.\n\n Args:\n predictions: The predicted detections.\n targets: The ground-truth detections.\n\n Returns:\n The updated metric instance.\n \"\"\"\n if not isinstance(predictions, list):\n predictions = [predictions]\n if not isinstance(targets, list):\n targets = [targets]\n\n if len(predictions) != len(targets):\n raise ValueError(\n f\"The number of predictions ({len(predictions)}) and\"\n f\" targets ({len(targets)}) during the update must be the same.\"\n )\n", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.detection.tools.csv_sink:[115:169]\n==supervision.detection.tools.json_sink:[118:172]\n self.file.close()\n\n @staticmethod\n def _slice_value(value: Any, i: int, n: int) -> Any:\n \"\"\"\n Return the i-th element when the value stores per-detection data.\n\n Dispatch rules:\n - np.ndarray with ndim == 0: return as-is for broadcasting\n - np.ndarray with ndim >= 1: return value[i]\n - list or tuple with len equal to n: return value[i]\n - any other type: return as-is for broadcasting\n\n Args:\n value: Custom-data field value.\n i: Zero-based detection index.\n n: Total number of detections.\n\n Returns:\n Element at position i if value is a per-detection sequence,\n otherwise value unchanged.\n \"\"\"\n if isinstance(value, np.ndarray):\n return value if value.ndim == 0 else value[i]\n if isinstance(value, (list, tuple)) and len(value) == n:\n return value[i]\n return value\n\n @staticmethod\n def parse_detection_data(\n detections: Detections, custom_data: dict[str, Any] | None = None\n ) -> list[dict[str, Any]]:\n \"\"\"\n Convert detections and optional custom data into per-detection rows.\n\n Builds one dictionary per detection containing bounding box coordinates,\n detection attributes, and any values from ``detections.data`` or\n ``custom_data``. List and tuple values in ``custom_data`` with length\n equal to ``len(detections.xyxy)`` are sliced one element per row; all\n other values are broadcast to every row.\n\n Args:\n detections: Detection data to serialize into row dictionaries.\n custom_data: Optional extra fields to include in each row.\n\n Returns:\n A list of dictionaries, one per detection, containing ``xyxy``\n coordinates, ``class_id``, ``confidence``, ``tracker_id``, and any\n values from ``detections.data`` or ``custom_data``.\n \"\"\"\n parsed_rows = []\n n = len(detections.xyxy)\n for i in range(n):\n row = {", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.dataset.formats.pascal_voc:[158:167]\n==supervision.dataset.formats.yolo:[397:406]\n if mask is not None:\n polygons = approximate_mask_with_polygons(\n mask=mask,\n min_image_area_percentage=min_image_area_percentage,\n max_image_area_percentage=max_image_area_percentage,\n approximation_percentage=approximation_percentage,\n )\n for polygon in polygons:\n xyxy = polygon_to_xyxy(polygon=polygon)", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[578:588]\n==supervision.metrics.mean_average_recall:[141:151]\n self.iou_thresholds = iou_thresholds\n self.matched_classes = matched_classes\n\n if size_results is not None:\n self.size_results = size_results\n elif (\n small_objects is not None\n or medium_objects is not None\n or large_objects is not None\n ):", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.detection.utils.iou_and_nms:[79:128]\n==supervision.detection.vlm:[62:72]\n try:\n return cls(value)\n except ValueError:\n raise ValueError(f\"Invalid value: {value}. Must be one of {cls.list()}\")\n raise ValueError(\n f\"Invalid value type: {type(value)}. Must be an instance of \"\n f\"{cls.__name__} or str.\"\n )\n\n", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.mean_average_precision:[87:96]\n==supervision.metrics.precision:[96:105]\n self.iou_thresholds = iou_thresholds\n self.matched_classes = matched_classes\n self._size_results = None\n\n if (\n small_objects is not None\n or medium_objects is not None\n or large_objects is not None\n ):", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.mean_average_recall:[701:710]\n==supervision.metrics.recall:[506:515]\n if not confusion_matrix.shape[-1] == 3:\n raise ValueError(\n f\"Confusion matrix must have shape (..., 3), got \"\n f\"{confusion_matrix.shape}\"\n )\n true_positives = confusion_matrix[..., 0]\n false_negatives = confusion_matrix[..., 2]\n\n denominator = true_positives + false_negatives", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.annotators.core:[1571:1578]\n==supervision.draw.utils:[152:159]\n thickness=-1,\n )\n for center in circle_centers:\n cv2.circle(\n img=scene,\n center=center,\n radius=border_radius,", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[411:418]\n==supervision.metrics.precision:[728:736]\n if not confusion_matrix.shape[-1] == 3:\n raise ValueError(\n f\"Confusion matrix must have shape (..., 3), got \"\n f\"{confusion_matrix.shape}\"\n )\n true_positives = confusion_matrix[..., 0]\n false_positives = confusion_matrix[..., 1]", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[589:598]\n==supervision.metrics.recall:[112:121]\n small_objects=small_objects,\n medium_objects=medium_objects,\n large_objects=large_objects,\n )\n else:\n self.size_results = None\n\n def _ensure_size_results(self) -> RecallSizeResults:\n if self.size_results is None:", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.mean_average_precision:[137:153]\n==supervision.metrics.precision:[135:151]\n self._size_results.small_objects = value\n\n @property\n def medium_objects(self) -> PrecisionResult | None:\n \"\"\"The precision results for medium objects.\"\"\"\n if self._size_results is None:\n return None\n\n return self._size_results.medium_objects\n\n @medium_objects.setter\n def medium_objects(self, value: PrecisionResult | None) -> None:\n if self._size_results is None and value is None:\n return\n\n if self._size_results is None:", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.mean_average_precision:[155:171]\n==supervision.metrics.precision:[153:169]\n self._size_results.medium_objects = value\n\n @property\n def large_objects(self) -> PrecisionResult | None:\n \"\"\"The precision results for large objects.\"\"\"\n if self._size_results is None:\n return None\n\n return self._size_results.large_objects\n\n @large_objects.setter\n def large_objects(self, value: PrecisionResult | None) -> None:\n if self._size_results is None and value is None:\n return\n\n if self._size_results is None:", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.mean_average_recall:[533:541]\n==supervision.metrics.precision:[545:553]\n iou_thresholds=iou_thresholds,\n matched_classes=np.array([], dtype=int),\n small_objects=None,\n medium_objects=None,\n large_objects=None,\n )\n\n concatenated_stats = [np.concatenate(items, 0) for items in zip(*stats)]", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.annotators.utils:[99:105]\n==supervision.key_points.annotators:[921:935]\n return (\n center_x - text_w // 2,\n center_y - text_h // 2,\n center_x + text_w // 2,\n center_y + text_h // 2,\n )", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.dataset.formats.coco:[241:249]\n==supervision.dataset.formats.pascal_voc:[159:165]\n polygons = approximate_mask_with_polygons(\n mask=mask,\n min_image_area_percentage=min_image_area_percentage,\n max_image_area_percentage=max_image_area_percentage,\n approximation_percentage=approximation_percentage,\n )\n # Small/noisy masks can be filtered out by approximation settings.\n # Guard against empty output and keep a valid COCO annotation record.", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[589:597]\n==supervision.metrics.mean_average_recall:[152:161]\n small_objects=small_objects,\n medium_objects=medium_objects,\n large_objects=large_objects,\n )\n else:\n self.size_results = None\n\n @property\n def mAR_at_1(self) -> float:", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[759:767]\n==supervision.metrics.precision:[301:309]\n colors += [LEGACY_COLOR_PALETTE[4]] * 2\n\n plt.rcParams[\"font.family\"] = \"monospace\"\n\n _, ax = plt.subplots(figsize=(10, 6))\n ax.set_ylim(0, 1)\n ax.set_ylabel(\"Value\", fontweight=\"bold\")\n title = (", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[411:417]\n==supervision.metrics.recall:[506:512]\n if not confusion_matrix.shape[-1] == 3:\n raise ValueError(\n f\"Confusion matrix must have shape (..., 3), got \"\n f\"{confusion_matrix.shape}\"\n )\n true_positives = confusion_matrix[..., 0]", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.mean_average_precision:[306:314]\n==supervision.metrics.mean_average_recall:[310:318]\n ]\n colors += [LEGACY_COLOR_PALETTE[4]] * 3\n\n plt.rcParams[\"font.family\"] = \"monospace\"\n\n _, ax = plt.subplots(figsize=(10, 6))\n ax.set_ylim(0, 1)\n ax.set_ylabel(\"Value\", fontweight=\"bold\")", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.mean_average_precision:[124:135]\n==supervision.metrics.precision:[122:133]\n if self._size_results is None:\n return None\n\n return self._size_results.small_objects\n\n @small_objects.setter\n def small_objects(self, value: PrecisionResult | None) -> None:\n if self._size_results is None and value is None:\n return\n\n if self._size_results is None:", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.mean_average_recall:[550:568]\n==supervision.metrics.precision:[562:585]\n iou_thresholds=iou_thresholds,\n matched_classes=unique_classes,\n small_objects=None,\n medium_objects=None,\n large_objects=None,\n )\n\n def _compute_average_recall_for_classes(\n self,\n matches: npt.NDArray[np.bool_],\n prediction_indices: npt.NDArray[np.int32],\n prediction_class_ids: npt.NDArray[np.int32],\n true_class_ids: npt.NDArray[np.int32],\n ) -> tuple[\n npt.NDArray[np.float64],\n npt.NDArray[np.float64],\n npt.NDArray[np.int32],\n ]:", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.mean_average_recall:[701:707]\n==supervision.metrics.precision:[728:734]\n if not confusion_matrix.shape[-1] == 3:\n raise ValueError(\n f\"Confusion matrix must have shape (..., 3), got \"\n f\"{confusion_matrix.shape}\"\n )\n true_positives = confusion_matrix[..., 0]", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.precision:[562:591]\n==supervision.metrics.recall:[361:382]\n iou_thresholds=iou_thresholds,\n matched_classes=unique_classes,\n small_objects=None,\n medium_objects=None,\n large_objects=None,\n )\n\n def _compute_recall_for_classes(\n self,\n matches: npt.NDArray[np.bool_],\n prediction_confidence: npt.NDArray[np.float32],\n prediction_class_ids: npt.NDArray[np.int32],\n true_class_ids: npt.NDArray[np.int32],\n ) -> tuple[\n npt.NDArray[np.float64],\n npt.NDArray[np.float64],\n npt.NDArray[np.int32],\n ]:\n sorted_indices = np.argsort(-prediction_confidence)\n matches = matches[sorted_indices]\n prediction_class_ids = prediction_class_ids[sorted_indices]", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[761:767]\n==supervision.metrics.mean_average_recall:[313:319]\n plt.rcParams[\"font.family\"] = \"monospace\"\n\n _, ax = plt.subplots(figsize=(10, 6))\n ax.set_ylim(0, 1)\n ax.set_ylabel(\"Value\", fontweight=\"bold\")\n title = (", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "cyclic-import", + "message": "Cyclic import (supervision -> supervision.detection.tools.polygon_zone)", + "message-id": "R0401" + } +] \ No newline at end of file diff --git a/metrics-after-pylint/pylint_score_depois.txt b/metrics-after-pylint/pylint_score_depois.txt new file mode 100644 index 0000000000..d923dab9ce --- /dev/null +++ b/metrics-after-pylint/pylint_score_depois.txt @@ -0,0 +1 @@ +Your code has been rated at 7.73/10 (previous run: 7.73/10, +0.00) diff --git a/metrics-after-pylint/pylint_warning_depois.json b/metrics-after-pylint/pylint_warning_depois.json new file mode 100644 index 0000000000..4262806dd3 --- /dev/null +++ b/metrics-after-pylint/pylint_warning_depois.json @@ -0,0 +1,1562 @@ +[ + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "BoxAnnotator.annotate", + "line": 287, + "column": 4, + "endLine": 287, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'BoxAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "OrientedBoxAnnotator.annotate", + "line": 374, + "column": 4, + "endLine": 374, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'OrientedBoxAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "MaskAnnotator.annotate", + "line": 524, + "column": 4, + "endLine": 524, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'MaskAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "PolygonAnnotator.annotate", + "line": 612, + "column": 4, + "endLine": 612, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'PolygonAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "ColorAnnotator.annotate", + "line": 703, + "column": 4, + "endLine": 703, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'ColorAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "HaloAnnotator.annotate", + "line": 803, + "column": 4, + "endLine": 803, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'HaloAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "EllipseAnnotator.annotate", + "line": 903, + "column": 4, + "endLine": 903, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'EllipseAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "BoxCornerAnnotator.annotate", + "line": 999, + "column": 4, + "endLine": 999, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'BoxCornerAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "CircleAnnotator.annotate", + "line": 1092, + "column": 4, + "endLine": 1092, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'CircleAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "DotAnnotator.annotate", + "line": 1195, + "column": 4, + "endLine": 1195, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'DotAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "LabelAnnotator.annotate", + "line": 1325, + "column": 4, + "endLine": 1325, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'LabelAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "RichLabelAnnotator.annotate", + "line": 1642, + "column": 4, + "endLine": 1642, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'RichLabelAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "IconAnnotator.annotate", + "line": 1885, + "column": 4, + "endLine": 1885, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'IconAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "BlurAnnotator.annotate", + "line": 1987, + "column": 4, + "endLine": 1987, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'BlurAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "TraceAnnotator.annotate", + "line": 2090, + "column": 4, + "endLine": 2090, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'TraceAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "HeatMapAnnotator.annotate", + "line": 2228, + "column": 4, + "endLine": 2228, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'HeatMapAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "PixelateAnnotator.annotate", + "line": 2323, + "column": 4, + "endLine": 2323, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'PixelateAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "TriangleAnnotator.annotate", + "line": 2437, + "column": 4, + "endLine": 2437, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'TriangleAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "RoundBoxAnnotator.annotate", + "line": 2553, + "column": 4, + "endLine": 2553, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'RoundBoxAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "PercentageBarAnnotator.annotate", + "line": 2697, + "column": 4, + "endLine": 2697, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'PercentageBarAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "CropAnnotator.annotate", + "line": 2896, + "column": 4, + "endLine": 2896, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'CropAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "BackgroundOverlayAnnotator.annotate", + "line": 3051, + "column": 4, + "endLine": 3051, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'BackgroundOverlayAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.dataset.core", + "obj": "DetectionDataset.merge.is_in_memory", + "line": 280, + "column": 23, + "endLine": 280, + "endColumn": 48, + "path": "src\\supervision\\dataset\\core.py", + "symbol": "protected-access", + "message": "Access to a protected member _images_in_memory of a client class", + "message-id": "W0212" + }, + { + "type": "warning", + "module": "supervision.dataset.core", + "obj": "DetectionDataset.merge.is_lazy", + "line": 283, + "column": 23, + "endLine": 283, + "endColumn": 48, + "path": "src\\supervision\\dataset\\core.py", + "symbol": "protected-access", + "message": "Access to a protected member _images_in_memory of a client class", + "message-id": "W0212" + }, + { + "type": "warning", + "module": "supervision.dataset.core", + "obj": "DetectionDataset.merge", + "line": 294, + "column": 36, + "endLine": 294, + "endColumn": 61, + "path": "src\\supervision\\dataset\\core.py", + "symbol": "protected-access", + "message": "Access to a protected member _images_in_memory of a client class", + "message-id": "W0212" + }, + { + "type": "warning", + "module": "supervision.dataset.core", + "obj": "DetectionDataset.as_pascal_voc", + "line": 384, + "column": 21, + "endLine": 384, + "endColumn": 48, + "path": "src\\supervision\\dataset\\core.py", + "symbol": "unspecified-encoding", + "message": "Using open without explicitly specifying an encoding", + "message-id": "W1514" + }, + { + "type": "warning", + "module": "supervision.dataset.utils", + "obj": "save_dataset_images", + "line": 132, + "column": 25, + "endLine": 132, + "endColumn": 50, + "path": "src\\supervision\\dataset\\utils.py", + "symbol": "protected-access", + "message": "Access to a protected member _images_in_memory of a client class", + "message-id": "W0212" + }, + { + "type": "warning", + "module": "supervision.dataset.utils", + "obj": "save_dataset_images", + "line": 133, + "column": 20, + "endLine": 133, + "endColumn": 45, + "path": "src\\supervision\\dataset\\utils.py", + "symbol": "protected-access", + "message": "Access to a protected member _images_in_memory of a client class", + "message-id": "W0212" + }, + { + "type": "warning", + "module": "supervision.dataset.formats.yolo", + "obj": "_extract_class_names.", + "line": 121, + "column": 43, + "endLine": 121, + "endColumn": 59, + "path": "src\\supervision\\dataset\\formats\\yolo.py", + "symbol": "unnecessary-lambda", + "message": "Lambda may not be necessary", + "message-id": "W0108" + }, + { + "type": "warning", + "module": "supervision.detection.compact_mask", + "obj": "CompactMask.merge", + "line": 958, + "column": 22, + "endLine": 958, + "endColumn": 48, + "path": "src\\supervision\\detection\\compact_mask.py", + "symbol": "protected-access", + "message": "Access to a protected member _image_shape of a client class", + "message-id": "W0212" + }, + { + "type": "warning", + "module": "supervision.detection.compact_mask", + "obj": "CompactMask.merge", + "line": 960, + "column": 15, + "endLine": 960, + "endColumn": 30, + "path": "src\\supervision\\detection\\compact_mask.py", + "symbol": "protected-access", + "message": "Access to a protected member _image_shape of a client class", + "message-id": "W0212" + }, + { + "type": "warning", + "module": "supervision.detection.compact_mask", + "obj": "CompactMask.merge", + "line": 963, + "column": 40, + "endLine": 963, + "endColumn": 55, + "path": "src\\supervision\\detection\\compact_mask.py", + "symbol": "protected-access", + "message": "Access to a protected member _image_shape of a client class", + "message-id": "W0212" + }, + { + "type": "warning", + "module": "supervision.detection.compact_mask", + "obj": "CompactMask.merge", + "line": 971, + "column": 28, + "endLine": 971, + "endColumn": 36, + "path": "src\\supervision\\detection\\compact_mask.py", + "symbol": "protected-access", + "message": "Access to a protected member _rles of a client class", + "message-id": "W0212" + }, + { + "type": "warning", + "module": "supervision.detection.compact_mask", + "obj": "CompactMask.merge", + "line": 976, + "column": 13, + "endLine": 976, + "endColumn": 28, + "path": "src\\supervision\\detection\\compact_mask.py", + "symbol": "protected-access", + "message": "Access to a protected member _crop_shapes of a client class", + "message-id": "W0212" + }, + { + "type": "warning", + "module": "supervision.detection.compact_mask", + "obj": "CompactMask.merge", + "line": 979, + "column": 13, + "endLine": 979, + "endColumn": 24, + "path": "src\\supervision\\detection\\compact_mask.py", + "symbol": "protected-access", + "message": "Access to a protected member _offsets of a client class", + "message-id": "W0212" + }, + { + "type": "warning", + "module": "supervision.detection.core", + "obj": "Detections.from_lmm", + "line": 1417, + "column": 16, + "endLine": 1420, + "endColumn": 17, + "path": "src\\supervision\\detection\\core.py", + "symbol": "raise-missing-from", + "message": "Consider explicitly re-raising using 'except ValueError as exc' and 'raise ValueError(f\"Invalid LMM string '{lmm}'. Must be one of {[m.value for m in LMM]}\") from exc'", + "message-id": "W0707" + }, + { + "type": "warning", + "module": "supervision.detection.line_zone", + "obj": "_multiclass_config_property.getter", + "line": 65, + "column": 23, + "endLine": 65, + "endColumn": 35, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "protected-access", + "message": "Access to a protected member _config of a client class", + "message-id": "W0212" + }, + { + "type": "warning", + "module": "supervision.detection.line_zone", + "obj": "_multiclass_config_property.setter", + "line": 68, + "column": 16, + "endLine": 68, + "endColumn": 28, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "protected-access", + "message": "Access to a protected member _config of a client class", + "message-id": "W0212" + }, + { + "type": "warning", + "module": "supervision.detection.vlm", + "obj": "LMM.from_value", + "line": 66, + "column": 16, + "endLine": 66, + "endColumn": 88, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "raise-missing-from", + "message": "Consider explicitly re-raising using 'except ValueError as exc' and 'raise ValueError(f'Invalid value: {value}. Must be one of {cls.list()}') from exc'", + "message-id": "W0707" + }, + { + "type": "warning", + "module": "supervision.detection.vlm", + "obj": "VLM.from_value", + "line": 109, + "column": 16, + "endLine": 109, + "endColumn": 88, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "raise-missing-from", + "message": "Consider explicitly re-raising using 'except ValueError as exc' and 'raise ValueError(f'Invalid value: {value}. Must be one of {cls.list()}') from exc'", + "message-id": "W0707" + }, + { + "type": "warning", + "module": "supervision.detection.vlm", + "obj": "_validate_vlm_parameters", + "line": 184, + "column": 12, + "endLine": 186, + "endColumn": 13, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "raise-missing-from", + "message": "Consider explicitly re-raising using 'except ValueError as exc' and 'raise ValueError(f'Invalid vlm value: {vlm}. Must be one of {[e.value for e in VLM]}') from exc'", + "message-id": "W0707" + }, + { + "type": "warning", + "module": "supervision.detection.vlm", + "obj": "recover_truncated_qwen_2_5_vl_response", + "line": 301, + "column": 11, + "endLine": 301, + "endColumn": 20, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "broad-exception-caught", + "message": "Catching too general exception Exception", + "message-id": "W0718" + }, + { + "type": "warning", + "module": "supervision.detection.vlm", + "obj": "_decode_mask_for_item", + "line": 744, + "column": 11, + "endLine": 744, + "endColumn": 20, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "broad-exception-caught", + "message": "Catching too general exception Exception", + "message-id": "W0718" + }, + { + "type": "warning", + "module": "supervision.detection.tools.csv_sink", + "obj": "CSVSink.open", + "line": 108, + "column": 20, + "endLine": 108, + "endColumn": 57, + "path": "src\\supervision\\detection\\tools\\csv_sink.py", + "symbol": "unspecified-encoding", + "message": "Using open without explicitly specifying an encoding", + "message-id": "W1514" + }, + { + "type": "warning", + "module": "supervision.detection.tools.csv_sink", + "obj": "CSVSink.append", + "line": 211, + "column": 12, + "endLine": 213, + "endColumn": 13, + "path": "src\\supervision\\detection\\tools\\csv_sink.py", + "symbol": "broad-exception-raised", + "message": "Raising too general exception: Exception", + "message-id": "W0719" + }, + { + "type": "warning", + "module": "supervision.detection.tools.json_sink", + "obj": "JSONSink.open", + "line": 82, + "column": 20, + "endLine": 82, + "endColumn": 45, + "path": "src\\supervision\\detection\\tools\\json_sink.py", + "symbol": "unspecified-encoding", + "message": "Using open without explicitly specifying an encoding", + "message-id": "W1514" + }, + { + "type": "warning", + "module": "supervision.detection.utils.boxes", + "obj": "denormalize_boxes", + "line": 109, + "column": 4, + "endLine": 109, + "endColumn": 50, + "path": "src\\supervision\\detection\\utils\\boxes.py", + "symbol": "unused-argument", + "message": "Unused argument 'normalized_xyxy'", + "message-id": "W0613" + }, + { + "type": "warning", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "OverlapFilter.from_value", + "line": 47, + "column": 16, + "endLine": 47, + "endColumn": 88, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "raise-missing-from", + "message": "Consider explicitly re-raising using 'except ValueError as exc' and 'raise ValueError(f'Invalid value: {value}. Must be one of {cls.list()}') from exc'", + "message-id": "W0707" + }, + { + "type": "warning", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "OverlapMetric.from_value", + "line": 83, + "column": 16, + "endLine": 83, + "endColumn": 88, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "raise-missing-from", + "message": "Consider explicitly re-raising using 'except ValueError as exc' and 'raise ValueError(f'Invalid value: {value}. Must be one of {cls.list()}') from exc'", + "message-id": "W0707" + }, + { + "type": "warning", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "mask_non_max_suppression", + "line": 845, + "column": 4, + "endLine": 845, + "endColumn": 23, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "unused-argument", + "message": "Unused argument 'mask_dimension'", + "message-id": "W0613" + }, + { + "type": "warning", + "module": "supervision.keypoint.annotators", + "obj": "", + "line": 8, + "column": 0, + "endLine": 13, + "endColumn": 1, + "path": "src\\supervision\\keypoint\\annotators.py", + "symbol": "unused-import", + "message": "Unused BaseKeyPointAnnotator imported from supervision.key_points.annotators", + "message-id": "W0611" + }, + { + "type": "warning", + "module": "supervision.keypoint.annotators", + "obj": "", + "line": 8, + "column": 0, + "endLine": 13, + "endColumn": 1, + "path": "src\\supervision\\keypoint\\annotators.py", + "symbol": "unused-import", + "message": "Unused EdgeAnnotator imported from supervision.key_points.annotators", + "message-id": "W0611" + }, + { + "type": "warning", + "module": "supervision.keypoint.annotators", + "obj": "", + "line": 8, + "column": 0, + "endLine": 13, + "endColumn": 1, + "path": "src\\supervision\\keypoint\\annotators.py", + "symbol": "unused-import", + "message": "Unused VertexAnnotator imported from supervision.key_points.annotators", + "message-id": "W0611" + }, + { + "type": "warning", + "module": "supervision.keypoint.annotators", + "obj": "", + "line": 8, + "column": 0, + "endLine": 13, + "endColumn": 1, + "path": "src\\supervision\\keypoint\\annotators.py", + "symbol": "unused-import", + "message": "Unused VertexLabelAnnotator imported from supervision.key_points.annotators", + "message-id": "W0611" + }, + { + "type": "warning", + "module": "supervision.keypoint.core", + "obj": "", + "line": 8, + "column": 0, + "endLine": 8, + "endColumn": 49, + "path": "src\\supervision\\keypoint\\core.py", + "symbol": "unused-import", + "message": "Unused KeyPoints imported from supervision.key_points.core", + "message-id": "W0611" + }, + { + "type": "warning", + "module": "supervision.key_points.core", + "obj": "KeyPoints._normalize_getitem_index", + "line": 955, + "column": 12, + "endLine": 955, + "endColumn": 59, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "unbalanced-tuple-unpacking", + "message": "Possible unbalanced tuple unpacking with sequence defined at line 105 of numpy.lib._index_tricks_impl: left side has 2 labels, right side has 0 values", + "message-id": "W0632" + }, + { + "type": "warning", + "module": "supervision.metrics.f1_score", + "obj": "F1Score.update", + "line": 92, + "column": 4, + "endLine": 92, + "endColumn": 14, + "path": "src\\supervision\\metrics\\f1_score.py", + "symbol": "arguments-differ", + "message": "Number of parameters was 3 in 'Metric.update' and is now 3 in overriding 'F1Score.update' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.metrics.f1_score", + "obj": "F1Score.update", + "line": 92, + "column": 4, + "endLine": 92, + "endColumn": 14, + "path": "src\\supervision\\metrics\\f1_score.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'F1Score.update' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.metrics.f1_score", + "obj": "F1Score.compute", + "line": 123, + "column": 4, + "endLine": 123, + "endColumn": 15, + "path": "src\\supervision\\metrics\\f1_score.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'F1Score.compute' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluator._compute_average_precision", + "line": 1156, + "column": 8, + "endLine": 1156, + "endColumn": 19, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "protected-access", + "message": "Access to a protected member _state of a client class", + "message-id": "W0212" + }, + { + "type": "warning", + "module": "supervision.metrics.mean_average_precision", + "obj": "MeanAveragePrecision.update", + "line": 1472, + "column": 4, + "endLine": 1472, + "endColumn": 14, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "arguments-differ", + "message": "Number of parameters was 3 in 'Metric.update' and is now 3 in overriding 'MeanAveragePrecision.update' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.metrics.mean_average_precision", + "obj": "MeanAveragePrecision.update", + "line": 1472, + "column": 4, + "endLine": 1472, + "endColumn": 14, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'MeanAveragePrecision.update' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.metrics.mean_average_precision", + "obj": "MeanAveragePrecision.compute", + "line": 1627, + "column": 4, + "endLine": 1627, + "endColumn": 15, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'MeanAveragePrecision.compute' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.metrics.mean_average_recall", + "obj": "MeanAverageRecall.update", + "line": 408, + "column": 4, + "endLine": 408, + "endColumn": 14, + "path": "src\\supervision\\metrics\\mean_average_recall.py", + "symbol": "arguments-differ", + "message": "Number of parameters was 3 in 'Metric.update' and is now 3 in overriding 'MeanAverageRecall.update' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.metrics.mean_average_recall", + "obj": "MeanAverageRecall.update", + "line": 408, + "column": 4, + "endLine": 408, + "endColumn": 14, + "path": "src\\supervision\\metrics\\mean_average_recall.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'MeanAverageRecall.update' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.metrics.mean_average_recall", + "obj": "MeanAverageRecall.compute", + "line": 439, + "column": 4, + "endLine": 439, + "endColumn": 15, + "path": "src\\supervision\\metrics\\mean_average_recall.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'MeanAverageRecall.compute' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.metrics.precision", + "obj": "Precision.update", + "line": 403, + "column": 4, + "endLine": 403, + "endColumn": 14, + "path": "src\\supervision\\metrics\\precision.py", + "symbol": "arguments-differ", + "message": "Number of parameters was 3 in 'Metric.update' and is now 3 in overriding 'Precision.update' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.metrics.precision", + "obj": "Precision.update", + "line": 403, + "column": 4, + "endLine": 403, + "endColumn": 14, + "path": "src\\supervision\\metrics\\precision.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'Precision.update' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.metrics.precision", + "obj": "Precision.compute", + "line": 434, + "column": 4, + "endLine": 434, + "endColumn": 15, + "path": "src\\supervision\\metrics\\precision.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'Precision.compute' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.metrics.recall", + "obj": "Recall.update", + "line": 225, + "column": 4, + "endLine": 225, + "endColumn": 14, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "arguments-differ", + "message": "Number of parameters was 3 in 'Metric.update' and is now 3 in overriding 'Recall.update' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.metrics.recall", + "obj": "Recall.update", + "line": 225, + "column": 4, + "endLine": 225, + "endColumn": 14, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'Recall.update' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.metrics.recall", + "obj": "Recall.compute", + "line": 256, + "column": 4, + "endLine": 256, + "endColumn": 15, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'Recall.compute' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.metrics.recall", + "obj": "Recall._make_empty_content", + "line": 559, + "column": 8, + "endLine": 559, + "endColumn": 73, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "unreachable", + "message": "Unreachable code", + "message-id": "W0101" + }, + { + "type": "warning", + "module": "supervision.metrics.utils.utils", + "obj": "ensure_pandas_installed", + "line": 5, + "column": 8, + "endLine": 9, + "endColumn": 9, + "path": "src\\supervision\\metrics\\utils\\utils.py", + "symbol": "raise-missing-from", + "message": "Consider explicitly re-raising using 'except ImportError as exc' and 'raise ImportError(\"`metrics` extra is required to run the function. Run `uv pip install 'supervision[metrics]'` or `uv add supervision --extra metrics`.\") from exc'", + "message-id": "W0707" + }, + { + "type": "warning", + "module": "supervision.metrics.utils.utils", + "obj": "ensure_pandas_installed", + "line": 3, + "column": 8, + "endLine": 3, + "endColumn": 21, + "path": "src\\supervision\\metrics\\utils\\utils.py", + "symbol": "unused-import", + "message": "Unused import pandas", + "message-id": "W0611" + }, + { + "type": "warning", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack.update_with_tensors", + "line": 207, + "column": 8, + "endLine": 207, + "endColumn": 25, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "unused-variable", + "message": "Unused variable 'activated_starcks'", + "message-id": "W0612" + }, + { + "type": "warning", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack.update_with_tensors", + "line": 208, + "column": 8, + "endLine": 208, + "endColumn": 22, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "unused-variable", + "message": "Unused variable 'refind_stracks'", + "message-id": "W0612" + }, + { + "type": "warning", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack.update_with_tensors", + "line": 209, + "column": 8, + "endLine": 209, + "endColumn": 20, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "unused-variable", + "message": "Unused variable 'lost_stracks'", + "message-id": "W0612" + }, + { + "type": "warning", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack.update_with_tensors", + "line": 210, + "column": 8, + "endLine": 210, + "endColumn": 23, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "unused-variable", + "message": "Unused variable 'removed_stracks'", + "message-id": "W0612" + }, + { + "type": "warning", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack._split_by_confidence", + "line": 261, + "column": 12, + "endLine": 261, + "endColumn": 28, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "pointless-string-statement", + "message": "String statement has no effect", + "message-id": "W0105" + }, + { + "type": "warning", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack._split_by_confidence", + "line": 284, + "column": 8, + "endLine": 288, + "endColumn": 45, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "unreachable", + "message": "Unreachable code", + "message-id": "W0101" + }, + { + "type": "warning", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack._split_by_confidence", + "line": 290, + "column": 8, + "endLine": 290, + "endColumn": 73, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "pointless-string-statement", + "message": "String statement has no effect", + "message-id": "W0105" + }, + { + "type": "warning", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack._split_by_confidence", + "line": 255, + "column": 8, + "endLine": 255, + "endColumn": 19, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "unused-variable", + "message": "Unused variable 'dets_second'", + "message-id": "W0612" + }, + { + "type": "warning", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack._split_by_confidence", + "line": 258, + "column": 8, + "endLine": 258, + "endColumn": 21, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "unused-variable", + "message": "Unused variable 'scores_second'", + "message-id": "W0612" + }, + { + "type": "warning", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack._split_by_confidence", + "line": 262, + "column": 12, + "endLine": 262, + "endColumn": 22, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "unused-variable", + "message": "Unused variable 'detections'", + "message-id": "W0612" + }, + { + "type": "warning", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack._remove_stale_lost_tracks", + "line": 426, + "column": 8, + "endLine": 428, + "endColumn": 9, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "unreachable", + "message": "Unreachable code", + "message-id": "W0101" + }, + { + "type": "warning", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack._update_state", + "line": 458, + "column": 8, + "endLine": 458, + "endColumn": 27, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "attribute-defined-outside-init", + "message": "Attribute 'tracked_tracks' defined outside __init__", + "message-id": "W0201" + }, + { + "type": "warning", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack._update_state", + "line": 461, + "column": 8, + "endLine": 461, + "endColumn": 27, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "attribute-defined-outside-init", + "message": "Attribute 'tracked_tracks' defined outside __init__", + "message-id": "W0201" + }, + { + "type": "warning", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack._update_state", + "line": 462, + "column": 8, + "endLine": 462, + "endColumn": 27, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "attribute-defined-outside-init", + "message": "Attribute 'tracked_tracks' defined outside __init__", + "message-id": "W0201" + }, + { + "type": "warning", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack._update_state", + "line": 467, + "column": 8, + "endLine": 467, + "endColumn": 27, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "attribute-defined-outside-init", + "message": "Attribute 'tracked_tracks' defined outside __init__", + "message-id": "W0201" + }, + { + "type": "warning", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack._update_state", + "line": 463, + "column": 8, + "endLine": 463, + "endColumn": 24, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "attribute-defined-outside-init", + "message": "Attribute 'lost_tracks' defined outside __init__", + "message-id": "W0201" + }, + { + "type": "warning", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack._update_state", + "line": 465, + "column": 8, + "endLine": 465, + "endColumn": 24, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "attribute-defined-outside-init", + "message": "Attribute 'lost_tracks' defined outside __init__", + "message-id": "W0201" + }, + { + "type": "warning", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack._update_state", + "line": 467, + "column": 29, + "endLine": 467, + "endColumn": 45, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "attribute-defined-outside-init", + "message": "Attribute 'lost_tracks' defined outside __init__", + "message-id": "W0201" + }, + { + "type": "warning", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack._update_state", + "line": 466, + "column": 8, + "endLine": 466, + "endColumn": 27, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "attribute-defined-outside-init", + "message": "Attribute 'removed_tracks' defined outside __init__", + "message-id": "W0201" + }, + { + "type": "warning", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "STrack.multi_predict", + "line": 170, + "column": 23, + "endLine": 170, + "endColumn": 31, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "protected-access", + "message": "Access to a protected member _data of a client class", + "message-id": "W0212" + }, + { + "type": "warning", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "STrack.multi_predict", + "line": 171, + "column": 23, + "endLine": 171, + "endColumn": 31, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "protected-access", + "message": "Access to a protected member _data of a client class", + "message-id": "W0212" + }, + { + "type": "warning", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "STrack.multi_predict", + "line": 172, + "column": 34, + "endLine": 172, + "endColumn": 42, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "protected-access", + "message": "Access to a protected member _data of a client class", + "message-id": "W0212" + }, + { + "type": "warning", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "STrack.multi_predict", + "line": 173, + "column": 40, + "endLine": 173, + "endColumn": 48, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "protected-access", + "message": "Access to a protected member _data of a client class", + "message-id": "W0212" + }, + { + "type": "warning", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "STrack.multi_predict", + "line": 174, + "column": 19, + "endLine": 174, + "endColumn": 27, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "protected-access", + "message": "Access to a protected member _data of a client class", + "message-id": "W0212" + }, + { + "type": "warning", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "STrack.multi_predict", + "line": 181, + "column": 16, + "endLine": 181, + "endColumn": 32, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "protected-access", + "message": "Access to a protected member _data of a client class", + "message-id": "W0212" + }, + { + "type": "warning", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "STrack.multi_predict", + "line": 182, + "column": 16, + "endLine": 182, + "endColumn": 32, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "protected-access", + "message": "Access to a protected member _data of a client class", + "message-id": "W0212" + }, + { + "type": "warning", + "module": "supervision.utils.file", + "obj": "NumpyJsonEncoder.default", + "line": 12, + "column": 4, + "endLine": 12, + "endColumn": 15, + "path": "src\\supervision\\utils\\file.py", + "symbol": "arguments-renamed", + "message": "Parameter 'o' has been renamed to 'obj' in overriding 'NumpyJsonEncoder.default' method", + "message-id": "W0237" + }, + { + "type": "warning", + "module": "supervision.utils.file", + "obj": "read_txt_file", + "line": 120, + "column": 9, + "endLine": 120, + "endColumn": 29, + "path": "src\\supervision\\utils\\file.py", + "symbol": "unspecified-encoding", + "message": "Using open without explicitly specifying an encoding", + "message-id": "W1514" + }, + { + "type": "warning", + "module": "supervision.utils.file", + "obj": "save_text_file", + "line": 137, + "column": 9, + "endLine": 137, + "endColumn": 34, + "path": "src\\supervision\\utils\\file.py", + "symbol": "unspecified-encoding", + "message": "Using open without explicitly specifying an encoding", + "message-id": "W1514" + }, + { + "type": "warning", + "module": "supervision.utils.file", + "obj": "read_json_file", + "line": 166, + "column": 9, + "endLine": 166, + "endColumn": 29, + "path": "src\\supervision\\utils\\file.py", + "symbol": "unspecified-encoding", + "message": "Using open without explicitly specifying an encoding", + "message-id": "W1514" + }, + { + "type": "warning", + "module": "supervision.utils.file", + "obj": "save_json_file", + "line": 182, + "column": 9, + "endLine": 182, + "endColumn": 34, + "path": "src\\supervision\\utils\\file.py", + "symbol": "unspecified-encoding", + "message": "Using open without explicitly specifying an encoding", + "message-id": "W1514" + }, + { + "type": "warning", + "module": "supervision.utils.file", + "obj": "read_yaml_file", + "line": 196, + "column": 9, + "endLine": 196, + "endColumn": 29, + "path": "src\\supervision\\utils\\file.py", + "symbol": "unspecified-encoding", + "message": "Using open without explicitly specifying an encoding", + "message-id": "W1514" + }, + { + "type": "warning", + "module": "supervision.utils.file", + "obj": "save_yaml_file", + "line": 210, + "column": 9, + "endLine": 210, + "endColumn": 34, + "path": "src\\supervision\\utils\\file.py", + "symbol": "unspecified-encoding", + "message": "Using open without explicitly specifying an encoding", + "message-id": "W1514" + }, + { + "type": "warning", + "module": "supervision.utils.internal", + "obj": "SupervisionWarnings", + "line": 18, + "column": 4, + "endLine": 18, + "endColumn": 8, + "path": "src\\supervision\\utils\\internal.py", + "symbol": "unnecessary-pass", + "message": "Unnecessary pass statement", + "message-id": "W0107" + }, + { + "type": "warning", + "module": "supervision.utils.internal", + "obj": "format_warning", + "line": 24, + "column": 4, + "endLine": 24, + "endColumn": 17, + "path": "src\\supervision\\utils\\internal.py", + "symbol": "unused-argument", + "message": "Unused argument 'filename'", + "message-id": "W0613" + }, + { + "type": "warning", + "module": "supervision.utils.internal", + "obj": "format_warning", + "line": 25, + "column": 4, + "endLine": 25, + "endColumn": 15, + "path": "src\\supervision\\utils\\internal.py", + "symbol": "unused-argument", + "message": "Unused argument 'lineno'", + "message-id": "W0613" + }, + { + "type": "warning", + "module": "supervision.utils.internal", + "obj": "format_warning", + "line": 26, + "column": 4, + "endLine": 26, + "endColumn": 20, + "path": "src\\supervision\\utils\\internal.py", + "symbol": "unused-argument", + "message": "Unused argument 'line'", + "message-id": "W0613" + }, + { + "type": "warning", + "module": "supervision.utils.video", + "obj": "VideoInfo.from_video_path", + "line": 62, + "column": 12, + "endLine": 62, + "endColumn": 68, + "path": "src\\supervision\\utils\\video.py", + "symbol": "broad-exception-raised", + "message": "Raising too general exception: Exception", + "message-id": "W0719" + }, + { + "type": "warning", + "module": "supervision.utils.video", + "obj": "VideoSink.__enter__", + "line": 107, + "column": 12, + "endLine": 107, + "endColumn": 25, + "path": "src\\supervision\\utils\\video.py", + "symbol": "attribute-defined-outside-init", + "message": "Attribute '__fourcc' defined outside __init__", + "message-id": "W0201" + }, + { + "type": "warning", + "module": "supervision.utils.video", + "obj": "VideoSink.__enter__", + "line": 110, + "column": 12, + "endLine": 110, + "endColumn": 25, + "path": "src\\supervision\\utils\\video.py", + "symbol": "attribute-defined-outside-init", + "message": "Attribute '__fourcc' defined outside __init__", + "message-id": "W0201" + }, + { + "type": "warning", + "module": "supervision.utils.video", + "obj": "_mux_audio", + "line": 198, + "column": 11, + "endLine": 198, + "endColumn": 20, + "path": "src\\supervision\\utils\\video.py", + "symbol": "broad-exception-caught", + "message": "Catching too general exception Exception", + "message-id": "W0718" + }, + { + "type": "warning", + "module": "supervision.utils.video", + "obj": "_mux_audio", + "line": 162, + "column": 17, + "endLine": 187, + "endColumn": 9, + "path": "src\\supervision\\utils\\video.py", + "symbol": "subprocess-run-check", + "message": "'subprocess.run' used without explicitly defining the value for 'check'.", + "message-id": "W1510" + }, + { + "type": "warning", + "module": "supervision.utils.video", + "obj": "_validate_and_setup_video", + "line": 212, + "column": 8, + "endLine": 212, + "endColumn": 65, + "path": "src\\supervision\\utils\\video.py", + "symbol": "broad-exception-raised", + "message": "Raising too general exception: Exception", + "message-id": "W0719" + }, + { + "type": "warning", + "module": "supervision.utils.video", + "obj": "_validate_and_setup_video", + "line": 215, + "column": 8, + "endLine": 215, + "endColumn": 56, + "path": "src\\supervision\\utils\\video.py", + "symbol": "broad-exception-raised", + "message": "Raising too general exception: Exception", + "message-id": "W0719" + }, + { + "type": "warning", + "module": "supervision.utils.video", + "obj": "_VideoProcessor._process_frames", + "line": 397, + "column": 19, + "endLine": 397, + "endColumn": 28, + "path": "src\\supervision\\utils\\video.py", + "symbol": "broad-exception-caught", + "message": "Catching too general exception Exception", + "message-id": "W0718" + } +] \ No newline at end of file diff --git a/metrics-after-pytest/coverage_depois.json b/metrics-after-pytest/coverage_depois.json new file mode 100644 index 0000000000..ef3342f86c --- /dev/null +++ b/metrics-after-pytest/coverage_depois.json @@ -0,0 +1 @@ +{"meta": {"format": 3, "version": "7.13.1", "timestamp": "2026-06-30T11:39:35.163160", "branch_coverage": true, "show_contexts": false}, "files": {"extract_metrics_after_codecarbon.py": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 28, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 28, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 2, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [1, 2, 3, 4, 9, 12, 16, 26, 29, 32, 34, 43, 44, 45, 46, 48, 50, 51, 55, 56, 57, 58, 60, 62, 63, 64, 65, 66], "excluded_lines": [], "executed_branches": [], "missing_branches": [[45, 46], [45, 48]], "functions": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 28, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 28, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 2, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [1, 2, 3, 4, 9, 12, 16, 26, 29, 32, 34, 43, 44, 45, 46, 48, 50, 51, 55, 56, 57, 58, 60, 62, 63, 64, 65, 66], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": [[45, 46], [45, 48]]}}, "classes": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 28, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 28, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 2, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [1, 2, 3, 4, 9, 12, 16, 26, 29, 32, 34, 43, 44, 45, 46, 48, 50, 51, 55, 56, 57, 58, 60, 62, 63, 64, 65, 66], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": [[45, 46], [45, 48]]}}}, "extract_metrics_after_pylint.py": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 58, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 58, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 8, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 8, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [1, 2, 3, 4, 5, 8, 9, 11, 14, 16, 24, 25, 26, 27, 30, 31, 32, 33, 34, 36, 37, 38, 41, 42, 43, 44, 46, 54, 55, 56, 57, 58, 60, 63, 64, 65, 66, 67, 73, 76, 77, 78, 79, 80, 81, 83, 91, 92, 93, 94, 97, 98, 106, 107, 108, 109, 110, 112], "excluded_lines": [], "executed_branches": [], "missing_branches": [[36, 37], [36, 41], [42, 43], [42, 46], [54, 55], [54, 60], [77, 78], [77, 83]], "functions": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 58, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 58, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 8, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 8, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [1, 2, 3, 4, 5, 8, 9, 11, 14, 16, 24, 25, 26, 27, 30, 31, 32, 33, 34, 36, 37, 38, 41, 42, 43, 44, 46, 54, 55, 56, 57, 58, 60, 63, 64, 65, 66, 67, 73, 76, 77, 78, 79, 80, 81, 83, 91, 92, 93, 94, 97, 98, 106, 107, 108, 109, 110, 112], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": [[36, 37], [36, 41], [42, 43], [42, 46], [54, 55], [54, 60], [77, 78], [77, 83]]}}, "classes": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 58, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 58, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 8, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 8, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [1, 2, 3, 4, 5, 8, 9, 11, 14, 16, 24, 25, 26, 27, 30, 31, 32, 33, 34, 36, 37, 38, 41, 42, 43, 44, 46, 54, 55, 56, 57, 58, 60, 63, 64, 65, 66, 67, 73, 76, 77, 78, 79, 80, 81, 83, 91, 92, 93, 94, 97, 98, 106, 107, 108, 109, 110, 112], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": [[36, 37], [36, 41], [42, 43], [42, 46], [54, 55], [54, 60], [77, 78], [77, 83]]}}}, "extract_metrics_after_pytest.py": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 32, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 32, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 8, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 8, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [1, 2, 3, 4, 9, 13, 16, 19, 21, 22, 23, 24, 25, 27, 28, 29, 30, 31, 34, 36, 37, 38, 39, 41, 61, 62, 63, 64, 65, 66, 67, 68], "excluded_lines": [], "executed_branches": [], "missing_branches": [[21, 22], [21, 27], [22, 23], [22, 27], [23, 22], [23, 24], [27, 28], [27, 34]], "functions": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 32, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 32, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 8, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 8, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [1, 2, 3, 4, 9, 13, 16, 19, 21, 22, 23, 24, 25, 27, 28, 29, 30, 31, 34, 36, 37, 38, 39, 41, 61, 62, 63, 64, 65, 66, 67, 68], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": [[21, 22], [21, 27], [22, 23], [22, 27], [23, 22], [23, 24], [27, 28], [27, 34]]}}, "classes": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 32, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 32, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 8, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 8, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [1, 2, 3, 4, 9, 13, 16, 19, 21, 22, 23, 24, 25, 27, 28, 29, 30, 31, 34, 36, 37, 38, 39, 41, 61, 62, 63, 64, 65, 66, 67, 68], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": [[21, 22], [21, 27], [22, 23], [22, 27], [23, 22], [23, 24], [27, 28], [27, 34]]}}}, "extract_metrics_after_radon.py": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 111, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 111, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 34, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 34, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [1, 2, 3, 4, 6, 7, 10, 11, 12, 14, 15, 16, 17, 18, 19, 20, 21, 24, 25, 27, 28, 29, 30, 31, 32, 33, 34, 36, 38, 42, 45, 46, 47, 48, 49, 50, 53, 54, 61, 62, 63, 64, 65, 66, 76, 77, 78, 80, 82, 83, 84, 85, 86, 87, 88, 89, 90, 92, 93, 94, 95, 107, 120, 122, 123, 125, 126, 127, 128, 129, 130, 132, 133, 134, 135, 136, 137, 138, 140, 141, 142, 143, 144, 147, 149, 150, 151, 152, 153, 154, 155, 157, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 173, 174, 175, 176, 177, 178, 180], "excluded_lines": [], "executed_branches": [], "missing_branches": [[53, 54], [53, 61], [63, 64], [63, 78], [64, 65], [64, 66], [76, 63], [76, 77], [82, 83], [82, 120], [84, 85], [84, 92], [86, 87], [86, 88], [92, 93], [92, 107], [122, 123], [122, 147], [127, 128], [127, 130], [132, 122], [132, 133], [135, 136], [135, 138], [141, 142], [141, 144], [149, 150], [149, 157], [151, 152], [151, 155], [161, 162], [161, 164], [164, 165], [164, 166]], "functions": {"normalizar_caminho": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [7], "excluded_lines": [], "start_line": 6, "executed_branches": [], "missing_branches": []}, "rodar_radon": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 2, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [11, 12], "excluded_lines": [], "start_line": 10, "executed_branches": [], "missing_branches": []}, "extrair_funcoes": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 8, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 8, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 6, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [62, 63, 64, 65, 66, 76, 77, 78], "excluded_lines": [], "start_line": 61, "executed_branches": [], "missing_branches": [[63, 64], [63, 78], [64, 65], [64, 66], [76, 63], [76, 77]]}, "salvar_csv": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 11, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 11, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 4, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171], "excluded_lines": [], "start_line": 160, "executed_branches": [], "missing_branches": [[161, 162], [161, 164], [164, 165], [164, 166]]}, "": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 89, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 89, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 24, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 24, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [1, 2, 3, 4, 6, 10, 14, 15, 16, 17, 18, 19, 20, 21, 24, 25, 27, 28, 29, 30, 31, 32, 33, 34, 36, 38, 42, 45, 46, 47, 48, 49, 50, 53, 54, 61, 80, 82, 83, 84, 85, 86, 87, 88, 89, 90, 92, 93, 94, 95, 107, 120, 122, 123, 125, 126, 127, 128, 129, 130, 132, 133, 134, 135, 136, 137, 138, 140, 141, 142, 143, 144, 147, 149, 150, 151, 152, 153, 154, 155, 157, 160, 173, 174, 175, 176, 177, 178, 180], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": [[53, 54], [53, 61], [82, 83], [82, 120], [84, 85], [84, 92], [86, 87], [86, 88], [92, 93], [92, 107], [122, 123], [122, 147], [127, 128], [127, 130], [132, 122], [132, 133], [135, 136], [135, 138], [141, 142], [141, 144], [149, 150], [149, 157], [151, 152], [151, 155]]}}, "classes": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 111, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 111, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 34, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 34, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [1, 2, 3, 4, 6, 7, 10, 11, 12, 14, 15, 16, 17, 18, 19, 20, 21, 24, 25, 27, 28, 29, 30, 31, 32, 33, 34, 36, 38, 42, 45, 46, 47, 48, 49, 50, 53, 54, 61, 62, 63, 64, 65, 66, 76, 77, 78, 80, 82, 83, 84, 85, 86, 87, 88, 89, 90, 92, 93, 94, 95, 107, 120, 122, 123, 125, 126, 127, 128, 129, 130, 132, 133, 134, 135, 136, 137, 138, 140, 141, 142, 143, 144, 147, 149, 150, 151, 152, 153, 154, 155, 157, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 173, 174, 175, 176, 177, 178, 180], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": [[53, 54], [53, 61], [63, 64], [63, 78], [64, 65], [64, 66], [76, 63], [76, 77], [82, 83], [82, 120], [84, 85], [84, 92], [86, 87], [86, 88], [92, 93], [92, 107], [122, 123], [122, 147], [127, 128], [127, 130], [132, 122], [132, 133], [135, 136], [135, 138], [141, 142], [141, 144], [149, 150], [149, 157], [151, 152], [151, 155], [161, 162], [161, 164], [164, 165], [164, 166]]}}}, "extract_metrics_before_codecarbon.py": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 28, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 28, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 2, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [1, 2, 3, 4, 9, 12, 16, 26, 29, 32, 34, 43, 44, 45, 46, 48, 50, 51, 52, 53, 54, 55, 57, 59, 60, 61, 62, 63], "excluded_lines": [], "executed_branches": [], "missing_branches": [[45, 46], [45, 48]], "functions": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 28, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 28, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 2, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [1, 2, 3, 4, 9, 12, 16, 26, 29, 32, 34, 43, 44, 45, 46, 48, 50, 51, 52, 53, 54, 55, 57, 59, 60, 61, 62, 63], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": [[45, 46], [45, 48]]}}, "classes": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 28, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 28, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 2, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [1, 2, 3, 4, 9, 12, 16, 26, 29, 32, 34, 43, 44, 45, 46, 48, 50, 51, 52, 53, 54, 55, 57, 59, 60, 61, 62, 63], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": [[45, 46], [45, 48]]}}}, "extract_metrics_before_pylint.py": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 58, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 58, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 8, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 8, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [1, 2, 3, 4, 5, 8, 9, 11, 14, 16, 24, 25, 26, 27, 30, 31, 32, 33, 34, 36, 37, 38, 41, 42, 43, 44, 46, 54, 55, 56, 57, 58, 60, 63, 64, 65, 66, 67, 73, 76, 77, 78, 79, 80, 81, 83, 88, 89, 90, 91, 94, 95, 103, 104, 105, 106, 107, 109], "excluded_lines": [], "executed_branches": [], "missing_branches": [[36, 37], [36, 41], [42, 43], [42, 46], [54, 55], [54, 60], [77, 78], [77, 83]], "functions": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 58, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 58, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 8, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 8, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [1, 2, 3, 4, 5, 8, 9, 11, 14, 16, 24, 25, 26, 27, 30, 31, 32, 33, 34, 36, 37, 38, 41, 42, 43, 44, 46, 54, 55, 56, 57, 58, 60, 63, 64, 65, 66, 67, 73, 76, 77, 78, 79, 80, 81, 83, 88, 89, 90, 91, 94, 95, 103, 104, 105, 106, 107, 109], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": [[36, 37], [36, 41], [42, 43], [42, 46], [54, 55], [54, 60], [77, 78], [77, 83]]}}, "classes": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 58, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 58, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 8, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 8, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [1, 2, 3, 4, 5, 8, 9, 11, 14, 16, 24, 25, 26, 27, 30, 31, 32, 33, 34, 36, 37, 38, 41, 42, 43, 44, 46, 54, 55, 56, 57, 58, 60, 63, 64, 65, 66, 67, 73, 76, 77, 78, 79, 80, 81, 83, 88, 89, 90, 91, 94, 95, 103, 104, 105, 106, 107, 109], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": [[36, 37], [36, 41], [42, 43], [42, 46], [54, 55], [54, 60], [77, 78], [77, 83]]}}}, "extract_metrics_before_pytest.py": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 32, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 32, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 8, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 8, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [1, 2, 3, 4, 9, 13, 16, 19, 21, 22, 23, 24, 25, 27, 28, 29, 30, 31, 34, 36, 37, 38, 39, 41, 63, 64, 65, 66, 67, 68, 69, 70], "excluded_lines": [], "executed_branches": [], "missing_branches": [[21, 22], [21, 27], [22, 23], [22, 27], [23, 22], [23, 24], [27, 28], [27, 34]], "functions": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 32, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 32, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 8, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 8, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [1, 2, 3, 4, 9, 13, 16, 19, 21, 22, 23, 24, 25, 27, 28, 29, 30, 31, 34, 36, 37, 38, 39, 41, 63, 64, 65, 66, 67, 68, 69, 70], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": [[21, 22], [21, 27], [22, 23], [22, 27], [23, 22], [23, 24], [27, 28], [27, 34]]}}, "classes": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 32, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 32, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 8, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 8, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [1, 2, 3, 4, 9, 13, 16, 19, 21, 22, 23, 24, 25, 27, 28, 29, 30, 31, 34, 36, 37, 38, 39, 41, 63, 64, 65, 66, 67, 68, 69, 70], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": [[21, 22], [21, 27], [22, 23], [22, 27], [23, 22], [23, 24], [27, 28], [27, 34]]}}}, "extract_metrics_before_radon.py": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 111, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 111, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 34, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 34, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [1, 2, 3, 4, 7, 8, 12, 13, 16, 19, 20, 21, 22, 23, 24, 25, 26, 29, 30, 32, 33, 34, 35, 36, 37, 38, 39, 41, 43, 58, 60, 61, 62, 63, 64, 65, 68, 69, 79, 80, 81, 82, 83, 84, 96, 97, 98, 101, 103, 104, 105, 106, 107, 108, 109, 110, 111, 113, 114, 115, 116, 130, 145, 147, 148, 150, 151, 152, 153, 154, 155, 157, 158, 159, 160, 161, 164, 165, 167, 168, 169, 170, 171, 174, 176, 177, 178, 179, 180, 181, 182, 184, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 202, 203, 204, 205, 206, 207, 209], "excluded_lines": [], "executed_branches": [], "missing_branches": [[68, 69], [68, 79], [81, 82], [81, 98], [82, 83], [82, 84], [96, 81], [96, 97], [103, 104], [103, 145], [105, 106], [105, 113], [107, 108], [107, 109], [113, 114], [113, 130], [147, 148], [147, 174], [152, 153], [152, 155], [157, 147], [157, 158], [160, 161], [160, 165], [168, 169], [168, 171], [176, 177], [176, 184], [178, 179], [178, 182], [189, 190], [189, 192], [192, 193], [192, 194]], "functions": {"normalizar_caminho": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [8], "excluded_lines": [], "start_line": 7, "executed_branches": [], "missing_branches": []}, "rodar_radon": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 2, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [13, 16], "excluded_lines": [], "start_line": 12, "executed_branches": [], "missing_branches": []}, "extrair_funcoes": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 8, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 8, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 6, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [80, 81, 82, 83, 84, 96, 97, 98], "excluded_lines": [], "start_line": 79, "executed_branches": [], "missing_branches": [[81, 82], [81, 98], [82, 83], [82, 84], [96, 81], [96, 97]]}, "salvar_csv": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 11, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 11, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 4, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199], "excluded_lines": [], "start_line": 188, "executed_branches": [], "missing_branches": [[189, 190], [189, 192], [192, 193], [192, 194]]}, "": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 89, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 89, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 24, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 24, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [1, 2, 3, 4, 7, 12, 19, 20, 21, 22, 23, 24, 25, 26, 29, 30, 32, 33, 34, 35, 36, 37, 38, 39, 41, 43, 58, 60, 61, 62, 63, 64, 65, 68, 69, 79, 101, 103, 104, 105, 106, 107, 108, 109, 110, 111, 113, 114, 115, 116, 130, 145, 147, 148, 150, 151, 152, 153, 154, 155, 157, 158, 159, 160, 161, 164, 165, 167, 168, 169, 170, 171, 174, 176, 177, 178, 179, 180, 181, 182, 184, 188, 202, 203, 204, 205, 206, 207, 209], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": [[68, 69], [68, 79], [103, 104], [103, 145], [105, 106], [105, 113], [107, 108], [107, 109], [113, 114], [113, 130], [147, 148], [147, 174], [152, 153], [152, 155], [157, 147], [157, 158], [160, 161], [160, 165], [168, 169], [168, 171], [176, 177], [176, 184], [178, 179], [178, 182]]}}, "classes": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 111, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 111, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 34, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 34, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [1, 2, 3, 4, 7, 8, 12, 13, 16, 19, 20, 21, 22, 23, 24, 25, 26, 29, 30, 32, 33, 34, 35, 36, 37, 38, 39, 41, 43, 58, 60, 61, 62, 63, 64, 65, 68, 69, 79, 80, 81, 82, 83, 84, 96, 97, 98, 101, 103, 104, 105, 106, 107, 108, 109, 110, 111, 113, 114, 115, 116, 130, 145, 147, 148, 150, 151, 152, 153, 154, 155, 157, 158, 159, 160, 161, 164, 165, 167, 168, 169, 170, 171, 174, 176, 177, 178, 179, 180, 181, 182, 184, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 202, 203, 204, 205, 206, 207, 209], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": [[68, 69], [68, 79], [81, 82], [81, 98], [82, 83], [82, 84], [96, 81], [96, 97], [103, 104], [103, 145], [105, 106], [105, 113], [107, 108], [107, 109], [113, 114], [113, 130], [147, 148], [147, 174], [152, 153], [152, 155], [157, 147], [157, 158], [160, 161], [160, 165], [168, 169], [168, 171], [176, 177], [176, 184], [178, 179], [178, 182], [189, 190], [189, 192], [192, 193], [192, 194]]}}}, "extract_score_after_pylint.py": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 13, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 13, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 4, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [1, 2, 4, 5, 7, 9, 16, 17, 18, 19, 20, 21, 23], "excluded_lines": [], "executed_branches": [], "missing_branches": [[18, 19], [18, 23], [19, 18], [19, 20]], "functions": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 13, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 13, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 4, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [1, 2, 4, 5, 7, 9, 16, 17, 18, 19, 20, 21, 23], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": [[18, 19], [18, 23], [19, 18], [19, 20]]}}, "classes": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 13, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 13, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 4, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [1, 2, 4, 5, 7, 9, 16, 17, 18, 19, 20, 21, 23], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": [[18, 19], [18, 23], [19, 18], [19, 20]]}}}, "extract_score_before_pylint.py": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 13, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 13, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 4, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [1, 2, 4, 5, 7, 9, 16, 17, 18, 19, 20, 21, 23], "excluded_lines": [], "executed_branches": [], "missing_branches": [[18, 19], [18, 23], [19, 18], [19, 20]], "functions": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 13, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 13, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 4, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [1, 2, 4, 5, 7, 9, 16, 17, 18, 19, 20, 21, 23], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": [[18, 19], [18, 23], [19, 18], [19, 20]]}}, "classes": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 13, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 13, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 4, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [1, 2, 4, 5, 7, 9, 16, 17, 18, 19, 20, 21, 23], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": [[18, 19], [18, 23], [19, 18], [19, 20]]}}}, "src\\supervision\\__init__.py": {"executed_lines": [1, 3, 5, 9, 34, 40, 41, 46, 47, 48, 49, 54, 55, 56, 57, 58, 59, 67, 82, 97, 104, 108, 109, 110, 111, 122, 123, 124, 133, 134, 135, 136, 137, 138, 149, 150, 158], "summary": {"covered_lines": 37, "num_statements": 39, "percent_covered": 94.87179487179488, "percent_covered_display": "95", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 94.87179487179488, "percent_statements_covered_display": "95", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [6, 7], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"": {"executed_lines": [1, 3, 5, 9, 34, 40, 41, 46, 47, 48, 49, 54, 55, 56, 57, 58, 59, 67, 82, 97, 104, 108, 109, 110, 111, 122, 123, 124, 133, 134, 135, 136, 137, 138, 149, 150, 158], "summary": {"covered_lines": 37, "num_statements": 39, "percent_covered": 94.87179487179488, "percent_covered_display": "95", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 94.87179487179488, "percent_statements_covered_display": "95", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [6, 7], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 3, 5, 9, 34, 40, 41, 46, 47, 48, 49, 54, 55, 56, 57, 58, 59, 67, 82, 97, 104, 108, 109, 110, 111, 122, 123, 124, 133, 134, 135, 136, 137, 138, 149, 150, 158], "summary": {"covered_lines": 37, "num_statements": 39, "percent_covered": 94.87179487179488, "percent_covered_display": "95", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 94.87179487179488, "percent_statements_covered_display": "95", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [6, 7], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "src\\supervision\\annotators\\__init__.py": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "src\\supervision\\annotators\\base.py": {"executed_lines": [1, 2, 4, 7, 8, 9], "summary": {"covered_lines": 6, "num_statements": 7, "percent_covered": 85.71428571428571, "percent_covered_display": "86", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 85.71428571428571, "percent_statements_covered_display": "86", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [12], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"BaseAnnotator.annotate": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [12], "excluded_lines": [], "start_line": 9, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 2, 4, 7, 8, 9], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"BaseAnnotator": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [12], "excluded_lines": [], "start_line": 7, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 2, 4, 7, 8, 9], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "src\\supervision\\annotators\\core.py": {"executed_lines": [1, 3, 4, 5, 6, 8, 9, 10, 11, 12, 13, 15, 16, 30, 31, 32, 33, 34, 39, 40, 41, 42, 43, 47, 53, 55, 68, 75, 76, 77, 78, 81, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 97, 102, 136, 148, 149, 150, 152, 153, 156, 157, 160, 161, 164, 165, 166, 168, 169, 172, 173, 176, 177, 180, 181, 184, 185, 188, 189, 192, 193, 196, 197, 200, 201, 204, 205, 208, 209, 212, 213, 216, 217, 220, 263, 268, 282, 283, 284, 286, 287, 328, 330, 331, 332, 340, 347, 350, 355, 369, 370, 371, 373, 374, 415, 417, 418, 438, 466, 467, 468, 469, 472, 473, 474, 480, 481, 482, 483, 484, 485, 486, 487, 489, 490, 491, 492, 493, 496, 505, 519, 520, 521, 523, 524, 566, 568, 569, 571, 572, 578, 581, 584, 593, 607, 608, 609, 611, 612, 653, 655, 656, 658, 659, 660, 668, 669, 676, 679, 684, 698, 699, 700, 702, 703, 744, 746, 747, 748, 749, 757, 765, 768, 771, 780, 797, 798, 799, 800, 802, 803, 845, 847, 848, 849, 850, 857, 859, 860, 861, 862, 863, 865, 866, 867, 868, 869, 870, 873, 878, 896, 897, 898, 899, 900, 902, 903, 944, 946, 947, 948, 956, 957, 958, 969, 972, 977, 993, 994, 995, 996, 998, 999, 1040, 1042, 1043, 1044, 1052, 1054, 1055, 1056, 1060, 1061, 1064, 1067, 1072, 1087, 1088, 1089, 1091, 1092, 1134, 1136, 1137, 1138, 1139, 1140, 1148, 1156, 1159, 1165, 1187, 1188, 1189, 1190, 1191, 1192, 1194, 1195, 1236, 1238, 1239, 1240, 1248, 1250, 1251, 1267, 1270, 1275, 1310, 1311, 1312, 1324, 1325, 1376, 1378, 1380, 1381, 1385, 1396, 1404, 1406, 1411, 1412, 1416, 1417, 1422, 1423, 1424, 1426, 1427, 1433, 1434, 1437, 1438, 1443, 1444, 1446, 1452, 1458, 1460, 1468, 1474, 1480, 1481, 1487, 1494, 1496, 1504, 1505, 1507, 1508, 1519, 1526, 1527, 1529, 1540, 1542, 1543, 1549, 1550, 1551, 1553, 1555, 1559, 1566, 1567, 1574, 1575, 1582, 1585, 1591, 1626, 1627, 1628, 1629, 1641, 1642, 1692, 1693, 1695, 1696, 1697, 1701, 1712, 1720, 1722, 1725, 1727, 1731, 1732, 1737, 1740, 1741, 1743, 1744, 1745, 1746, 1748, 1749, 1752, 1755, 1756, 1758, 1765, 1767, 1769, 1772, 1774, 1782, 1787, 1793, 1794, 1800, 1807, 1808, 1809, 1812, 1820, 1821, 1822, 1824, 1825, 1833, 1834, 1835, 1837, 1838, 1841, 1844, 1845, 1849, 1850, 1861, 1866, 1884, 1885, 1956, 1957, 1970, 1975, 1982, 1983, 1984, 1986, 1987, 2025, 2027, 2028, 2032, 2033, 2034, 2035, 2036, 2041, 2042, 2044, 2047, 2058, 2083, 2084, 2085, 2086, 2087, 2089, 2090, 2138, 2140, 2145, 2149, 2150, 2151, 2152, 2154, 2155, 2163, 2164, 2166, 2167, 2170, 2171, 2172, 2173, 2174, 2175, 2179, 2181, 2182, 2189, 2192, 2199, 2219, 2220, 2221, 2222, 2223, 2224, 2225, 2227, 2228, 2271, 2273, 2274, 2276, 2277, 2278, 2279, 2286, 2287, 2288, 2289, 2290, 2291, 2292, 2293, 2294, 2295, 2296, 2297, 2298, 2301, 2304, 2309, 2318, 2319, 2320, 2322, 2323, 2359, 2361, 2362, 2366, 2367, 2368, 2369, 2371, 2376, 2377, 2378, 2380, 2381, 2382, 2384, 2387, 2393, 2395, 2398, 2404, 2428, 2429, 2430, 2431, 2432, 2433, 2434, 2436, 2437, 2478, 2480, 2481, 2482, 2490, 2491, 2500, 2501, 2517, 2520, 2526, 2545, 2546, 2547, 2548, 2550, 2552, 2553, 2595, 2597, 2598, 2599, 2608, 2614, 2621, 2628, 2629, 2631, 2634, 2645, 2653, 2656, 2661, 2683, 2684, 2685, 2686, 2687, 2688, 2690, 2696, 2697, 2747, 2749, 2751, 2752, 2753, 2754, 2759, 2761, 2764, 2765, 2767, 2775, 2785, 2792, 2794, 2795, 2798, 2799, 2801, 2803, 2804, 2823, 2824, 2828, 2829, 2837, 2842, 2847, 2850, 2851, 2856, 2863, 2868, 2889, 2890, 2891, 2892, 2893, 2895, 2896, 2940, 2942, 2945, 2948, 2952, 2953, 2954, 2957, 2958, 2966, 2974, 2976, 2977, 2980, 2981, 2983, 2985, 2986, 3018, 3033, 3046, 3047, 3048, 3050, 3051, 3085, 3087, 3089, 3093, 3094, 3095, 3097, 3098, 3099, 3101, 3102, 3105, 3106, 3107, 3108, 3109, 3110, 3111, 3112, 3113, 3114, 3117, 3128, 3154, 3165, 3166, 3202, 3204, 3205, 3207, 3208, 3210, 3214, 3219, 3220, 3222, 3223, 3224, 3226, 3227, 3228, 3229, 3231, 3234, 3237, 3241, 3243, 3245, 3246, 3247, 3248, 3249, 3250, 3256, 3257, 3258, 3259, 3260, 3261, 3267, 3268, 3271, 3272, 3275, 3276, 3278, 3279, 3280, 3281, 3283, 3284, 3298, 3299, 3311, 3319, 3320, 3322, 3323, 3324, 3325, 3327, 3328, 3329, 3330, 3331, 3333, 3339, 3340, 3341, 3342], "summary": {"covered_lines": 715, "num_statements": 881, "percent_covered": 76.91629955947137, "percent_covered_display": "77", "missing_lines": 166, "excluded_lines": 10, "percent_statements_covered": 81.1577752553916, "percent_statements_covered_display": "81", "num_branches": 254, "num_partial_branches": 46, "covered_branches": 158, "missing_branches": 96, "percent_branches_covered": 62.20472440944882, "percent_branches_covered_display": "62"}, "missing_lines": [154, 158, 162, 170, 174, 178, 182, 186, 190, 194, 198, 202, 206, 210, 214, 218, 238, 241, 247, 249, 251, 253, 256, 260, 329, 416, 419, 421, 422, 423, 432, 434, 567, 654, 745, 846, 945, 1041, 1135, 1237, 1252, 1260, 1377, 1386, 1387, 1388, 1390, 1510, 1516, 1517, 1702, 1703, 1704, 1706, 1753, 1846, 1847, 1852, 1853, 1854, 1855, 1858, 1880, 1881, 1882, 1928, 1929, 1930, 1931, 1937, 1941, 1942, 1945, 1946, 1947, 1948, 1950, 1951, 1953, 1954, 1958, 1959, 1960, 1963, 1967, 2026, 2139, 2141, 2153, 2176, 2177, 2272, 2360, 2479, 2502, 2510, 2549, 2596, 2748, 2762, 2802, 2805, 2806, 2807, 2808, 2809, 2810, 2814, 2815, 2816, 2817, 2818, 2819, 2820, 2821, 2830, 2838, 2843, 2848, 2860, 2941, 2984, 2990, 2991, 2992, 2993, 2997, 2998, 3002, 3003, 3007, 3008, 3009, 3010, 3014, 3015, 3086, 3203, 3211, 3212, 3215, 3216, 3273, 3287, 3288, 3289, 3291, 3293, 3294, 3295, 3296, 3302, 3303, 3304, 3305, 3307, 3308, 3309, 3344, 3351, 3352, 3353, 3355, 3362, 3374, 3382], "excluded_lines": [58, 59, 60, 61, 62, 63, 64, 65, 66, 67], "executed_branches": [[75, 76], [75, 78], [328, 330], [330, 331], [330, 347], [415, 417], [417, 418], [467, 468], [467, 469], [473, 474], [473, 493], [480, 481], [480, 489], [486, 473], [486, 487], [491, 473], [491, 492], [566, 568], [568, 569], [568, 571], [653, 655], [655, 656], [655, 658], [658, 659], [658, 676], [668, 658], [668, 669], [744, 746], [747, 748], [747, 765], [845, 847], [847, 848], [847, 849], [863, 865], [863, 866], [944, 946], [946, 947], [946, 969], [1040, 1042], [1042, 1043], [1042, 1064], [1054, 1042], [1054, 1055], [1134, 1136], [1136, 1137], [1136, 1156], [1236, 1238], [1239, 1240], [1239, 1267], [1251, 1239], [1376, 1378], [1385, 1396], [1416, 1417], [1416, 1458], [1426, 1427], [1426, 1437], [1480, -1460], [1480, 1481], [1507, 1480], [1507, 1508], [1508, 1519], [1566, 1567], [1566, 1574], [1574, 1575], [1574, 1582], [1701, 1712], [1731, 1732], [1731, 1769], [1743, 1744], [1743, 1752], [1752, 1755], [1793, -1774], [1793, 1794], [1824, 1793], [1824, 1825], [1849, 1850], [1982, 1983], [1982, 1984], [2025, 2027], [2032, 2033], [2032, 2044], [2033, 2034], [2033, 2035], [2138, 2140], [2140, 2145], [2150, 2151], [2150, 2189], [2152, 2154], [2166, 2167], [2166, 2181], [2170, 2171], [2170, 2179], [2181, 2150], [2181, 2182], [2271, 2273], [2273, 2274], [2273, 2276], [2277, 2278], [2277, 2286], [2289, 2290], [2289, 2291], [2292, 2293], [2318, 2319], [2318, 2320], [2359, 2361], [2366, 2367], [2366, 2395], [2367, 2368], [2367, 2369], [2376, 2377], [2376, 2384], [2377, 2378], [2377, 2380], [2478, 2480], [2481, 2482], [2481, 2517], [2501, 2481], [2548, 2550], [2595, 2597], [2597, 2598], [2597, 2653], [2631, 2597], [2631, 2634], [2747, 2749], [2752, 2753], [2752, 2792], [2761, 2764], [2801, 2803], [2803, 2804], [2828, 2829], [2828, 2837], [2829, -2823], [2837, 2842], [2842, 2847], [2847, -2823], [2940, 2942], [2952, 2953], [2952, 2974], [2983, 2985], [2985, 2986], [3085, 3087], [3093, 3094], [3093, 3097], [3094, 3095], [3094, 3101], [3097, 3098], [3097, 3101], [3202, 3204], [3204, 3205], [3204, 3207], [3210, 3214], [3214, 3219], [3272, 3275], [3278, 3279], [3278, 3281], [3340, -3311], [3340, 3341], [3341, 3342]], "missing_branches": [[247, 249], [247, 260], [328, 329], [415, 416], [417, 419], [421, 422], [421, 434], [566, 567], [653, 654], [744, 745], [845, 846], [944, 945], [1040, 1041], [1134, 1135], [1236, 1237], [1251, 1252], [1376, 1377], [1385, 1386], [1508, 1510], [1701, 1702], [1752, 1753], [1849, 1852], [1928, 1929], [1928, 1930], [1930, 1931], [1930, 1937], [1941, 1942], [1941, 1954], [1945, 1946], [1945, 1947], [1959, 1960], [1959, 1963], [2025, 2026], [2138, 2139], [2140, 2141], [2152, 2153], [2271, 2272], [2292, 2294], [2359, 2360], [2478, 2479], [2501, 2502], [2548, 2549], [2595, 2596], [2747, 2748], [2761, 2762], [2801, 2802], [2803, 2805], [2805, 2806], [2805, 2807], [2807, 2808], [2807, 2809], [2809, 2810], [2809, 2814], [2814, 2815], [2814, 2816], [2816, 2817], [2816, 2818], [2818, 2819], [2818, 2820], [2820, -2794], [2820, 2821], [2829, 2830], [2837, 2838], [2842, 2843], [2847, 2848], [2940, 2941], [2983, 2984], [2985, 2990], [2990, 2991], [2990, 2992], [2992, 2993], [2992, 2997], [2997, 2998], [2997, 3002], [3002, 3003], [3002, 3007], [3007, 3008], [3007, 3009], [3009, 3010], [3009, 3014], [3014, -2976], [3014, 3015], [3085, 3086], [3202, 3203], [3210, 3211], [3214, 3215], [3272, 3273], [3288, 3289], [3288, 3291], [3293, 3294], [3293, 3296], [3303, 3304], [3303, 3305], [3307, 3308], [3307, 3309], [3341, 3344]], "functions": {"_normalize_color_input": {"executed_lines": [75, 76, 77, 78], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 68, "executed_branches": [[75, 76], [75, 78]], "missing_branches": []}, "_BaseLabelAnnotator.__init__": {"executed_lines": [136], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 102, "executed_branches": [], "missing_branches": []}, "_BaseLabelAnnotator.color": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [154], "excluded_lines": [], "start_line": 153, "executed_branches": [], "missing_branches": []}, "_BaseLabelAnnotator.color_lookup": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [162], "excluded_lines": [], "start_line": 161, "executed_branches": [], "missing_branches": []}, "_BaseLabelAnnotator.text_color": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [170], "excluded_lines": [], "start_line": 169, "executed_branches": [], "missing_branches": []}, "_BaseLabelAnnotator.text_padding": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [178], "excluded_lines": [], "start_line": 177, "executed_branches": [], "missing_branches": []}, "_BaseLabelAnnotator.text_anchor": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [186], "excluded_lines": [], "start_line": 185, "executed_branches": [], "missing_branches": []}, "_BaseLabelAnnotator.text_offset": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [194], "excluded_lines": [], "start_line": 193, "executed_branches": [], "missing_branches": []}, "_BaseLabelAnnotator.border_radius": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [202], "excluded_lines": [], "start_line": 201, "executed_branches": [], "missing_branches": []}, "_BaseLabelAnnotator.smart_position": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [210], "excluded_lines": [], "start_line": 209, "executed_branches": [], "missing_branches": []}, "_BaseLabelAnnotator.max_line_length": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [218], "excluded_lines": [], "start_line": 217, "executed_branches": [], "missing_branches": []}, "_BaseLabelAnnotator._adjust_labels_in_frame": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 8, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 8, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 2, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [238, 241, 247, 249, 251, 253, 256, 260], "excluded_lines": [], "start_line": 220, "executed_branches": [], "missing_branches": [[247, 249], [247, 260]]}, "BoxAnnotator.__init__": {"executed_lines": [282, 283, 284], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 268, "executed_branches": [], "missing_branches": []}, "BoxAnnotator.annotate": {"executed_lines": [328, 330, 331, 332, 340, 347], "summary": {"covered_lines": 6, "num_statements": 7, "percent_covered": 81.81818181818181, "percent_covered_display": "82", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 85.71428571428571, "percent_statements_covered_display": "86", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [329], "excluded_lines": [], "start_line": 287, "executed_branches": [[328, 330], [330, 331], [330, 347]], "missing_branches": [[328, 329]]}, "OrientedBoxAnnotator.__init__": {"executed_lines": [369, 370, 371], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 355, "executed_branches": [], "missing_branches": []}, "OrientedBoxAnnotator.annotate": {"executed_lines": [415, 417, 418], "summary": {"covered_lines": 3, "num_statements": 10, "percent_covered": 31.25, "percent_covered_display": "31", "missing_lines": 7, "excluded_lines": 0, "percent_statements_covered": 30.0, "percent_statements_covered_display": "30", "num_branches": 6, "num_partial_branches": 2, "covered_branches": 2, "missing_branches": 4, "percent_branches_covered": 33.333333333333336, "percent_branches_covered_display": "33"}, "missing_lines": [416, 419, 421, 422, 423, 432, 434], "excluded_lines": [], "start_line": 374, "executed_branches": [[415, 417], [417, 418]], "missing_branches": [[415, 416], [417, 419], [421, 422], [421, 434]]}, "_paint_masks_by_area": {"executed_lines": [466, 467, 468, 469, 472, 473, 474, 480, 481, 482, 483, 484, 485, 486, 487, 489, 490, 491, 492, 493], "summary": {"covered_lines": 20, "num_statements": 20, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 10, "num_partial_branches": 0, "covered_branches": 10, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 438, "executed_branches": [[467, 468], [467, 469], [473, 474], [473, 493], [480, 481], [480, 489], [486, 473], [486, 487], [491, 473], [491, 492]], "missing_branches": []}, "MaskAnnotator.__init__": {"executed_lines": [519, 520, 521], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 505, "executed_branches": [], "missing_branches": []}, "MaskAnnotator.annotate": {"executed_lines": [566, 568, 569, 571, 572, 578, 581], "summary": {"covered_lines": 7, "num_statements": 8, "percent_covered": 83.33333333333333, "percent_covered_display": "83", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 87.5, "percent_statements_covered_display": "88", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [567], "excluded_lines": [], "start_line": 524, "executed_branches": [[566, 568], [568, 569], [568, 571]], "missing_branches": [[566, 567]]}, "PolygonAnnotator.__init__": {"executed_lines": [607, 608, 609], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 593, "executed_branches": [], "missing_branches": []}, "PolygonAnnotator.annotate": {"executed_lines": [653, 655, 656, 658, 659, 660, 668, 669, 676], "summary": {"covered_lines": 9, "num_statements": 10, "percent_covered": 88.88888888888889, "percent_covered_display": "89", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 90.0, "percent_statements_covered_display": "90", "num_branches": 8, "num_partial_branches": 1, "covered_branches": 7, "missing_branches": 1, "percent_branches_covered": 87.5, "percent_branches_covered_display": "88"}, "missing_lines": [654], "excluded_lines": [], "start_line": 612, "executed_branches": [[653, 655], [655, 656], [655, 658], [658, 659], [658, 676], [668, 658], [668, 669]], "missing_branches": [[653, 654]]}, "ColorAnnotator.__init__": {"executed_lines": [698, 699, 700], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 684, "executed_branches": [], "missing_branches": []}, "ColorAnnotator.annotate": {"executed_lines": [744, 746, 747, 748, 749, 757, 765, 768], "summary": {"covered_lines": 8, "num_statements": 9, "percent_covered": 84.61538461538461, "percent_covered_display": "85", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 88.88888888888889, "percent_statements_covered_display": "89", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [745], "excluded_lines": [], "start_line": 703, "executed_branches": [[744, 746], [747, 748], [747, 765]], "missing_branches": [[744, 745]]}, "HaloAnnotator.__init__": {"executed_lines": [797, 798, 799, 800], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 780, "executed_branches": [], "missing_branches": []}, "HaloAnnotator.annotate": {"executed_lines": [845, 847, 848, 849, 850, 857, 859, 860, 861, 862, 863, 865, 866, 867, 868, 869, 870], "summary": {"covered_lines": 17, "num_statements": 18, "percent_covered": 91.66666666666667, "percent_covered_display": "92", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 94.44444444444444, "percent_statements_covered_display": "94", "num_branches": 6, "num_partial_branches": 1, "covered_branches": 5, "missing_branches": 1, "percent_branches_covered": 83.33333333333333, "percent_branches_covered_display": "83"}, "missing_lines": [846], "excluded_lines": [], "start_line": 803, "executed_branches": [[845, 847], [847, 848], [847, 849], [863, 865], [863, 866]], "missing_branches": [[845, 846]]}, "EllipseAnnotator.__init__": {"executed_lines": [896, 897, 898, 899, 900], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 878, "executed_branches": [], "missing_branches": []}, "EllipseAnnotator.annotate": {"executed_lines": [944, 946, 947, 948, 956, 957, 958, 969], "summary": {"covered_lines": 8, "num_statements": 9, "percent_covered": 84.61538461538461, "percent_covered_display": "85", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 88.88888888888889, "percent_statements_covered_display": "89", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [945], "excluded_lines": [], "start_line": 903, "executed_branches": [[944, 946], [946, 947], [946, 969]], "missing_branches": [[944, 945]]}, "BoxCornerAnnotator.__init__": {"executed_lines": [993, 994, 995, 996], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 977, "executed_branches": [], "missing_branches": []}, "BoxCornerAnnotator.annotate": {"executed_lines": [1040, 1042, 1043, 1044, 1052, 1054, 1055, 1056, 1060, 1061, 1064], "summary": {"covered_lines": 11, "num_statements": 12, "percent_covered": 88.88888888888889, "percent_covered_display": "89", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 91.66666666666667, "percent_statements_covered_display": "92", "num_branches": 6, "num_partial_branches": 1, "covered_branches": 5, "missing_branches": 1, "percent_branches_covered": 83.33333333333333, "percent_branches_covered_display": "83"}, "missing_lines": [1041], "excluded_lines": [], "start_line": 999, "executed_branches": [[1040, 1042], [1042, 1043], [1042, 1064], [1054, 1042], [1054, 1055]], "missing_branches": [[1040, 1041]]}, "CircleAnnotator.__init__": {"executed_lines": [1087, 1088, 1089], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1072, "executed_branches": [], "missing_branches": []}, "CircleAnnotator.annotate": {"executed_lines": [1134, 1136, 1137, 1138, 1139, 1140, 1148, 1156], "summary": {"covered_lines": 8, "num_statements": 9, "percent_covered": 84.61538461538461, "percent_covered_display": "85", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 88.88888888888889, "percent_statements_covered_display": "89", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [1135], "excluded_lines": [], "start_line": 1092, "executed_branches": [[1134, 1136], [1136, 1137], [1136, 1156]], "missing_branches": [[1134, 1135]]}, "DotAnnotator.__init__": {"executed_lines": [1187, 1188, 1189, 1190, 1191, 1192], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1165, "executed_branches": [], "missing_branches": []}, "DotAnnotator.annotate": {"executed_lines": [1236, 1238, 1239, 1240, 1248, 1250, 1251, 1267], "summary": {"covered_lines": 8, "num_statements": 11, "percent_covered": 70.58823529411765, "percent_covered_display": "71", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 72.72727272727273, "percent_statements_covered_display": "73", "num_branches": 6, "num_partial_branches": 2, "covered_branches": 4, "missing_branches": 2, "percent_branches_covered": 66.66666666666667, "percent_branches_covered_display": "67"}, "missing_lines": [1237, 1252, 1260], "excluded_lines": [], "start_line": 1195, "executed_branches": [[1236, 1238], [1239, 1240], [1239, 1267], [1251, 1239]], "missing_branches": [[1236, 1237], [1251, 1252]]}, "LabelAnnotator.__init__": {"executed_lines": [1310, 1311, 1312], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1275, "executed_branches": [], "missing_branches": []}, "LabelAnnotator.annotate": {"executed_lines": [1376, 1378, 1380, 1381, 1385, 1396, 1404], "summary": {"covered_lines": 7, "num_statements": 12, "percent_covered": 56.25, "percent_covered_display": "56", "missing_lines": 5, "excluded_lines": 0, "percent_statements_covered": 58.333333333333336, "percent_statements_covered_display": "58", "num_branches": 4, "num_partial_branches": 2, "covered_branches": 2, "missing_branches": 2, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [1377, 1386, 1387, 1388, 1390], "excluded_lines": [], "start_line": 1325, "executed_branches": [[1376, 1378], [1385, 1396]], "missing_branches": [[1376, 1377], [1385, 1386]]}, "LabelAnnotator._get_label_properties": {"executed_lines": [1411, 1412, 1416, 1417, 1422, 1423, 1424, 1426, 1427, 1433, 1434, 1437, 1438, 1443, 1444, 1446, 1452, 1458], "summary": {"covered_lines": 18, "num_statements": 18, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1406, "executed_branches": [[1416, 1417], [1416, 1458], [1426, 1427], [1426, 1437]], "missing_branches": []}, "LabelAnnotator._draw_labels": {"executed_lines": [1468, 1474, 1480, 1481, 1487, 1494, 1496, 1504, 1505, 1507, 1508, 1519, 1526, 1527, 1529, 1540], "summary": {"covered_lines": 16, "num_statements": 19, "percent_covered": 84.0, "percent_covered_display": "84", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 84.21052631578948, "percent_statements_covered_display": "84", "num_branches": 6, "num_partial_branches": 1, "covered_branches": 5, "missing_branches": 1, "percent_branches_covered": 83.33333333333333, "percent_branches_covered_display": "83"}, "missing_lines": [1510, 1516, 1517], "excluded_lines": [], "start_line": 1460, "executed_branches": [[1480, -1460], [1480, 1481], [1507, 1480], [1507, 1508], [1508, 1519]], "missing_branches": [[1508, 1510]]}, "LabelAnnotator.draw_rounded_rectangle": {"executed_lines": [1549, 1550, 1551, 1553, 1555, 1559, 1566, 1567, 1574, 1575, 1582], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1543, "executed_branches": [[1566, 1567], [1566, 1574], [1574, 1575], [1574, 1582]], "missing_branches": []}, "RichLabelAnnotator.__init__": {"executed_lines": [1626, 1627, 1628, 1629], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1591, "executed_branches": [], "missing_branches": []}, "RichLabelAnnotator.annotate": {"executed_lines": [1692, 1693, 1695, 1696, 1697, 1701, 1712, 1720], "summary": {"covered_lines": 8, "num_statements": 12, "percent_covered": 64.28571428571429, "percent_covered_display": "64", "missing_lines": 4, "excluded_lines": 0, "percent_statements_covered": 66.66666666666667, "percent_statements_covered_display": "67", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [1702, 1703, 1704, 1706], "excluded_lines": [], "start_line": 1642, "executed_branches": [[1701, 1712]], "missing_branches": [[1701, 1702]]}, "RichLabelAnnotator._get_label_properties": {"executed_lines": [1725, 1727, 1731, 1732, 1737, 1740, 1741, 1743, 1744, 1745, 1746, 1748, 1749, 1752, 1755, 1756, 1758, 1765, 1767, 1769, 1772], "summary": {"covered_lines": 21, "num_statements": 22, "percent_covered": 92.85714285714286, "percent_covered_display": "93", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 95.45454545454545, "percent_statements_covered_display": "95", "num_branches": 6, "num_partial_branches": 1, "covered_branches": 5, "missing_branches": 1, "percent_branches_covered": 83.33333333333333, "percent_branches_covered_display": "83"}, "missing_lines": [1753], "excluded_lines": [], "start_line": 1722, "executed_branches": [[1731, 1732], [1731, 1769], [1743, 1744], [1743, 1752], [1752, 1755]], "missing_branches": [[1752, 1753]]}, "RichLabelAnnotator._draw_labels": {"executed_lines": [1782, 1787, 1793, 1794, 1800, 1807, 1808, 1809, 1812, 1820, 1821, 1822, 1824, 1825, 1833, 1834, 1835], "summary": {"covered_lines": 17, "num_statements": 17, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1774, "executed_branches": [[1793, -1774], [1793, 1794], [1824, 1793], [1824, 1825]], "missing_branches": []}, "RichLabelAnnotator._load_font": {"executed_lines": [1841, 1849, 1850], "summary": {"covered_lines": 3, "num_statements": 8, "percent_covered": 40.0, "percent_covered_display": "40", "missing_lines": 5, "excluded_lines": 0, "percent_statements_covered": 37.5, "percent_statements_covered_display": "38", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [1852, 1853, 1854, 1855, 1858], "excluded_lines": [], "start_line": 1838, "executed_branches": [[1849, 1850]], "missing_branches": [[1849, 1852]]}, "RichLabelAnnotator._load_font.load_default_font": {"executed_lines": [1844, 1845], "summary": {"covered_lines": 2, "num_statements": 4, "percent_covered": 50.0, "percent_covered_display": "50", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 50.0, "percent_statements_covered_display": "50", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [1846, 1847], "excluded_lines": [], "start_line": 1841, "executed_branches": [], "missing_branches": []}, "IconAnnotator.__init__": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 3, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [1880, 1881, 1882], "excluded_lines": [], "start_line": 1866, "executed_branches": [], "missing_branches": []}, "IconAnnotator.annotate": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 15, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 15, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 8, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 8, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [1928, 1929, 1930, 1931, 1937, 1941, 1942, 1945, 1946, 1947, 1948, 1950, 1951, 1953, 1954], "excluded_lines": [], "start_line": 1885, "executed_branches": [], "missing_branches": [[1928, 1929], [1928, 1930], [1930, 1931], [1930, 1937], [1941, 1942], [1941, 1954], [1945, 1946], [1945, 1947]]}, "IconAnnotator._load_icon": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 5, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 5, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 2, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [1958, 1959, 1960, 1963, 1967], "excluded_lines": [], "start_line": 1957, "executed_branches": [], "missing_branches": [[1959, 1960], [1959, 1963]]}, "BlurAnnotator.__init__": {"executed_lines": [1982, 1983, 1984], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1975, "executed_branches": [[1982, 1983], [1982, 1984]], "missing_branches": []}, "BlurAnnotator.annotate": {"executed_lines": [2025, 2027, 2028, 2032, 2033, 2034, 2035, 2036, 2041, 2042, 2044], "summary": {"covered_lines": 11, "num_statements": 12, "percent_covered": 88.88888888888889, "percent_covered_display": "89", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 91.66666666666667, "percent_statements_covered_display": "92", "num_branches": 6, "num_partial_branches": 1, "covered_branches": 5, "missing_branches": 1, "percent_branches_covered": 83.33333333333333, "percent_branches_covered_display": "83"}, "missing_lines": [2026], "excluded_lines": [], "start_line": 1987, "executed_branches": [[2025, 2027], [2032, 2033], [2032, 2044], [2033, 2034], [2033, 2035]], "missing_branches": [[2025, 2026]]}, "TraceAnnotator.__init__": {"executed_lines": [2083, 2084, 2085, 2086, 2087], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 2058, "executed_branches": [], "missing_branches": []}, "TraceAnnotator.annotate": {"executed_lines": [2138, 2140, 2145, 2149, 2150, 2151, 2152, 2154, 2155, 2163, 2164, 2166, 2167, 2170, 2171, 2172, 2173, 2174, 2175, 2179, 2181, 2182, 2189], "summary": {"covered_lines": 23, "num_statements": 28, "percent_covered": 80.95238095238095, "percent_covered_display": "81", "missing_lines": 5, "excluded_lines": 0, "percent_statements_covered": 82.14285714285714, "percent_statements_covered_display": "82", "num_branches": 14, "num_partial_branches": 3, "covered_branches": 11, "missing_branches": 3, "percent_branches_covered": 78.57142857142857, "percent_branches_covered_display": "79"}, "missing_lines": [2139, 2141, 2153, 2176, 2177], "excluded_lines": [], "start_line": 2090, "executed_branches": [[2138, 2140], [2140, 2145], [2150, 2151], [2150, 2189], [2152, 2154], [2166, 2167], [2166, 2181], [2170, 2171], [2170, 2179], [2181, 2150], [2181, 2182]], "missing_branches": [[2138, 2139], [2140, 2141], [2152, 2153]]}, "HeatMapAnnotator.__init__": {"executed_lines": [2219, 2220, 2221, 2222, 2223, 2224, 2225], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 2199, "executed_branches": [], "missing_branches": []}, "HeatMapAnnotator.annotate": {"executed_lines": [2271, 2273, 2274, 2276, 2277, 2278, 2279, 2286, 2287, 2288, 2289, 2290, 2291, 2292, 2293, 2294, 2295, 2296, 2297, 2298, 2301], "summary": {"covered_lines": 21, "num_statements": 22, "percent_covered": 90.625, "percent_covered_display": "91", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 95.45454545454545, "percent_statements_covered_display": "95", "num_branches": 10, "num_partial_branches": 2, "covered_branches": 8, "missing_branches": 2, "percent_branches_covered": 80.0, "percent_branches_covered_display": "80"}, "missing_lines": [2272], "excluded_lines": [], "start_line": 2228, "executed_branches": [[2271, 2273], [2273, 2274], [2273, 2276], [2277, 2278], [2277, 2286], [2289, 2290], [2289, 2291], [2292, 2293]], "missing_branches": [[2271, 2272], [2292, 2294]]}, "PixelateAnnotator.__init__": {"executed_lines": [2318, 2319, 2320], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 2309, "executed_branches": [[2318, 2319], [2318, 2320]], "missing_branches": []}, "PixelateAnnotator.annotate": {"executed_lines": [2359, 2361, 2362, 2366, 2367, 2368, 2369, 2371, 2376, 2377, 2378, 2380, 2381, 2382, 2384, 2387, 2393, 2395], "summary": {"covered_lines": 18, "num_statements": 19, "percent_covered": 93.10344827586206, "percent_covered_display": "93", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 94.73684210526316, "percent_statements_covered_display": "95", "num_branches": 10, "num_partial_branches": 1, "covered_branches": 9, "missing_branches": 1, "percent_branches_covered": 90.0, "percent_branches_covered_display": "90"}, "missing_lines": [2360], "excluded_lines": [], "start_line": 2323, "executed_branches": [[2359, 2361], [2366, 2367], [2366, 2395], [2367, 2368], [2367, 2369], [2376, 2377], [2376, 2384], [2377, 2378], [2377, 2380]], "missing_branches": [[2359, 2360]]}, "TriangleAnnotator.__init__": {"executed_lines": [2428, 2429, 2430, 2431, 2432, 2433, 2434], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 2404, "executed_branches": [], "missing_branches": []}, "TriangleAnnotator.annotate": {"executed_lines": [2478, 2480, 2481, 2482, 2490, 2491, 2500, 2501, 2517], "summary": {"covered_lines": 9, "num_statements": 12, "percent_covered": 72.22222222222223, "percent_covered_display": "72", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 75.0, "percent_statements_covered_display": "75", "num_branches": 6, "num_partial_branches": 2, "covered_branches": 4, "missing_branches": 2, "percent_branches_covered": 66.66666666666667, "percent_branches_covered_display": "67"}, "missing_lines": [2479, 2502, 2510], "excluded_lines": [], "start_line": 2437, "executed_branches": [[2478, 2480], [2481, 2482], [2481, 2517], [2501, 2481]], "missing_branches": [[2478, 2479], [2501, 2502]]}, "RoundBoxAnnotator.__init__": {"executed_lines": [2545, 2546, 2547, 2548, 2550], "summary": {"covered_lines": 5, "num_statements": 6, "percent_covered": 75.0, "percent_covered_display": "75", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 83.33333333333333, "percent_statements_covered_display": "83", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [2549], "excluded_lines": [], "start_line": 2526, "executed_branches": [[2548, 2550]], "missing_branches": [[2548, 2549]]}, "RoundBoxAnnotator.annotate": {"executed_lines": [2595, 2597, 2598, 2599, 2608, 2614, 2621, 2628, 2629, 2631, 2634, 2645, 2653], "summary": {"covered_lines": 13, "num_statements": 14, "percent_covered": 90.0, "percent_covered_display": "90", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 92.85714285714286, "percent_statements_covered_display": "93", "num_branches": 6, "num_partial_branches": 1, "covered_branches": 5, "missing_branches": 1, "percent_branches_covered": 83.33333333333333, "percent_branches_covered_display": "83"}, "missing_lines": [2596], "excluded_lines": [], "start_line": 2553, "executed_branches": [[2595, 2597], [2597, 2598], [2597, 2653], [2631, 2597], [2631, 2634]], "missing_branches": [[2595, 2596]]}, "PercentageBarAnnotator.__init__": {"executed_lines": [2683, 2684, 2685, 2686, 2687, 2688, 2690], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 2661, "executed_branches": [], "missing_branches": []}, "PercentageBarAnnotator.annotate": {"executed_lines": [2747, 2749, 2751, 2752, 2753, 2754, 2759, 2761, 2764, 2765, 2767, 2775, 2785, 2792], "summary": {"covered_lines": 14, "num_statements": 16, "percent_covered": 81.81818181818181, "percent_covered_display": "82", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 87.5, "percent_statements_covered_display": "88", "num_branches": 6, "num_partial_branches": 2, "covered_branches": 4, "missing_branches": 2, "percent_branches_covered": 66.66666666666667, "percent_branches_covered_display": "67"}, "missing_lines": [2748, 2762], "excluded_lines": [], "start_line": 2697, "executed_branches": [[2747, 2749], [2752, 2753], [2752, 2792], [2761, 2764]], "missing_branches": [[2747, 2748], [2761, 2762]]}, "PercentageBarAnnotator.calculate_border_coordinates": {"executed_lines": [2798, 2799, 2801, 2803, 2804], "summary": {"covered_lines": 5, "num_statements": 20, "percent_covered": 18.42105263157895, "percent_covered_display": "18", "missing_lines": 15, "excluded_lines": 0, "percent_statements_covered": 25.0, "percent_statements_covered_display": "25", "num_branches": 18, "num_partial_branches": 2, "covered_branches": 2, "missing_branches": 16, "percent_branches_covered": 11.11111111111111, "percent_branches_covered_display": "11"}, "missing_lines": [2802, 2805, 2806, 2807, 2808, 2809, 2810, 2814, 2815, 2816, 2817, 2818, 2819, 2820, 2821], "excluded_lines": [], "start_line": 2795, "executed_branches": [[2801, 2803], [2803, 2804]], "missing_branches": [[2801, 2802], [2803, 2805], [2805, 2806], [2805, 2807], [2807, 2808], [2807, 2809], [2809, 2810], [2809, 2814], [2814, 2815], [2814, 2816], [2816, 2817], [2816, 2818], [2818, 2819], [2818, 2820], [2820, -2794], [2820, 2821]]}, "PercentageBarAnnotator._validate_custom_values": {"executed_lines": [2828, 2829, 2837, 2842, 2847], "summary": {"covered_lines": 5, "num_statements": 9, "percent_covered": 57.89473684210526, "percent_covered_display": "58", "missing_lines": 4, "excluded_lines": 0, "percent_statements_covered": 55.55555555555556, "percent_statements_covered_display": "56", "num_branches": 10, "num_partial_branches": 4, "covered_branches": 6, "missing_branches": 4, "percent_branches_covered": 60.0, "percent_branches_covered_display": "60"}, "missing_lines": [2830, 2838, 2843, 2848], "excluded_lines": [], "start_line": 2824, "executed_branches": [[2828, 2829], [2828, 2837], [2829, -2823], [2837, 2842], [2842, 2847], [2847, -2823]], "missing_branches": [[2829, 2830], [2837, 2838], [2842, 2843], [2847, 2848]]}, "PercentageBarAnnotator.validate_custom_values": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [2860], "excluded_lines": [], "start_line": 2856, "executed_branches": [], "missing_branches": []}, "CropAnnotator.__init__": {"executed_lines": [2889, 2890, 2891, 2892, 2893], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 2868, "executed_branches": [], "missing_branches": []}, "CropAnnotator.annotate": {"executed_lines": [2940, 2942, 2945, 2948, 2952, 2953, 2954, 2957, 2958, 2966, 2974], "summary": {"covered_lines": 11, "num_statements": 12, "percent_covered": 87.5, "percent_covered_display": "88", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 91.66666666666667, "percent_statements_covered_display": "92", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [2941], "excluded_lines": [], "start_line": 2896, "executed_branches": [[2940, 2942], [2952, 2953], [2952, 2974]], "missing_branches": [[2940, 2941]]}, "CropAnnotator.calculate_crop_coordinates": {"executed_lines": [2980, 2981, 2983, 2985, 2986], "summary": {"covered_lines": 5, "num_statements": 20, "percent_covered": 18.42105263157895, "percent_covered_display": "18", "missing_lines": 15, "excluded_lines": 0, "percent_statements_covered": 25.0, "percent_statements_covered_display": "25", "num_branches": 18, "num_partial_branches": 2, "covered_branches": 2, "missing_branches": 16, "percent_branches_covered": 11.11111111111111, "percent_branches_covered_display": "11"}, "missing_lines": [2984, 2990, 2991, 2992, 2993, 2997, 2998, 3002, 3003, 3007, 3008, 3009, 3010, 3014, 3015], "excluded_lines": [], "start_line": 2977, "executed_branches": [[2983, 2985], [2985, 2986]], "missing_branches": [[2983, 2984], [2985, 2990], [2990, 2991], [2990, 2992], [2992, 2993], [2992, 2997], [2997, 2998], [2997, 3002], [3002, 3003], [3002, 3007], [3007, 3008], [3007, 3009], [3009, 3010], [3009, 3014], [3014, -2976], [3014, 3015]]}, "BackgroundOverlayAnnotator.__init__": {"executed_lines": [3046, 3047, 3048], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 3033, "executed_branches": [], "missing_branches": []}, "BackgroundOverlayAnnotator.annotate": {"executed_lines": [3085, 3087, 3089, 3093, 3094, 3095, 3097, 3098, 3099, 3101, 3102], "summary": {"covered_lines": 11, "num_statements": 12, "percent_covered": 90.0, "percent_covered_display": "90", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 91.66666666666667, "percent_statements_covered_display": "92", "num_branches": 8, "num_partial_branches": 1, "covered_branches": 7, "missing_branches": 1, "percent_branches_covered": 87.5, "percent_branches_covered_display": "88"}, "missing_lines": [3086], "excluded_lines": [], "start_line": 3051, "executed_branches": [[3085, 3087], [3093, 3094], [3093, 3097], [3094, 3095], [3094, 3101], [3097, 3098], [3097, 3101]], "missing_branches": [[3085, 3086]]}, "ComparisonAnnotator.__init__": {"executed_lines": [3154], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 3128, "executed_branches": [], "missing_branches": []}, "ComparisonAnnotator.annotate": {"executed_lines": [3202, 3204, 3205, 3207, 3208, 3210, 3214, 3219, 3220, 3222, 3223, 3224, 3226, 3227, 3228, 3229, 3231, 3234, 3237, 3241, 3243], "summary": {"covered_lines": 21, "num_statements": 26, "percent_covered": 76.47058823529412, "percent_covered_display": "76", "missing_lines": 5, "excluded_lines": 0, "percent_statements_covered": 80.76923076923077, "percent_statements_covered_display": "81", "num_branches": 8, "num_partial_branches": 3, "covered_branches": 5, "missing_branches": 3, "percent_branches_covered": 62.5, "percent_branches_covered_display": "62"}, "missing_lines": [3203, 3211, 3212, 3215, 3216], "excluded_lines": [], "start_line": 3166, "executed_branches": [[3202, 3204], [3204, 3205], [3204, 3207], [3210, 3214], [3214, 3219]], "missing_branches": [[3202, 3203], [3210, 3211], [3214, 3215]]}, "ComparisonAnnotator._use_obb": {"executed_lines": [3247, 3248, 3249, 3250], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 3246, "executed_branches": [], "missing_branches": []}, "ComparisonAnnotator._use_mask": {"executed_lines": [3258, 3259, 3260, 3261], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 3257, "executed_branches": [], "missing_branches": []}, "ComparisonAnnotator._mask_from_xyxy": {"executed_lines": [3271, 3272, 3275, 3276, 3278, 3279, 3280, 3281], "summary": {"covered_lines": 8, "num_statements": 9, "percent_covered": 84.61538461538461, "percent_covered_display": "85", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 88.88888888888889, "percent_statements_covered_display": "89", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [3273], "excluded_lines": [], "start_line": 3268, "executed_branches": [[3272, 3275], [3278, 3279], [3278, 3281]], "missing_branches": [[3272, 3273]]}, "ComparisonAnnotator._mask_from_obb": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 8, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 8, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 4, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [3287, 3288, 3289, 3291, 3293, 3294, 3295, 3296], "excluded_lines": [], "start_line": 3284, "executed_branches": [], "missing_branches": [[3288, 3289], [3288, 3291], [3293, 3294], [3293, 3296]]}, "ComparisonAnnotator._mask_from_mask": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 7, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 7, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 4, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [3302, 3303, 3304, 3305, 3307, 3308, 3309], "excluded_lines": [], "start_line": 3299, "executed_branches": [], "missing_branches": [[3303, 3304], [3303, 3305], [3307, 3308], [3307, 3309]]}, "ComparisonAnnotator._draw_labels": {"executed_lines": [3319, 3320, 3322, 3323, 3324, 3325, 3327, 3328, 3329, 3330, 3331, 3333, 3339, 3340, 3341, 3342], "summary": {"covered_lines": 16, "num_statements": 24, "percent_covered": 67.85714285714286, "percent_covered_display": "68", "missing_lines": 8, "excluded_lines": 0, "percent_statements_covered": 66.66666666666667, "percent_statements_covered_display": "67", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [3344, 3351, 3352, 3353, 3355, 3362, 3374, 3382], "excluded_lines": [], "start_line": 3311, "executed_branches": [[3340, -3311], [3340, 3341], [3341, 3342]], "missing_branches": [[3341, 3344]]}, "": {"executed_lines": [1, 3, 4, 5, 6, 8, 9, 10, 11, 12, 13, 15, 16, 30, 31, 32, 33, 34, 39, 40, 41, 42, 43, 47, 53, 55, 68, 81, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 97, 102, 148, 149, 152, 153, 156, 157, 160, 161, 164, 165, 168, 169, 172, 173, 176, 177, 180, 181, 184, 185, 188, 189, 192, 193, 196, 197, 200, 201, 204, 205, 208, 209, 212, 213, 216, 217, 220, 263, 268, 286, 287, 350, 355, 373, 374, 438, 496, 505, 523, 524, 584, 593, 611, 612, 679, 684, 702, 703, 771, 780, 802, 803, 873, 878, 902, 903, 972, 977, 998, 999, 1067, 1072, 1091, 1092, 1159, 1165, 1194, 1195, 1270, 1275, 1324, 1325, 1406, 1460, 1542, 1543, 1585, 1591, 1641, 1642, 1722, 1774, 1837, 1838, 1861, 1866, 1884, 1885, 1956, 1957, 1970, 1975, 1986, 1987, 2047, 2058, 2089, 2090, 2192, 2199, 2227, 2228, 2304, 2309, 2322, 2323, 2398, 2404, 2436, 2437, 2520, 2526, 2552, 2553, 2656, 2661, 2696, 2697, 2794, 2795, 2823, 2824, 2850, 2851, 2856, 2863, 2868, 2895, 2896, 2976, 2977, 3018, 3033, 3050, 3051, 3105, 3106, 3107, 3108, 3109, 3110, 3111, 3112, 3113, 3114, 3117, 3128, 3165, 3166, 3245, 3246, 3256, 3257, 3267, 3268, 3283, 3284, 3298, 3299, 3311], "summary": {"covered_lines": 211, "num_statements": 211, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 8, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [58, 60, 61, 62, 63, 64, 66, 67], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"_LabelAnnotatorConfig": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 85, "executed_branches": [], "missing_branches": []}, "_BaseLabelAnnotator": {"executed_lines": [136, 150, 166], "summary": {"covered_lines": 3, "num_statements": 27, "percent_covered": 10.344827586206897, "percent_covered_display": "10", "missing_lines": 24, "excluded_lines": 0, "percent_statements_covered": 11.11111111111111, "percent_statements_covered_display": "11", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 2, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [154, 158, 162, 170, 174, 178, 182, 186, 190, 194, 198, 202, 206, 210, 214, 218, 238, 241, 247, 249, 251, 253, 256, 260], "excluded_lines": [], "start_line": 97, "executed_branches": [], "missing_branches": [[247, 249], [247, 260]]}, "BoxAnnotator": {"executed_lines": [282, 283, 284, 328, 330, 331, 332, 340, 347], "summary": {"covered_lines": 9, "num_statements": 10, "percent_covered": 85.71428571428571, "percent_covered_display": "86", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 90.0, "percent_statements_covered_display": "90", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [329], "excluded_lines": [], "start_line": 263, "executed_branches": [[328, 330], [330, 331], [330, 347]], "missing_branches": [[328, 329]]}, "OrientedBoxAnnotator": {"executed_lines": [369, 370, 371, 415, 417, 418], "summary": {"covered_lines": 6, "num_statements": 13, "percent_covered": 42.10526315789474, "percent_covered_display": "42", "missing_lines": 7, "excluded_lines": 0, "percent_statements_covered": 46.15384615384615, "percent_statements_covered_display": "46", "num_branches": 6, "num_partial_branches": 2, "covered_branches": 2, "missing_branches": 4, "percent_branches_covered": 33.333333333333336, "percent_branches_covered_display": "33"}, "missing_lines": [416, 419, 421, 422, 423, 432, 434], "excluded_lines": [], "start_line": 350, "executed_branches": [[415, 417], [417, 418]], "missing_branches": [[415, 416], [417, 419], [421, 422], [421, 434]]}, "MaskAnnotator": {"executed_lines": [519, 520, 521, 566, 568, 569, 571, 572, 578, 581], "summary": {"covered_lines": 10, "num_statements": 11, "percent_covered": 86.66666666666667, "percent_covered_display": "87", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 90.9090909090909, "percent_statements_covered_display": "91", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [567], "excluded_lines": [], "start_line": 496, "executed_branches": [[566, 568], [568, 569], [568, 571]], "missing_branches": [[566, 567]]}, "PolygonAnnotator": {"executed_lines": [607, 608, 609, 653, 655, 656, 658, 659, 660, 668, 669, 676], "summary": {"covered_lines": 12, "num_statements": 13, "percent_covered": 90.47619047619048, "percent_covered_display": "90", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 92.3076923076923, "percent_statements_covered_display": "92", "num_branches": 8, "num_partial_branches": 1, "covered_branches": 7, "missing_branches": 1, "percent_branches_covered": 87.5, "percent_branches_covered_display": "88"}, "missing_lines": [654], "excluded_lines": [], "start_line": 584, "executed_branches": [[653, 655], [655, 656], [655, 658], [658, 659], [658, 676], [668, 658], [668, 669]], "missing_branches": [[653, 654]]}, "ColorAnnotator": {"executed_lines": [698, 699, 700, 744, 746, 747, 748, 749, 757, 765, 768], "summary": {"covered_lines": 11, "num_statements": 12, "percent_covered": 87.5, "percent_covered_display": "88", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 91.66666666666667, "percent_statements_covered_display": "92", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [745], "excluded_lines": [], "start_line": 679, "executed_branches": [[744, 746], [747, 748], [747, 765]], "missing_branches": [[744, 745]]}, "HaloAnnotator": {"executed_lines": [797, 798, 799, 800, 845, 847, 848, 849, 850, 857, 859, 860, 861, 862, 863, 865, 866, 867, 868, 869, 870], "summary": {"covered_lines": 21, "num_statements": 22, "percent_covered": 92.85714285714286, "percent_covered_display": "93", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 95.45454545454545, "percent_statements_covered_display": "95", "num_branches": 6, "num_partial_branches": 1, "covered_branches": 5, "missing_branches": 1, "percent_branches_covered": 83.33333333333333, "percent_branches_covered_display": "83"}, "missing_lines": [846], "excluded_lines": [], "start_line": 771, "executed_branches": [[845, 847], [847, 848], [847, 849], [863, 865], [863, 866]], "missing_branches": [[845, 846]]}, "EllipseAnnotator": {"executed_lines": [896, 897, 898, 899, 900, 944, 946, 947, 948, 956, 957, 958, 969], "summary": {"covered_lines": 13, "num_statements": 14, "percent_covered": 88.88888888888889, "percent_covered_display": "89", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 92.85714285714286, "percent_statements_covered_display": "93", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [945], "excluded_lines": [], "start_line": 873, "executed_branches": [[944, 946], [946, 947], [946, 969]], "missing_branches": [[944, 945]]}, "BoxCornerAnnotator": {"executed_lines": [993, 994, 995, 996, 1040, 1042, 1043, 1044, 1052, 1054, 1055, 1056, 1060, 1061, 1064], "summary": {"covered_lines": 15, "num_statements": 16, "percent_covered": 90.9090909090909, "percent_covered_display": "91", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 93.75, "percent_statements_covered_display": "94", "num_branches": 6, "num_partial_branches": 1, "covered_branches": 5, "missing_branches": 1, "percent_branches_covered": 83.33333333333333, "percent_branches_covered_display": "83"}, "missing_lines": [1041], "excluded_lines": [], "start_line": 972, "executed_branches": [[1040, 1042], [1042, 1043], [1042, 1064], [1054, 1042], [1054, 1055]], "missing_branches": [[1040, 1041]]}, "CircleAnnotator": {"executed_lines": [1087, 1088, 1089, 1134, 1136, 1137, 1138, 1139, 1140, 1148, 1156], "summary": {"covered_lines": 11, "num_statements": 12, "percent_covered": 87.5, "percent_covered_display": "88", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 91.66666666666667, "percent_statements_covered_display": "92", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [1135], "excluded_lines": [], "start_line": 1067, "executed_branches": [[1134, 1136], [1136, 1137], [1136, 1156]], "missing_branches": [[1134, 1135]]}, "DotAnnotator": {"executed_lines": [1187, 1188, 1189, 1190, 1191, 1192, 1236, 1238, 1239, 1240, 1248, 1250, 1251, 1267], "summary": {"covered_lines": 14, "num_statements": 17, "percent_covered": 78.26086956521739, "percent_covered_display": "78", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 82.3529411764706, "percent_statements_covered_display": "82", "num_branches": 6, "num_partial_branches": 2, "covered_branches": 4, "missing_branches": 2, "percent_branches_covered": 66.66666666666667, "percent_branches_covered_display": "67"}, "missing_lines": [1237, 1252, 1260], "excluded_lines": [], "start_line": 1159, "executed_branches": [[1236, 1238], [1239, 1240], [1239, 1267], [1251, 1239]], "missing_branches": [[1236, 1237], [1251, 1252]]}, "LabelAnnotator": {"executed_lines": [1310, 1311, 1312, 1376, 1378, 1380, 1381, 1385, 1396, 1404, 1411, 1412, 1416, 1417, 1422, 1423, 1424, 1426, 1427, 1433, 1434, 1437, 1438, 1443, 1444, 1446, 1452, 1458, 1468, 1474, 1480, 1481, 1487, 1494, 1496, 1504, 1505, 1507, 1508, 1519, 1526, 1527, 1529, 1540, 1549, 1550, 1551, 1553, 1555, 1559, 1566, 1567, 1574, 1575, 1582], "summary": {"covered_lines": 55, "num_statements": 63, "percent_covered": 86.41975308641975, "percent_covered_display": "86", "missing_lines": 8, "excluded_lines": 0, "percent_statements_covered": 87.3015873015873, "percent_statements_covered_display": "87", "num_branches": 18, "num_partial_branches": 3, "covered_branches": 15, "missing_branches": 3, "percent_branches_covered": 83.33333333333333, "percent_branches_covered_display": "83"}, "missing_lines": [1377, 1386, 1387, 1388, 1390, 1510, 1516, 1517], "excluded_lines": [], "start_line": 1270, "executed_branches": [[1376, 1378], [1385, 1396], [1416, 1417], [1416, 1458], [1426, 1427], [1426, 1437], [1480, -1460], [1480, 1481], [1507, 1480], [1507, 1508], [1508, 1519], [1566, 1567], [1566, 1574], [1574, 1575], [1574, 1582]], "missing_branches": [[1376, 1377], [1385, 1386], [1508, 1510]]}, "RichLabelAnnotator": {"executed_lines": [1626, 1627, 1628, 1629, 1692, 1693, 1695, 1696, 1697, 1701, 1712, 1720, 1725, 1727, 1731, 1732, 1737, 1740, 1741, 1743, 1744, 1745, 1746, 1748, 1749, 1752, 1755, 1756, 1758, 1765, 1767, 1769, 1772, 1782, 1787, 1793, 1794, 1800, 1807, 1808, 1809, 1812, 1820, 1821, 1822, 1824, 1825, 1833, 1834, 1835, 1841, 1844, 1845, 1849, 1850], "summary": {"covered_lines": 55, "num_statements": 67, "percent_covered": 81.48148148148148, "percent_covered_display": "81", "missing_lines": 12, "excluded_lines": 0, "percent_statements_covered": 82.08955223880596, "percent_statements_covered_display": "82", "num_branches": 14, "num_partial_branches": 3, "covered_branches": 11, "missing_branches": 3, "percent_branches_covered": 78.57142857142857, "percent_branches_covered_display": "79"}, "missing_lines": [1702, 1703, 1704, 1706, 1753, 1846, 1847, 1852, 1853, 1854, 1855, 1858], "excluded_lines": [], "start_line": 1585, "executed_branches": [[1701, 1712], [1731, 1732], [1731, 1769], [1743, 1744], [1743, 1752], [1752, 1755], [1793, -1774], [1793, 1794], [1824, 1793], [1824, 1825], [1849, 1850]], "missing_branches": [[1701, 1702], [1752, 1753], [1849, 1852]]}, "IconAnnotator": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 23, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 23, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 10, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 10, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [1880, 1881, 1882, 1928, 1929, 1930, 1931, 1937, 1941, 1942, 1945, 1946, 1947, 1948, 1950, 1951, 1953, 1954, 1958, 1959, 1960, 1963, 1967], "excluded_lines": [], "start_line": 1861, "executed_branches": [], "missing_branches": [[1928, 1929], [1928, 1930], [1930, 1931], [1930, 1937], [1941, 1942], [1941, 1954], [1945, 1946], [1945, 1947], [1959, 1960], [1959, 1963]]}, "BlurAnnotator": {"executed_lines": [1982, 1983, 1984, 2025, 2027, 2028, 2032, 2033, 2034, 2035, 2036, 2041, 2042, 2044], "summary": {"covered_lines": 14, "num_statements": 15, "percent_covered": 91.30434782608695, "percent_covered_display": "91", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 93.33333333333333, "percent_statements_covered_display": "93", "num_branches": 8, "num_partial_branches": 1, "covered_branches": 7, "missing_branches": 1, "percent_branches_covered": 87.5, "percent_branches_covered_display": "88"}, "missing_lines": [2026], "excluded_lines": [], "start_line": 1970, "executed_branches": [[1982, 1983], [1982, 1984], [2025, 2027], [2032, 2033], [2032, 2044], [2033, 2034], [2033, 2035]], "missing_branches": [[2025, 2026]]}, "TraceAnnotator": {"executed_lines": [2083, 2084, 2085, 2086, 2087, 2138, 2140, 2145, 2149, 2150, 2151, 2152, 2154, 2155, 2163, 2164, 2166, 2167, 2170, 2171, 2172, 2173, 2174, 2175, 2179, 2181, 2182, 2189], "summary": {"covered_lines": 28, "num_statements": 33, "percent_covered": 82.97872340425532, "percent_covered_display": "83", "missing_lines": 5, "excluded_lines": 0, "percent_statements_covered": 84.84848484848484, "percent_statements_covered_display": "85", "num_branches": 14, "num_partial_branches": 3, "covered_branches": 11, "missing_branches": 3, "percent_branches_covered": 78.57142857142857, "percent_branches_covered_display": "79"}, "missing_lines": [2139, 2141, 2153, 2176, 2177], "excluded_lines": [], "start_line": 2047, "executed_branches": [[2138, 2140], [2140, 2145], [2150, 2151], [2150, 2189], [2152, 2154], [2166, 2167], [2166, 2181], [2170, 2171], [2170, 2179], [2181, 2150], [2181, 2182]], "missing_branches": [[2138, 2139], [2140, 2141], [2152, 2153]]}, "HeatMapAnnotator": {"executed_lines": [2219, 2220, 2221, 2222, 2223, 2224, 2225, 2271, 2273, 2274, 2276, 2277, 2278, 2279, 2286, 2287, 2288, 2289, 2290, 2291, 2292, 2293, 2294, 2295, 2296, 2297, 2298, 2301], "summary": {"covered_lines": 28, "num_statements": 29, "percent_covered": 92.3076923076923, "percent_covered_display": "92", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 96.55172413793103, "percent_statements_covered_display": "97", "num_branches": 10, "num_partial_branches": 2, "covered_branches": 8, "missing_branches": 2, "percent_branches_covered": 80.0, "percent_branches_covered_display": "80"}, "missing_lines": [2272], "excluded_lines": [], "start_line": 2192, "executed_branches": [[2271, 2273], [2273, 2274], [2273, 2276], [2277, 2278], [2277, 2286], [2289, 2290], [2289, 2291], [2292, 2293]], "missing_branches": [[2271, 2272], [2292, 2294]]}, "PixelateAnnotator": {"executed_lines": [2318, 2319, 2320, 2359, 2361, 2362, 2366, 2367, 2368, 2369, 2371, 2376, 2377, 2378, 2380, 2381, 2382, 2384, 2387, 2393, 2395], "summary": {"covered_lines": 21, "num_statements": 22, "percent_covered": 94.11764705882354, "percent_covered_display": "94", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 95.45454545454545, "percent_statements_covered_display": "95", "num_branches": 12, "num_partial_branches": 1, "covered_branches": 11, "missing_branches": 1, "percent_branches_covered": 91.66666666666667, "percent_branches_covered_display": "92"}, "missing_lines": [2360], "excluded_lines": [], "start_line": 2304, "executed_branches": [[2318, 2319], [2318, 2320], [2359, 2361], [2366, 2367], [2366, 2395], [2367, 2368], [2367, 2369], [2376, 2377], [2376, 2384], [2377, 2378], [2377, 2380]], "missing_branches": [[2359, 2360]]}, "TriangleAnnotator": {"executed_lines": [2428, 2429, 2430, 2431, 2432, 2433, 2434, 2478, 2480, 2481, 2482, 2490, 2491, 2500, 2501, 2517], "summary": {"covered_lines": 16, "num_statements": 19, "percent_covered": 80.0, "percent_covered_display": "80", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 84.21052631578948, "percent_statements_covered_display": "84", "num_branches": 6, "num_partial_branches": 2, "covered_branches": 4, "missing_branches": 2, "percent_branches_covered": 66.66666666666667, "percent_branches_covered_display": "67"}, "missing_lines": [2479, 2502, 2510], "excluded_lines": [], "start_line": 2398, "executed_branches": [[2478, 2480], [2481, 2482], [2481, 2517], [2501, 2481]], "missing_branches": [[2478, 2479], [2501, 2502]]}, "RoundBoxAnnotator": {"executed_lines": [2545, 2546, 2547, 2548, 2550, 2595, 2597, 2598, 2599, 2608, 2614, 2621, 2628, 2629, 2631, 2634, 2645, 2653], "summary": {"covered_lines": 18, "num_statements": 20, "percent_covered": 85.71428571428571, "percent_covered_display": "86", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 90.0, "percent_statements_covered_display": "90", "num_branches": 8, "num_partial_branches": 2, "covered_branches": 6, "missing_branches": 2, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [2549, 2596], "excluded_lines": [], "start_line": 2520, "executed_branches": [[2548, 2550], [2595, 2597], [2597, 2598], [2597, 2653], [2631, 2597], [2631, 2634]], "missing_branches": [[2548, 2549], [2595, 2596]]}, "PercentageBarAnnotator": {"executed_lines": [2683, 2684, 2685, 2686, 2687, 2688, 2690, 2747, 2749, 2751, 2752, 2753, 2754, 2759, 2761, 2764, 2765, 2767, 2775, 2785, 2792, 2798, 2799, 2801, 2803, 2804, 2828, 2829, 2837, 2842, 2847], "summary": {"covered_lines": 31, "num_statements": 53, "percent_covered": 49.42528735632184, "percent_covered_display": "49", "missing_lines": 22, "excluded_lines": 0, "percent_statements_covered": 58.490566037735846, "percent_statements_covered_display": "58", "num_branches": 34, "num_partial_branches": 8, "covered_branches": 12, "missing_branches": 22, "percent_branches_covered": 35.294117647058826, "percent_branches_covered_display": "35"}, "missing_lines": [2748, 2762, 2802, 2805, 2806, 2807, 2808, 2809, 2810, 2814, 2815, 2816, 2817, 2818, 2819, 2820, 2821, 2830, 2838, 2843, 2848, 2860], "excluded_lines": [], "start_line": 2656, "executed_branches": [[2747, 2749], [2752, 2753], [2752, 2792], [2761, 2764], [2801, 2803], [2803, 2804], [2828, 2829], [2828, 2837], [2829, -2823], [2837, 2842], [2842, 2847], [2847, -2823]], "missing_branches": [[2747, 2748], [2761, 2762], [2801, 2802], [2803, 2805], [2805, 2806], [2805, 2807], [2807, 2808], [2807, 2809], [2809, 2810], [2809, 2814], [2814, 2815], [2814, 2816], [2816, 2817], [2816, 2818], [2818, 2819], [2818, 2820], [2820, -2794], [2820, 2821], [2829, 2830], [2837, 2838], [2842, 2843], [2847, 2848]]}, "CropAnnotator": {"executed_lines": [2889, 2890, 2891, 2892, 2893, 2940, 2942, 2945, 2948, 2952, 2953, 2954, 2957, 2958, 2966, 2974, 2980, 2981, 2983, 2985, 2986], "summary": {"covered_lines": 21, "num_statements": 37, "percent_covered": 44.067796610169495, "percent_covered_display": "44", "missing_lines": 16, "excluded_lines": 0, "percent_statements_covered": 56.75675675675676, "percent_statements_covered_display": "57", "num_branches": 22, "num_partial_branches": 3, "covered_branches": 5, "missing_branches": 17, "percent_branches_covered": 22.727272727272727, "percent_branches_covered_display": "23"}, "missing_lines": [2941, 2984, 2990, 2991, 2992, 2993, 2997, 2998, 3002, 3003, 3007, 3008, 3009, 3010, 3014, 3015], "excluded_lines": [], "start_line": 2863, "executed_branches": [[2940, 2942], [2952, 2953], [2952, 2974], [2983, 2985], [2985, 2986]], "missing_branches": [[2940, 2941], [2983, 2984], [2985, 2990], [2990, 2991], [2990, 2992], [2992, 2993], [2992, 2997], [2997, 2998], [2997, 3002], [3002, 3003], [3002, 3007], [3007, 3008], [3007, 3009], [3009, 3010], [3009, 3014], [3014, -2976], [3014, 3015]]}, "BackgroundOverlayAnnotator": {"executed_lines": [3046, 3047, 3048, 3085, 3087, 3089, 3093, 3094, 3095, 3097, 3098, 3099, 3101, 3102], "summary": {"covered_lines": 14, "num_statements": 15, "percent_covered": 91.30434782608695, "percent_covered_display": "91", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 93.33333333333333, "percent_statements_covered_display": "93", "num_branches": 8, "num_partial_branches": 1, "covered_branches": 7, "missing_branches": 1, "percent_branches_covered": 87.5, "percent_branches_covered_display": "88"}, "missing_lines": [3086], "excluded_lines": [], "start_line": 3018, "executed_branches": [[3085, 3087], [3093, 3094], [3093, 3097], [3094, 3095], [3094, 3101], [3097, 3098], [3097, 3101]], "missing_branches": [[3085, 3086]]}, "_ComparisonAnnotatorConfig": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 3106, "executed_branches": [], "missing_branches": []}, "ComparisonAnnotator": {"executed_lines": [3154, 3202, 3204, 3205, 3207, 3208, 3210, 3214, 3219, 3220, 3222, 3223, 3224, 3226, 3227, 3228, 3229, 3231, 3234, 3237, 3241, 3243, 3247, 3248, 3249, 3250, 3258, 3259, 3260, 3261, 3271, 3272, 3275, 3276, 3278, 3279, 3280, 3281, 3319, 3320, 3322, 3323, 3324, 3325, 3327, 3328, 3329, 3330, 3331, 3333, 3339, 3340, 3341, 3342], "summary": {"covered_lines": 54, "num_statements": 83, "percent_covered": 60.74766355140187, "percent_covered_display": "61", "missing_lines": 29, "excluded_lines": 0, "percent_statements_covered": 65.06024096385542, "percent_statements_covered_display": "65", "num_branches": 24, "num_partial_branches": 5, "covered_branches": 11, "missing_branches": 13, "percent_branches_covered": 45.833333333333336, "percent_branches_covered_display": "46"}, "missing_lines": [3203, 3211, 3212, 3215, 3216, 3273, 3287, 3288, 3289, 3291, 3293, 3294, 3295, 3296, 3302, 3303, 3304, 3305, 3307, 3308, 3309, 3344, 3351, 3352, 3353, 3355, 3362, 3374, 3382], "excluded_lines": [], "start_line": 3117, "executed_branches": [[3202, 3204], [3204, 3205], [3204, 3207], [3210, 3214], [3214, 3219], [3272, 3275], [3278, 3279], [3278, 3281], [3340, -3311], [3340, 3341], [3341, 3342]], "missing_branches": [[3202, 3203], [3210, 3211], [3214, 3215], [3272, 3273], [3288, 3289], [3288, 3291], [3293, 3294], [3293, 3296], [3303, 3304], [3303, 3305], [3307, 3308], [3307, 3309], [3341, 3344]]}, "": {"executed_lines": [1, 3, 4, 5, 6, 8, 9, 10, 11, 12, 13, 15, 16, 30, 31, 32, 33, 34, 39, 40, 41, 42, 43, 47, 53, 55, 68, 75, 76, 77, 78, 81, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 97, 102, 148, 149, 152, 153, 156, 157, 160, 161, 164, 165, 168, 169, 172, 173, 176, 177, 180, 181, 184, 185, 188, 189, 192, 193, 196, 197, 200, 201, 204, 205, 208, 209, 212, 213, 216, 217, 220, 263, 268, 286, 287, 350, 355, 373, 374, 438, 466, 467, 468, 469, 472, 473, 474, 480, 481, 482, 483, 484, 485, 486, 487, 489, 490, 491, 492, 493, 496, 505, 523, 524, 584, 593, 611, 612, 679, 684, 702, 703, 771, 780, 802, 803, 873, 878, 902, 903, 972, 977, 998, 999, 1067, 1072, 1091, 1092, 1159, 1165, 1194, 1195, 1270, 1275, 1324, 1325, 1406, 1460, 1542, 1543, 1585, 1591, 1641, 1642, 1722, 1774, 1837, 1838, 1861, 1866, 1884, 1885, 1956, 1957, 1970, 1975, 1986, 1987, 2047, 2058, 2089, 2090, 2192, 2199, 2227, 2228, 2304, 2309, 2322, 2323, 2398, 2404, 2436, 2437, 2520, 2526, 2552, 2553, 2656, 2661, 2696, 2697, 2794, 2795, 2823, 2824, 2850, 2851, 2856, 2863, 2868, 2895, 2896, 2976, 2977, 3018, 3033, 3050, 3051, 3105, 3106, 3107, 3108, 3109, 3110, 3111, 3112, 3113, 3114, 3117, 3128, 3165, 3166, 3245, 3246, 3256, 3257, 3267, 3268, 3283, 3284, 3298, 3299, 3311], "summary": {"covered_lines": 235, "num_statements": 235, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 10, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 12, "num_partial_branches": 0, "covered_branches": 12, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [58, 59, 60, 61, 62, 63, 64, 65, 66, 67], "start_line": 1, "executed_branches": [[75, 76], [75, 78], [467, 468], [467, 469], [473, 474], [473, 493], [480, 481], [480, 489], [486, 473], [486, 487], [491, 473], [491, 492]], "missing_branches": []}}}, "src\\supervision\\annotators\\utils.py": {"executed_lines": [1, 3, 4, 5, 6, 8, 9, 10, 12, 13, 14, 15, 17, 18, 21, 31, 32, 33, 35, 36, 40, 45, 46, 51, 52, 53, 57, 58, 59, 60, 61, 62, 68, 69, 70, 71, 76, 80, 85, 86, 88, 89, 133, 134, 135, 136, 139, 145, 150, 156, 159, 172, 173, 175, 176, 178, 179, 181, 182, 184, 185, 187, 188, 192, 200, 202, 205, 218, 226, 231, 235, 252, 253, 255, 256, 263, 266, 332, 333, 339, 340, 341, 343, 344, 345, 347, 348, 351, 352, 358, 364, 366, 368, 375, 377, 378, 381, 384, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 412, 425, 426, 427, 430, 441, 444, 467], "summary": {"covered_lines": 119, "num_statements": 168, "percent_covered": 67.6470588235294, "percent_covered_display": "68", "missing_lines": 49, "excluded_lines": 0, "percent_statements_covered": 70.83333333333333, "percent_statements_covered_display": "71", "num_branches": 70, "num_partial_branches": 8, "covered_branches": 42, "missing_branches": 28, "percent_branches_covered": 60.0, "percent_branches_covered_display": "60"}, "missing_lines": [37, 77, 90, 91, 92, 93, 99, 100, 106, 107, 108, 109, 110, 111, 117, 118, 124, 125, 155, 189, 190, 219, 232, 257, 258, 259, 260, 262, 310, 311, 314, 315, 317, 318, 319, 322, 323, 325, 326, 327, 329, 359, 369, 370, 371, 372, 373, 464, 487], "excluded_lines": [], "executed_branches": [[45, 46], [45, 51], [51, 52], [51, 58], [52, 53], [52, 57], [58, 59], [58, 60], [60, 61], [60, 69], [61, 62], [61, 68], [69, 70], [70, 71], [70, 76], [88, 89], [134, 135], [134, 136], [150, 156], [172, 173], [172, 175], [175, 176], [175, 178], [178, 179], [178, 181], [181, 182], [181, 184], [187, 188], [187, 202], [188, 192], [218, -205], [252, 253], [252, 255], [256, 263], [358, 364], [368, 375], [398, 399], [398, 400], [400, 401], [400, 402], [425, 426], [425, 427]], "missing_branches": [[69, 77], [88, 90], [90, 91], [90, 92], [92, 93], [92, 99], [99, 100], [99, 106], [106, 107], [106, 108], [108, 109], [108, 110], [110, 111], [110, 117], [117, 118], [117, 124], [124, -80], [124, 125], [150, 155], [188, 189], [218, 219], [256, 257], [257, 258], [257, 259], [259, 260], [259, 262], [358, 359], [368, 369]], "functions": {"ColorLookup.list": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [37], "excluded_lines": [], "start_line": 36, "executed_branches": [], "missing_branches": []}, "resolve_color_idx": {"executed_lines": [45, 46, 51, 52, 53, 57, 58, 59, 60, 61, 62, 68, 69, 70, 71, 76], "summary": {"covered_lines": 16, "num_statements": 17, "percent_covered": 93.93939393939394, "percent_covered_display": "94", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 94.11764705882354, "percent_statements_covered_display": "94", "num_branches": 16, "num_partial_branches": 1, "covered_branches": 15, "missing_branches": 1, "percent_branches_covered": 93.75, "percent_branches_covered_display": "94"}, "missing_lines": [77], "excluded_lines": [], "start_line": 40, "executed_branches": [[45, 46], [45, 51], [51, 52], [51, 58], [52, 53], [52, 57], [58, 59], [58, 60], [60, 61], [60, 69], [61, 62], [61, 68], [69, 70], [70, 71], [70, 76]], "missing_branches": [[69, 77]]}, "resolve_text_background_xyxy": {"executed_lines": [85, 86, 88, 89], "summary": {"covered_lines": 4, "num_statements": 20, "percent_covered": 13.157894736842104, "percent_covered_display": "13", "missing_lines": 16, "excluded_lines": 0, "percent_statements_covered": 20.0, "percent_statements_covered_display": "20", "num_branches": 18, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 17, "percent_branches_covered": 5.555555555555555, "percent_branches_covered_display": "6"}, "missing_lines": [90, 91, 92, 93, 99, 100, 106, 107, 108, 109, 110, 111, 117, 118, 124, 125], "excluded_lines": [], "start_line": 80, "executed_branches": [[88, 89]], "missing_branches": [[88, 90], [90, 91], [90, 92], [92, 93], [92, 99], [99, 100], [99, 106], [106, 107], [106, 108], [108, 109], [108, 110], [110, 111], [110, 117], [117, 118], [117, 124], [124, -80], [124, 125]]}, "get_color_by_index": {"executed_lines": [134, 135, 136], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 133, "executed_branches": [[134, 135], [134, 136]], "missing_branches": []}, "resolve_color": {"executed_lines": [145, 150, 156], "summary": {"covered_lines": 3, "num_statements": 4, "percent_covered": 66.66666666666667, "percent_covered_display": "67", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 75.0, "percent_statements_covered_display": "75", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [155], "excluded_lines": [], "start_line": 139, "executed_branches": [[150, 156]], "missing_branches": [[150, 155]]}, "wrap_text": {"executed_lines": [172, 173, 175, 176, 178, 179, 181, 182, 184, 185, 187, 188, 192, 200, 202], "summary": {"covered_lines": 15, "num_statements": 17, "percent_covered": 89.65517241379311, "percent_covered_display": "90", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 88.23529411764706, "percent_statements_covered_display": "88", "num_branches": 12, "num_partial_branches": 1, "covered_branches": 11, "missing_branches": 1, "percent_branches_covered": 91.66666666666667, "percent_branches_covered_display": "92"}, "missing_lines": [189, 190], "excluded_lines": [], "start_line": 159, "executed_branches": [[172, 173], [172, 175], [175, 176], [175, 178], [178, 179], [178, 181], [181, 182], [181, 184], [187, 188], [187, 202], [188, 192]], "missing_branches": [[188, 189]]}, "_validate_labels": {"executed_lines": [218], "summary": {"covered_lines": 1, "num_statements": 2, "percent_covered": 50.0, "percent_covered_display": "50", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 50.0, "percent_statements_covered_display": "50", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [219], "excluded_lines": [], "start_line": 205, "executed_branches": [[218, -205]], "missing_branches": [[218, 219]]}, "validate_labels": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [232], "excluded_lines": [], "start_line": 231, "executed_branches": [], "missing_branches": []}, "get_labels_text": {"executed_lines": [252, 253, 255, 256, 263], "summary": {"covered_lines": 5, "num_statements": 10, "percent_covered": 44.44444444444444, "percent_covered_display": "44", "missing_lines": 5, "excluded_lines": 0, "percent_statements_covered": 50.0, "percent_statements_covered_display": "50", "num_branches": 8, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 5, "percent_branches_covered": 37.5, "percent_branches_covered_display": "38"}, "missing_lines": [257, 258, 259, 260, 262], "excluded_lines": [], "start_line": 235, "executed_branches": [[252, 253], [252, 255], [256, 263]], "missing_branches": [[256, 257], [257, 258], [257, 259], [259, 260], [259, 262]]}, "snap_boxes": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 13, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 13, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [310, 311, 314, 315, 317, 318, 319, 322, 323, 325, 326, 327, 329], "excluded_lines": [], "start_line": 266, "executed_branches": [], "missing_branches": []}, "Trace.__init__": {"executed_lines": [339, 340, 341, 343, 344, 345], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 333, "executed_branches": [], "missing_branches": []}, "Trace.put": {"executed_lines": [348, 351, 352, 358, 364, 366, 368, 375], "summary": {"covered_lines": 8, "num_statements": 14, "percent_covered": 55.55555555555556, "percent_covered_display": "56", "missing_lines": 6, "excluded_lines": 0, "percent_statements_covered": 57.142857142857146, "percent_statements_covered_display": "57", "num_branches": 4, "num_partial_branches": 2, "covered_branches": 2, "missing_branches": 2, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [359, 369, 370, 371, 372, 373], "excluded_lines": [], "start_line": 347, "executed_branches": [[358, 364], [368, 375]], "missing_branches": [[358, 359], [368, 369]]}, "Trace.get": {"executed_lines": [378, 381], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 377, "executed_branches": [], "missing_branches": []}, "hex_to_rgba": {"executed_lines": [397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409], "summary": {"covered_lines": 13, "num_statements": 13, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 384, "executed_branches": [[398, 399], [398, 400], [400, 401], [400, 402]], "missing_branches": []}, "rgba_to_hex": {"executed_lines": [425, 426, 427], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 412, "executed_branches": [[425, 426], [425, 427]], "missing_branches": []}, "is_valid_hex": {"executed_lines": [441], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 430, "executed_branches": [], "missing_branches": []}, "calculate_dynamic_kernel_size": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [464], "excluded_lines": [], "start_line": 444, "executed_branches": [], "missing_branches": []}, "calculate_dynamic_pixel_size": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [487], "excluded_lines": [], "start_line": 467, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 5, 6, 8, 9, 10, 12, 13, 14, 15, 17, 18, 21, 31, 32, 33, 35, 36, 40, 80, 133, 139, 159, 205, 226, 231, 235, 266, 332, 333, 347, 377, 384, 412, 430, 444, 467], "summary": {"covered_lines": 39, "num_statements": 39, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"ColorLookup": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [37], "excluded_lines": [], "start_line": 21, "executed_branches": [], "missing_branches": []}, "Trace": {"executed_lines": [339, 340, 341, 343, 344, 345, 348, 351, 352, 358, 364, 366, 368, 375, 378, 381], "summary": {"covered_lines": 16, "num_statements": 22, "percent_covered": 69.23076923076923, "percent_covered_display": "69", "missing_lines": 6, "excluded_lines": 0, "percent_statements_covered": 72.72727272727273, "percent_statements_covered_display": "73", "num_branches": 4, "num_partial_branches": 2, "covered_branches": 2, "missing_branches": 2, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [359, 369, 370, 371, 372, 373], "excluded_lines": [], "start_line": 332, "executed_branches": [[358, 364], [368, 375]], "missing_branches": [[358, 359], [368, 369]]}, "": {"executed_lines": [1, 3, 4, 5, 6, 8, 9, 10, 12, 13, 14, 15, 17, 18, 21, 31, 32, 33, 35, 36, 40, 45, 46, 51, 52, 53, 57, 58, 59, 60, 61, 62, 68, 69, 70, 71, 76, 80, 85, 86, 88, 89, 133, 134, 135, 136, 139, 145, 150, 156, 159, 172, 173, 175, 176, 178, 179, 181, 182, 184, 185, 187, 188, 192, 200, 202, 205, 218, 226, 231, 235, 252, 253, 255, 256, 263, 266, 332, 333, 347, 377, 384, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 412, 425, 426, 427, 430, 441, 444, 467], "summary": {"covered_lines": 103, "num_statements": 145, "percent_covered": 67.77251184834124, "percent_covered_display": "68", "missing_lines": 42, "excluded_lines": 0, "percent_statements_covered": 71.03448275862068, "percent_statements_covered_display": "71", "num_branches": 66, "num_partial_branches": 6, "covered_branches": 40, "missing_branches": 26, "percent_branches_covered": 60.60606060606061, "percent_branches_covered_display": "61"}, "missing_lines": [77, 90, 91, 92, 93, 99, 100, 106, 107, 108, 109, 110, 111, 117, 118, 124, 125, 155, 189, 190, 219, 232, 257, 258, 259, 260, 262, 310, 311, 314, 315, 317, 318, 319, 322, 323, 325, 326, 327, 329, 464, 487], "excluded_lines": [], "start_line": 1, "executed_branches": [[45, 46], [45, 51], [51, 52], [51, 58], [52, 53], [52, 57], [58, 59], [58, 60], [60, 61], [60, 69], [61, 62], [61, 68], [69, 70], [70, 71], [70, 76], [88, 89], [134, 135], [134, 136], [150, 156], [172, 173], [172, 175], [175, 176], [175, 178], [178, 179], [178, 181], [181, 182], [181, 184], [187, 188], [187, 202], [188, 192], [218, -205], [252, 253], [252, 255], [256, 263], [398, 399], [398, 400], [400, 401], [400, 402], [425, 426], [425, 427]], "missing_branches": [[69, 77], [88, 90], [90, 91], [90, 92], [92, 93], [92, 99], [99, 100], [99, 106], [106, 107], [106, 108], [108, 109], [108, 110], [110, 111], [110, 117], [117, 118], [117, 124], [124, -80], [124, 125], [150, 155], [188, 189], [218, 219], [256, 257], [257, 258], [257, 259], [259, 260], [259, 262]]}}}, "src\\supervision\\assets\\__init__.py": {"executed_lines": [1, 2, 4], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"": {"executed_lines": [1, 2, 4], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 2, 4], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "src\\supervision\\assets\\downloader.py": {"executed_lines": [1, 3, 4, 5, 6, 8, 9, 11, 12, 14, 17, 31, 32, 34, 35, 36, 38, 41, 63, 65, 66, 67, 68, 71, 73, 74, 75, 77, 80, 81, 83, 84, 85, 86, 88, 90, 91, 95], "summary": {"covered_lines": 38, "num_statements": 38, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 8, "num_partial_branches": 0, "covered_branches": 8, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [[31, 32], [31, 34], [65, 66], [65, 90], [66, 67], [66, 83], [83, 84], [83, 88]], "missing_branches": [], "functions": {"is_md5_hash_matching": {"executed_lines": [31, 32, 34, 35, 36, 38], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 17, "executed_branches": [[31, 32], [31, 34]], "missing_branches": []}, "download_assets": {"executed_lines": [63, 65, 66, 67, 68, 71, 73, 74, 75, 77, 80, 81, 83, 84, 85, 86, 88, 90, 91, 95], "summary": {"covered_lines": 20, "num_statements": 20, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 6, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 41, "executed_branches": [[65, 66], [65, 90], [66, 67], [66, 83], [83, 84], [83, 88]], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 5, 6, 8, 9, 11, 12, 14, 17, 41], "summary": {"covered_lines": 12, "num_statements": 12, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 3, 4, 5, 6, 8, 9, 11, 12, 14, 17, 31, 32, 34, 35, 36, 38, 41, 63, 65, 66, 67, 68, 71, 73, 74, 75, 77, 80, 81, 83, 84, 85, 86, 88, 90, 91, 95], "summary": {"covered_lines": 38, "num_statements": 38, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 8, "num_partial_branches": 0, "covered_branches": 8, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [[31, 32], [31, 34], [65, 66], [65, 90], [66, 67], [66, 83], [83, 84], [83, 88]], "missing_branches": []}}}, "src\\supervision\\assets\\list.py": {"executed_lines": [1, 3, 4, 7, 8, 9, 11, 12, 13, 14, 15, 16, 18, 19, 20, 23, 42, 43, 47, 48, 49, 50, 51, 52, 53, 54, 57, 69, 70, 73], "summary": {"covered_lines": 30, "num_statements": 30, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"Assets.__new__": {"executed_lines": [12, 13, 14, 15, 16], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 11, "executed_branches": [], "missing_branches": []}, "Assets.list": {"executed_lines": [20], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 19, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 7, 8, 9, 11, 18, 19, 23, 42, 43, 47, 48, 49, 50, 51, 52, 53, 54, 57, 69, 70, 73], "summary": {"covered_lines": 24, "num_statements": 24, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"Assets": {"executed_lines": [12, 13, 14, 15, 16, 20], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 7, "executed_branches": [], "missing_branches": []}, "VideoAssets": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 23, "executed_branches": [], "missing_branches": []}, "ImageAssets": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 57, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 7, 8, 9, 11, 18, 19, 23, 42, 43, 47, 48, 49, 50, 51, 52, 53, 54, 57, 69, 70, 73], "summary": {"covered_lines": 24, "num_statements": 24, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "src\\supervision\\classification\\__init__.py": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "src\\supervision\\classification\\core.py": {"executed_lines": [1, 3, 4, 6, 7, 13, 17, 18, 22, 26, 27, 28, 29, 32, 33, 34, 35, 37, 41, 43, 44, 46, 52, 53, 81, 83, 84, 92, 93, 120, 121, 155, 157, 158, 166, 192, 195, 196, 197, 198, 200], "summary": {"covered_lines": 41, "num_statements": 50, "percent_covered": 77.41935483870968, "percent_covered_display": "77", "missing_lines": 9, "excluded_lines": 2, "percent_statements_covered": 82.0, "percent_statements_covered_display": "82", "num_branches": 12, "num_partial_branches": 5, "covered_branches": 7, "missing_branches": 5, "percent_branches_covered": 58.333333333333336, "percent_branches_covered_display": "58"}, "missing_lines": [19, 50, 89, 90, 117, 118, 163, 164, 193], "excluded_lines": [9, 10], "executed_branches": [[18, -13], [26, 27], [28, -22], [28, 29], [83, 84], [157, 158], [192, 195]], "missing_branches": [[18, 19], [26, -22], [83, 89], [157, 163], [192, 193]], "functions": {"_validate_class_ids": {"executed_lines": [17, 18], "summary": {"covered_lines": 2, "num_statements": 3, "percent_covered": 60.0, "percent_covered_display": "60", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 66.66666666666667, "percent_statements_covered_display": "67", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [19], "excluded_lines": [], "start_line": 13, "executed_branches": [[18, -13]], "missing_branches": [[18, 19]]}, "_validate_confidence": {"executed_lines": [26, 27, 28, 29], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 87.5, "percent_covered_display": "88", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [], "excluded_lines": [], "start_line": 22, "executed_branches": [[26, 27], [28, -22], [28, 29]], "missing_branches": [[26, -22]]}, "Classifications.__post_init__": {"executed_lines": [41, 43, 44], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 37, "executed_branches": [], "missing_branches": []}, "Classifications.__len__": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [50], "excluded_lines": [], "start_line": 46, "executed_branches": [], "missing_branches": []}, "Classifications.from_clip": {"executed_lines": [81, 83, 84], "summary": {"covered_lines": 3, "num_statements": 5, "percent_covered": 57.142857142857146, "percent_covered_display": "57", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 60.0, "percent_statements_covered_display": "60", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [89, 90], "excluded_lines": [], "start_line": 53, "executed_branches": [[83, 84]], "missing_branches": [[83, 89]]}, "Classifications.from_ultralytics": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 2, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [117, 118], "excluded_lines": [], "start_line": 93, "executed_branches": [], "missing_branches": []}, "Classifications.from_timm": {"executed_lines": [155, 157, 158], "summary": {"covered_lines": 3, "num_statements": 5, "percent_covered": 57.142857142857146, "percent_covered_display": "57", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 60.0, "percent_statements_covered_display": "60", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [163, 164], "excluded_lines": [], "start_line": 121, "executed_branches": [[157, 158]], "missing_branches": [[157, 163]]}, "Classifications.get_top_k": {"executed_lines": [192, 195, 196, 197, 198, 200], "summary": {"covered_lines": 6, "num_statements": 7, "percent_covered": 77.77777777777777, "percent_covered_display": "78", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 85.71428571428571, "percent_statements_covered_display": "86", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [193], "excluded_lines": [], "start_line": 166, "executed_branches": [[192, 195]], "missing_branches": [[192, 193]]}, "": {"executed_lines": [1, 3, 4, 6, 7, 13, 22, 32, 33, 34, 35, 37, 46, 52, 53, 92, 93, 120, 121, 166], "summary": {"covered_lines": 20, "num_statements": 20, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 2, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [9, 10], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"Classifications": {"executed_lines": [41, 43, 44, 81, 83, 84, 155, 157, 158, 192, 195, 196, 197, 198, 200], "summary": {"covered_lines": 15, "num_statements": 23, "percent_covered": 62.06896551724138, "percent_covered_display": "62", "missing_lines": 8, "excluded_lines": 0, "percent_statements_covered": 65.21739130434783, "percent_statements_covered_display": "65", "num_branches": 6, "num_partial_branches": 3, "covered_branches": 3, "missing_branches": 3, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [50, 89, 90, 117, 118, 163, 164, 193], "excluded_lines": [], "start_line": 33, "executed_branches": [[83, 84], [157, 158], [192, 195]], "missing_branches": [[83, 89], [157, 163], [192, 193]]}, "": {"executed_lines": [1, 3, 4, 6, 7, 13, 17, 18, 22, 26, 27, 28, 29, 32, 33, 34, 35, 37, 46, 52, 53, 92, 93, 120, 121, 166], "summary": {"covered_lines": 26, "num_statements": 27, "percent_covered": 90.9090909090909, "percent_covered_display": "91", "missing_lines": 1, "excluded_lines": 2, "percent_statements_covered": 96.29629629629629, "percent_statements_covered_display": "96", "num_branches": 6, "num_partial_branches": 2, "covered_branches": 4, "missing_branches": 2, "percent_branches_covered": 66.66666666666667, "percent_branches_covered_display": "67"}, "missing_lines": [19], "excluded_lines": [9, 10], "start_line": 1, "executed_branches": [[18, -13], [26, 27], [28, -22], [28, 29]], "missing_branches": [[18, 19], [26, -22]]}}}, "src\\supervision\\config.py": {"executed_lines": [1, 2, 13], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"": {"executed_lines": [1, 2, 13], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 2, 13], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "src\\supervision\\dataset\\__init__.py": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "src\\supervision\\dataset\\core.py": {"executed_lines": [1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 14, 15, 16, 20, 24, 29, 36, 37, 38, 41, 42, 43, 46, 47, 56, 74, 80, 82, 86, 88, 89, 90, 91, 92, 97, 99, 101, 103, 105, 106, 108, 110, 111, 113, 119, 120, 121, 122, 124, 131, 132, 133, 135, 136, 139, 142, 145, 152, 155, 157, 200, 209, 213, 214, 215, 216, 218, 223, 228, 230, 231, 279, 280, 282, 283, 285, 286, 287, 292, 293, 294, 296, 299, 300, 301, 302, 305, 307, 311, 312, 313, 314, 315, 318, 319, 324, 330, 387, 388, 441, 442, 493, 500, 504, 547, 561, 565, 566, 574, 575, 577, 578, 619, 624, 626, 709, 710, 713, 714, 723, 726, 727, 740, 766, 775, 778, 789, 802, 824, 897, 921, 922], "summary": {"covered_lines": 132, "num_statements": 228, "percent_covered": 52.515723270440255, "percent_covered_display": "53", "missing_lines": 96, "excluded_lines": 0, "percent_statements_covered": 57.89473684210526, "percent_statements_covered_display": "58", "num_branches": 90, "num_partial_branches": 15, "covered_branches": 35, "missing_branches": 55, "percent_branches_covered": 38.888888888888886, "percent_branches_covered_display": "39"}, "missing_lines": [44, 53, 83, 104, 107, 137, 140, 143, 146, 150, 153, 210, 211, 288, 361, 362, 366, 367, 368, 369, 370, 373, 374, 384, 385, 431, 437, 552, 554, 562, 746, 748, 749, 752, 755, 757, 758, 759, 760, 768, 769, 770, 771, 772, 773, 776, 784, 785, 786, 787, 798, 799, 800, 803, 804, 806, 807, 809, 810, 812, 813, 817, 819, 820, 822, 866, 875, 876, 877, 879, 880, 881, 882, 884, 889, 895, 905, 907, 908, 910, 911, 912, 917, 918, 919, 949, 950, 952, 953, 955, 956, 958, 959, 960, 961, 965], "excluded_lines": [], "executed_branches": [[82, 86], [88, 89], [88, 97], [90, 91], [90, 97], [91, 92], [103, 105], [106, 108], [131, -124], [131, 132], [136, 139], [139, 142], [142, 145], [145, 152], [152, 155], [209, 213], [287, 292], [293, 294], [293, 296], [300, 301], [300, 305], [312, 313], [312, 314], [314, 315], [314, 324], [318, 314], [318, 319], [547, 561], [561, 565], [565, 566], [574, 575], [709, 710], [709, 713], [713, 714], [713, 723]], "missing_branches": [[82, 83], [91, 90], [103, 104], [106, 107], [136, 137], [139, 140], [142, 143], [145, 146], [146, 150], [146, 152], [152, 153], [209, 210], [287, 288], [361, 362], [361, 366], [366, -330], [366, 367], [368, -330], [368, 369], [547, 552], [561, 562], [565, 574], [574, -504], [748, 749], [748, 752], [758, -740], [758, 759], [768, 769], [768, 770], [771, 772], [771, 773], [798, -789], [798, 799], [803, 804], [803, 806], [806, 807], [806, 809], [809, 810], [809, 812], [812, 813], [812, 819], [813, 817], [813, 819], [819, 820], [819, 822], [875, 876], [875, 879], [907, 908], [907, 910], [910, -897], [910, 911], [955, 956], [955, 965], [958, 955], [958, 959]], "functions": {"BaseDataset.__len__": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [44], "excluded_lines": [], "start_line": 43, "executed_branches": [], "missing_branches": []}, "BaseDataset.split": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [53], "excluded_lines": [], "start_line": 47, "executed_branches": [], "missing_branches": []}, "DetectionDataset.__init__": {"executed_lines": [80, 82, 86, 88, 89, 90, 91, 92, 97, 99], "summary": {"covered_lines": 10, "num_statements": 11, "percent_covered": 84.21052631578948, "percent_covered_display": "84", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 90.9090909090909, "percent_statements_covered_display": "91", "num_branches": 8, "num_partial_branches": 2, "covered_branches": 6, "missing_branches": 2, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [83], "excluded_lines": [], "start_line": 74, "executed_branches": [[82, 86], [88, 89], [88, 97], [90, 91], [90, 97], [91, 92]], "missing_branches": [[82, 83], [91, 90]]}, "DetectionDataset._get_image": {"executed_lines": [103, 105, 106, 108], "summary": {"covered_lines": 4, "num_statements": 6, "percent_covered": 60.0, "percent_covered_display": "60", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 66.66666666666667, "percent_statements_covered_display": "67", "num_branches": 4, "num_partial_branches": 2, "covered_branches": 2, "missing_branches": 2, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [104, 107], "excluded_lines": [], "start_line": 101, "executed_branches": [[103, 105], [106, 108]], "missing_branches": [[103, 104], [106, 107]]}, "DetectionDataset.__len__": {"executed_lines": [111], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 110, "executed_branches": [], "missing_branches": []}, "DetectionDataset.__getitem__": {"executed_lines": [119, 120, 121, 122], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 113, "executed_branches": [], "missing_branches": []}, "DetectionDataset.__iter__": {"executed_lines": [131, 132, 133], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 124, "executed_branches": [[131, -124], [131, 132]], "missing_branches": []}, "DetectionDataset.__eq__": {"executed_lines": [136, 139, 142, 145, 152, 155], "summary": {"covered_lines": 6, "num_statements": 12, "percent_covered": 45.833333333333336, "percent_covered_display": "46", "missing_lines": 6, "excluded_lines": 0, "percent_statements_covered": 50.0, "percent_statements_covered_display": "50", "num_branches": 12, "num_partial_branches": 5, "covered_branches": 5, "missing_branches": 7, "percent_branches_covered": 41.666666666666664, "percent_branches_covered_display": "42"}, "missing_lines": [137, 140, 143, 146, 150, 153], "excluded_lines": [], "start_line": 135, "executed_branches": [[136, 139], [139, 142], [142, 145], [145, 152], [152, 155]], "missing_branches": [[136, 137], [139, 140], [142, 143], [145, 146], [146, 150], [146, 152], [152, 153]]}, "DetectionDataset.split": {"executed_lines": [200, 209, 213, 214, 215, 216, 218, 223, 228], "summary": {"covered_lines": 9, "num_statements": 11, "percent_covered": 76.92307692307692, "percent_covered_display": "77", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 81.81818181818181, "percent_statements_covered_display": "82", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [210, 211], "excluded_lines": [], "start_line": 157, "executed_branches": [[209, 213]], "missing_branches": [[209, 210]]}, "DetectionDataset.merge": {"executed_lines": [279, 282, 285, 286, 287, 292, 293, 294, 296, 299, 300, 301, 302, 305, 307, 311, 312, 313, 314, 315, 318, 319, 324], "summary": {"covered_lines": 23, "num_statements": 24, "percent_covered": 94.44444444444444, "percent_covered_display": "94", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 95.83333333333333, "percent_statements_covered_display": "96", "num_branches": 12, "num_partial_branches": 1, "covered_branches": 11, "missing_branches": 1, "percent_branches_covered": 91.66666666666667, "percent_branches_covered_display": "92"}, "missing_lines": [288], "excluded_lines": [], "start_line": 231, "executed_branches": [[287, 292], [293, 294], [293, 296], [300, 301], [300, 305], [312, 313], [312, 314], [314, 315], [314, 324], [318, 314], [318, 319]], "missing_branches": [[287, 288]]}, "DetectionDataset.merge.is_in_memory": {"executed_lines": [280], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 279, "executed_branches": [], "missing_branches": []}, "DetectionDataset.merge.is_lazy": {"executed_lines": [283], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 282, "executed_branches": [], "missing_branches": []}, "DetectionDataset.as_pascal_voc": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 11, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 11, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 6, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [361, 362, 366, 367, 368, 369, 370, 373, 374, 384, 385], "excluded_lines": [], "start_line": 330, "executed_branches": [], "missing_branches": [[361, 362], [361, 366], [366, -330], [366, 367], [368, -330], [368, 369]]}, "DetectionDataset.from_pascal_voc": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 2, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [431, 437], "excluded_lines": [], "start_line": 388, "executed_branches": [], "missing_branches": []}, "DetectionDataset.from_yolo": {"executed_lines": [493, 500], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 442, "executed_branches": [], "missing_branches": []}, "DetectionDataset.as_yolo": {"executed_lines": [547, 561, 565, 566, 574, 575], "summary": {"covered_lines": 6, "num_statements": 9, "percent_covered": 58.8235294117647, "percent_covered_display": "59", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 66.66666666666667, "percent_statements_covered_display": "67", "num_branches": 8, "num_partial_branches": 4, "covered_branches": 4, "missing_branches": 4, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [552, 554, 562], "excluded_lines": [], "start_line": 504, "executed_branches": [[547, 561], [561, 565], [565, 566], [574, 575]], "missing_branches": [[547, 552], [561, 562], [565, 574], [574, -504]]}, "DetectionDataset.from_coco": {"executed_lines": [619, 624], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 578, "executed_branches": [], "missing_branches": []}, "DetectionDataset.as_coco": {"executed_lines": [709, 710, 713, 714, 723], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 626, "executed_branches": [[709, 710], [709, 713], [713, 714], [713, 723]], "missing_branches": []}, "ClassificationDataset.__init__": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 9, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 9, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 4, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [746, 748, 749, 752, 755, 757, 758, 759, 760], "excluded_lines": [], "start_line": 740, "executed_branches": [], "missing_branches": [[748, 749], [748, 752], [758, -740], [758, 759]]}, "ClassificationDataset._get_image": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 6, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 6, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 4, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [768, 769, 770, 771, 772, 773], "excluded_lines": [], "start_line": 766, "executed_branches": [], "missing_branches": [[768, 769], [768, 770], [771, 772], [771, 773]]}, "ClassificationDataset.__len__": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [776], "excluded_lines": [], "start_line": 775, "executed_branches": [], "missing_branches": []}, "ClassificationDataset.__getitem__": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 4, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 4, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [784, 785, 786, 787], "excluded_lines": [], "start_line": 778, "executed_branches": [], "missing_branches": []}, "ClassificationDataset.__iter__": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 3, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 2, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [798, 799, 800], "excluded_lines": [], "start_line": 789, "executed_branches": [], "missing_branches": [[798, -789], [798, 799]]}, "ClassificationDataset.__eq__": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 12, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 12, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 12, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 12, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [803, 804, 806, 807, 809, 810, 812, 813, 817, 819, 820, 822], "excluded_lines": [], "start_line": 802, "executed_branches": [], "missing_branches": [[803, 804], [803, 806], [806, 807], [806, 809], [809, 810], [809, 812], [812, 813], [812, 819], [813, 817], [813, 819], [819, 820], [819, 822]]}, "ClassificationDataset.split": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 11, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 11, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 2, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [866, 875, 876, 877, 879, 880, 881, 882, 884, 889, 895], "excluded_lines": [], "start_line": 824, "executed_branches": [], "missing_branches": [[875, 876], [875, 879]]}, "ClassificationDataset.as_folder_structure": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 9, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 9, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 4, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [905, 907, 908, 910, 911, 912, 917, 918, 919], "excluded_lines": [], "start_line": 897, "executed_branches": [], "missing_branches": [[907, 908], [907, 910], [910, -897], [910, 911]]}, "ClassificationDataset.from_folder_structure": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 11, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 11, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 4, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [949, 950, 952, 953, 955, 956, 958, 959, 960, 961, 965], "excluded_lines": [], "start_line": 922, "executed_branches": [], "missing_branches": [[955, 956], [955, 965], [958, 955], [958, 959]]}, "": {"executed_lines": [1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 14, 15, 16, 20, 24, 29, 36, 37, 38, 41, 42, 43, 46, 47, 56, 74, 101, 110, 113, 124, 135, 157, 230, 231, 330, 387, 388, 441, 442, 504, 577, 578, 626, 726, 727, 740, 766, 775, 778, 789, 802, 824, 897, 921, 922], "summary": {"covered_lines": 55, "num_statements": 55, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"BaseDataset": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 2, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [44, 53], "excluded_lines": [], "start_line": 41, "executed_branches": [], "missing_branches": []}, "DetectionDataset": {"executed_lines": [80, 82, 86, 88, 89, 90, 91, 92, 97, 99, 103, 105, 106, 108, 111, 119, 120, 121, 122, 131, 132, 133, 136, 139, 142, 145, 152, 155, 200, 209, 213, 214, 215, 216, 218, 223, 228, 279, 280, 282, 283, 285, 286, 287, 292, 293, 294, 296, 299, 300, 301, 302, 305, 307, 311, 312, 313, 314, 315, 318, 319, 324, 493, 500, 547, 561, 565, 566, 574, 575, 619, 624, 709, 710, 713, 714, 723], "summary": {"covered_lines": 77, "num_statements": 105, "percent_covered": 68.71165644171779, "percent_covered_display": "69", "missing_lines": 28, "excluded_lines": 0, "percent_statements_covered": 73.33333333333333, "percent_statements_covered_display": "73", "num_branches": 58, "num_partial_branches": 15, "covered_branches": 35, "missing_branches": 23, "percent_branches_covered": 60.3448275862069, "percent_branches_covered_display": "60"}, "missing_lines": [83, 104, 107, 137, 140, 143, 146, 150, 153, 210, 211, 288, 361, 362, 366, 367, 368, 369, 370, 373, 374, 384, 385, 431, 437, 552, 554, 562], "excluded_lines": [], "start_line": 56, "executed_branches": [[82, 86], [88, 89], [88, 97], [90, 91], [90, 97], [91, 92], [103, 105], [106, 108], [131, -124], [131, 132], [136, 139], [139, 142], [142, 145], [145, 152], [152, 155], [209, 213], [287, 292], [293, 294], [293, 296], [300, 301], [300, 305], [312, 313], [312, 314], [314, 315], [314, 324], [318, 314], [318, 319], [547, 561], [561, 565], [565, 566], [574, 575], [709, 710], [709, 713], [713, 714], [713, 723]], "missing_branches": [[82, 83], [91, 90], [103, 104], [106, 107], [136, 137], [139, 140], [142, 143], [145, 146], [146, 150], [146, 152], [152, 153], [209, 210], [287, 288], [361, 362], [361, 366], [366, -330], [366, 367], [368, -330], [368, 369], [547, 552], [561, 562], [565, 574], [574, -504]]}, "ClassificationDataset": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 66, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 66, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 32, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 32, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [746, 748, 749, 752, 755, 757, 758, 759, 760, 768, 769, 770, 771, 772, 773, 776, 784, 785, 786, 787, 798, 799, 800, 803, 804, 806, 807, 809, 810, 812, 813, 817, 819, 820, 822, 866, 875, 876, 877, 879, 880, 881, 882, 884, 889, 895, 905, 907, 908, 910, 911, 912, 917, 918, 919, 949, 950, 952, 953, 955, 956, 958, 959, 960, 961, 965], "excluded_lines": [], "start_line": 727, "executed_branches": [], "missing_branches": [[748, 749], [748, 752], [758, -740], [758, 759], [768, 769], [768, 770], [771, 772], [771, 773], [798, -789], [798, 799], [803, 804], [803, 806], [806, 807], [806, 809], [809, 810], [809, 812], [812, 813], [812, 819], [813, 817], [813, 819], [819, 820], [819, 822], [875, 876], [875, 879], [907, 908], [907, 910], [910, -897], [910, 911], [955, 956], [955, 965], [958, 955], [958, 959]]}, "": {"executed_lines": [1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 14, 15, 16, 20, 24, 29, 36, 37, 38, 41, 42, 43, 46, 47, 56, 74, 101, 110, 113, 124, 135, 157, 230, 231, 330, 387, 388, 441, 442, 504, 577, 578, 626, 726, 727, 740, 766, 775, 778, 789, 802, 824, 897, 921, 922], "summary": {"covered_lines": 55, "num_statements": 55, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "src\\supervision\\dataset\\formats\\__init__.py": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "src\\supervision\\dataset\\formats\\coco.py": {"executed_lines": [1, 2, 3, 4, 6, 7, 9, 10, 14, 15, 20, 21, 26, 27, 30, 31, 37, 40, 43, 49, 75, 85, 88, 89, 90, 91, 92, 93, 94, 97, 100, 101, 102, 104, 105, 106, 109, 110, 112, 113, 116, 118, 121, 123, 124, 125, 128, 137, 141, 143, 146, 178, 179, 181, 184, 185, 186, 188, 189, 190, 193, 194, 198, 199, 203, 206, 209, 210, 211, 213, 218, 226, 227, 229, 233, 234, 242, 250, 252, 254, 260, 262, 265, 266, 267, 268, 270, 274, 280, 283, 347, 348, 349, 350, 351, 352, 353, 354, 355, 364, 367, 369, 370, 379, 380, 381, 384, 423, 458, 459, 461, 465, 466, 470, 471, 472, 474, 475, 480, 481, 482, 483, 489, 490, 496, 497, 502, 503, 509, 512, 519, 524, 525, 527, 530, 531, 534, 595, 596, 601, 602, 610, 611, 612, 614, 615, 616, 617, 618, 627, 628, 637, 638, 640, 647, 648], "summary": {"covered_lines": 156, "num_statements": 168, "percent_covered": 92.7927927927928, "percent_covered_display": "93", "missing_lines": 12, "excluded_lines": 2, "percent_statements_covered": 92.85714285714286, "percent_statements_covered_display": "93", "num_branches": 54, "num_partial_branches": 4, "covered_branches": 50, "missing_branches": 4, "percent_branches_covered": 92.5925925925926, "percent_branches_covered_display": "93"}, "missing_lines": [119, 120, 129, 134, 272, 278, 415, 416, 417, 420, 484, 485], "excluded_lines": [23, 24], "executed_branches": [[89, 90], [89, 94], [91, 92], [91, 93], [104, 105], [104, 143], [106, 109], [106, 112], [112, 113], [112, 118], [118, 121], [124, 125], [124, 141], [128, 137], [178, 179], [178, 181], [189, 190], [189, 198], [198, 199], [198, 203], [209, 210], [209, 211], [226, 227], [226, 229], [233, 234], [233, 242], [250, 252], [250, 254], [267, 268], [267, 270], [270, 274], [274, 280], [348, 349], [348, 381], [349, 350], [349, 351], [353, 354], [353, 364], [474, 475], [474, 527], [489, 490], [489, 496], [496, 497], [496, 502], [502, 503], [502, 509], [595, 596], [595, 601], [615, 616], [615, 640]], "missing_branches": [[118, 119], [128, 129], [270, 272], [274, 278]], "functions": {"coco_categories_to_classes": {"executed_lines": [31], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 30, "executed_branches": [], "missing_branches": []}, "build_coco_class_index_mapping": {"executed_lines": [40, 43], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 37, "executed_branches": [], "missing_branches": []}, "classes_to_coco_categories": {"executed_lines": [75], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 49, "executed_branches": [], "missing_branches": []}, "group_coco_annotations_by_image_id": {"executed_lines": [88, 89, 90, 91, 92, 93, 94], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 85, "executed_branches": [[89, 90], [89, 94], [91, 92], [91, 93]], "missing_branches": []}, "coco_annotations_to_masks": {"executed_lines": [100, 101, 102, 104, 105, 106, 109, 110, 112, 113, 116, 118, 121, 123, 124, 125, 128, 137, 141, 143], "summary": {"covered_lines": 20, "num_statements": 24, "percent_covered": 83.33333333333333, "percent_covered_display": "83", "missing_lines": 4, "excluded_lines": 0, "percent_statements_covered": 83.33333333333333, "percent_statements_covered_display": "83", "num_branches": 12, "num_partial_branches": 2, "covered_branches": 10, "missing_branches": 2, "percent_branches_covered": 83.33333333333333, "percent_branches_covered_display": "83"}, "missing_lines": [119, 120, 129, 134], "excluded_lines": [], "start_line": 97, "executed_branches": [[104, 105], [104, 143], [106, 109], [106, 112], [112, 113], [112, 118], [118, 121], [124, 125], [124, 141], [128, 137]], "missing_branches": [[118, 119], [128, 129]]}, "coco_annotations_to_detections": {"executed_lines": [178, 179, 181, 184, 185, 186, 188, 189, 190, 193, 194, 198, 199, 203, 206, 209, 210, 211, 213], "summary": {"covered_lines": 19, "num_statements": 19, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 8, "num_partial_branches": 0, "covered_branches": 8, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 146, "executed_branches": [[178, 179], [178, 181], [189, 190], [189, 198], [198, 199], [198, 203], [209, 210], [209, 211]], "missing_branches": []}, "_build_coco_segmentation_from_mask": {"executed_lines": [226, 227, 229, 233, 234, 242, 250, 252, 254, 260, 262], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 6, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 218, "executed_branches": [[226, 227], [226, 229], [233, 234], [233, 242], [250, 252], [250, 254]], "missing_branches": []}, "_build_coco_segmentation_from_raw_data": {"executed_lines": [266, 267, 268, 270, 274, 280], "summary": {"covered_lines": 6, "num_statements": 8, "percent_covered": 71.42857142857143, "percent_covered_display": "71", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 75.0, "percent_statements_covered_display": "75", "num_branches": 6, "num_partial_branches": 2, "covered_branches": 4, "missing_branches": 2, "percent_branches_covered": 66.66666666666667, "percent_branches_covered_display": "67"}, "missing_lines": [272, 278], "excluded_lines": [], "start_line": 265, "executed_branches": [[267, 268], [267, 270], [270, 274], [274, 280]], "missing_branches": [[270, 272], [274, 278]]}, "detections_to_coco_annotations": {"executed_lines": [347, 348, 349, 350, 351, 352, 353, 354, 355, 364, 367, 369, 370, 379, 380, 381], "summary": {"covered_lines": 16, "num_statements": 16, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 6, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 283, "executed_branches": [[348, 349], [348, 381], [349, 350], [349, 351], [353, 354], [353, 364]], "missing_branches": []}, "get_coco_class_index_mapping": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 4, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 4, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [415, 416, 417, 420], "excluded_lines": [], "start_line": 384, "executed_branches": [], "missing_branches": []}, "load_coco_annotations": {"executed_lines": [458, 459, 461, 465, 466, 470, 471, 472, 474, 475, 480, 481, 482, 483, 489, 490, 496, 497, 502, 503, 509, 512, 519, 524, 525, 527], "summary": {"covered_lines": 26, "num_statements": 28, "percent_covered": 94.44444444444444, "percent_covered_display": "94", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 92.85714285714286, "percent_statements_covered_display": "93", "num_branches": 8, "num_partial_branches": 0, "covered_branches": 8, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [484, 485], "excluded_lines": [], "start_line": 423, "executed_branches": [[474, 475], [474, 527], [489, 490], [489, 496], [496, 497], [496, 502], [502, 503], [502, 509]], "missing_branches": []}, "_with_seg_mask": {"executed_lines": [531], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 530, "executed_branches": [], "missing_branches": []}, "save_coco_annotations": {"executed_lines": [595, 596, 601, 602, 610, 611, 612, 614, 615, 616, 617, 618, 627, 628, 637, 638, 640, 647, 648], "summary": {"covered_lines": 19, "num_statements": 19, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 534, "executed_branches": [[595, 596], [595, 601], [615, 616], [615, 640]], "missing_branches": []}, "": {"executed_lines": [1, 2, 3, 4, 6, 7, 9, 10, 14, 15, 20, 21, 26, 27, 30, 37, 49, 85, 97, 146, 218, 265, 283, 384, 423, 530, 534], "summary": {"covered_lines": 27, "num_statements": 27, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 2, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [23, 24], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 2, 3, 4, 6, 7, 9, 10, 14, 15, 20, 21, 26, 27, 30, 31, 37, 40, 43, 49, 75, 85, 88, 89, 90, 91, 92, 93, 94, 97, 100, 101, 102, 104, 105, 106, 109, 110, 112, 113, 116, 118, 121, 123, 124, 125, 128, 137, 141, 143, 146, 178, 179, 181, 184, 185, 186, 188, 189, 190, 193, 194, 198, 199, 203, 206, 209, 210, 211, 213, 218, 226, 227, 229, 233, 234, 242, 250, 252, 254, 260, 262, 265, 266, 267, 268, 270, 274, 280, 283, 347, 348, 349, 350, 351, 352, 353, 354, 355, 364, 367, 369, 370, 379, 380, 381, 384, 423, 458, 459, 461, 465, 466, 470, 471, 472, 474, 475, 480, 481, 482, 483, 489, 490, 496, 497, 502, 503, 509, 512, 519, 524, 525, 527, 530, 531, 534, 595, 596, 601, 602, 610, 611, 612, 614, 615, 616, 617, 618, 627, 628, 637, 638, 640, 647, 648], "summary": {"covered_lines": 156, "num_statements": 168, "percent_covered": 92.7927927927928, "percent_covered_display": "93", "missing_lines": 12, "excluded_lines": 2, "percent_statements_covered": 92.85714285714286, "percent_statements_covered_display": "93", "num_branches": 54, "num_partial_branches": 4, "covered_branches": 50, "missing_branches": 4, "percent_branches_covered": 92.5925925925926, "percent_branches_covered_display": "93"}, "missing_lines": [119, 120, 129, 134, 272, 278, 415, 416, 417, 420, 484, 485], "excluded_lines": [23, 24], "start_line": 1, "executed_branches": [[89, 90], [89, 94], [91, 92], [91, 93], [104, 105], [104, 143], [106, 109], [106, 112], [112, 113], [112, 118], [118, 121], [124, 125], [124, 141], [128, 137], [178, 179], [178, 181], [189, 190], [189, 198], [198, 199], [198, 203], [209, 210], [209, 211], [226, 227], [226, 229], [233, 234], [233, 242], [250, 252], [250, 254], [267, 268], [267, 270], [270, 274], [274, 280], [348, 349], [348, 381], [349, 350], [349, 351], [353, 354], [353, 364], [474, 475], [474, 527], [489, 490], [489, 496], [496, 497], [496, 502], [502, 503], [502, 509], [595, 596], [595, 601], [615, 616], [615, 640]], "missing_branches": [[118, 119], [128, 129], [270, 272], [274, 278]]}}}, "src\\supervision\\dataset\\formats\\pascal_voc.py": {"executed_lines": [1, 3, 4, 5, 7, 8, 9, 10, 11, 13, 14, 15, 16, 19, 49, 51, 52, 58, 60, 61, 62, 63, 64, 65, 66, 67, 68, 70, 72, 73, 74, 75, 76, 77, 78, 79, 81, 84, 118, 121, 124, 125, 128, 129, 132, 133, 134, 137, 138, 139, 140, 141, 142, 143, 146, 147, 150, 151, 153, 158, 159, 173, 174, 177, 178, 181, 235, 272, 273, 274, 275, 278, 279, 280, 281, 283, 284, 286, 287, 288, 289, 291, 293, 296, 297, 299, 301, 305, 307, 308, 311, 312, 314, 317, 319, 320, 322, 326, 332, 335, 336, 339, 340, 341, 342, 344, 345, 351, 352, 353, 355], "summary": {"covered_lines": 111, "num_statements": 140, "percent_covered": 75.55555555555556, "percent_covered_display": "76", "missing_lines": 29, "excluded_lines": 1, "percent_statements_covered": 79.28571428571429, "percent_statements_covered_display": "79", "num_branches": 40, "num_partial_branches": 7, "covered_branches": 25, "missing_branches": 15, "percent_branches_covered": 62.5, "percent_branches_covered_display": "62"}, "missing_lines": [152, 154, 160, 166, 167, 168, 171, 203, 210, 211, 213, 214, 215, 216, 217, 218, 220, 221, 223, 224, 225, 226, 227, 230, 232, 285, 321, 343, 354], "excluded_lines": [241], "executed_branches": [[70, 72], [70, 81], [74, 75], [74, 81], [150, 151], [150, 177], [151, 153], [153, 158], [159, 173], [279, 280], [279, 311], [284, 286], [296, 297], [296, 307], [307, 279], [307, 308], [311, 312], [311, 314], [319, 320], [319, 322], [320, 319], [341, 342], [341, 345], [342, 344], [353, 355]], "missing_branches": [[151, 152], [153, 154], [159, 160], [166, 150], [166, 167], [213, 214], [213, 232], [216, 217], [216, 220], [224, 225], [224, 226], [284, 285], [320, 321], [342, 343], [353, 354]], "functions": {"object_to_pascal_voc": {"executed_lines": [49, 51, 52, 58, 60, 61, 62, 63, 64, 65, 66, 67, 68, 70, 72, 73, 74, 75, 76, 77, 78, 79, 81], "summary": {"covered_lines": 23, "num_statements": 23, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 19, "executed_branches": [[70, 72], [70, 81], [74, 75], [74, 81]], "missing_branches": []}, "detections_to_pascal_voc": {"executed_lines": [118, 121, 124, 125, 128, 129, 132, 133, 134, 137, 138, 139, 140, 141, 142, 143, 146, 147, 150, 151, 153, 158, 159, 173, 174, 177, 178], "summary": {"covered_lines": 27, "num_statements": 34, "percent_covered": 72.72727272727273, "percent_covered_display": "73", "missing_lines": 7, "excluded_lines": 0, "percent_statements_covered": 79.41176470588235, "percent_statements_covered_display": "79", "num_branches": 10, "num_partial_branches": 3, "covered_branches": 5, "missing_branches": 5, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [152, 154, 160, 166, 167, 168, 171], "excluded_lines": [], "start_line": 84, "executed_branches": [[150, 151], [150, 177], [151, 153], [153, 158], [159, 173]], "missing_branches": [[151, 152], [153, 154], [159, 160], [166, 150], [166, 167]]}, "load_pascal_voc_annotations": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 18, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 18, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 6, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [203, 210, 211, 213, 214, 215, 216, 217, 218, 220, 221, 223, 224, 225, 226, 227, 230, 232], "excluded_lines": [], "start_line": 181, "executed_branches": [], "missing_branches": [[213, 214], [213, 232], [216, 217], [216, 220], [224, 225], [224, 226]]}, "detections_from_xml_obj": {"executed_lines": [272, 273, 274, 275, 278, 279, 280, 281, 283, 284, 286, 287, 288, 289, 291, 293, 296, 297, 299, 301, 305, 307, 308, 311, 312, 314, 317, 319, 320, 322, 326, 332], "summary": {"covered_lines": 32, "num_statements": 34, "percent_covered": 91.66666666666667, "percent_covered_display": "92", "missing_lines": 2, "excluded_lines": 1, "percent_statements_covered": 94.11764705882354, "percent_statements_covered_display": "94", "num_branches": 14, "num_partial_branches": 2, "covered_branches": 12, "missing_branches": 2, "percent_branches_covered": 85.71428571428571, "percent_branches_covered_display": "86"}, "missing_lines": [285, 321], "excluded_lines": [241], "start_line": 235, "executed_branches": [[279, 280], [279, 311], [284, 286], [296, 297], [296, 307], [307, 279], [307, 308], [311, 312], [311, 314], [319, 320], [319, 322], [320, 319]], "missing_branches": [[284, 285], [320, 321]]}, "_with_poly_mask": {"executed_lines": [336], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 335, "executed_branches": [], "missing_branches": []}, "parse_polygon_points": {"executed_lines": [340, 341, 342, 344, 345], "summary": {"covered_lines": 5, "num_statements": 6, "percent_covered": 80.0, "percent_covered_display": "80", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 83.33333333333333, "percent_statements_covered_display": "83", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [343], "excluded_lines": [], "start_line": 339, "executed_branches": [[341, 342], [341, 345], [342, 344]], "missing_branches": [[342, 343]]}, "_get_required_text": {"executed_lines": [352, 353, 355], "summary": {"covered_lines": 3, "num_statements": 4, "percent_covered": 66.66666666666667, "percent_covered_display": "67", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 75.0, "percent_statements_covered_display": "75", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [354], "excluded_lines": [], "start_line": 351, "executed_branches": [[353, 355]], "missing_branches": [[353, 354]]}, "": {"executed_lines": [1, 3, 4, 5, 7, 8, 9, 10, 11, 13, 14, 15, 16, 19, 84, 181, 235, 335, 339, 351], "summary": {"covered_lines": 20, "num_statements": 20, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 3, 4, 5, 7, 8, 9, 10, 11, 13, 14, 15, 16, 19, 49, 51, 52, 58, 60, 61, 62, 63, 64, 65, 66, 67, 68, 70, 72, 73, 74, 75, 76, 77, 78, 79, 81, 84, 118, 121, 124, 125, 128, 129, 132, 133, 134, 137, 138, 139, 140, 141, 142, 143, 146, 147, 150, 151, 153, 158, 159, 173, 174, 177, 178, 181, 235, 272, 273, 274, 275, 278, 279, 280, 281, 283, 284, 286, 287, 288, 289, 291, 293, 296, 297, 299, 301, 305, 307, 308, 311, 312, 314, 317, 319, 320, 322, 326, 332, 335, 336, 339, 340, 341, 342, 344, 345, 351, 352, 353, 355], "summary": {"covered_lines": 111, "num_statements": 140, "percent_covered": 75.55555555555556, "percent_covered_display": "76", "missing_lines": 29, "excluded_lines": 1, "percent_statements_covered": 79.28571428571429, "percent_statements_covered_display": "79", "num_branches": 40, "num_partial_branches": 7, "covered_branches": 25, "missing_branches": 15, "percent_branches_covered": 62.5, "percent_branches_covered_display": "62"}, "missing_lines": [152, 154, 160, 166, 167, 168, 171, 203, 210, 211, 213, 214, 215, 216, 217, 218, 220, 221, 223, 224, 225, 226, 227, 230, 232, 285, 321, 343, 354], "excluded_lines": [241], "start_line": 1, "executed_branches": [[70, 72], [70, 81], [74, 75], [74, 81], [150, 151], [150, 177], [151, 153], [153, 158], [159, 173], [279, 280], [279, 311], [284, 286], [296, 297], [296, 307], [307, 279], [307, 308], [311, 312], [311, 314], [319, 320], [319, 322], [320, 319], [341, 342], [341, 345], [342, 344], [353, 355]], "missing_branches": [[151, 152], [153, 154], [159, 160], [166, 150], [166, 167], [213, 214], [213, 232], [216, 217], [216, 220], [224, 225], [224, 226], [284, 285], [320, 321], [342, 343], [353, 354]]}}}, "src\\supervision\\dataset\\formats\\yolo.py": {"executed_lines": [1, 3, 4, 5, 6, 8, 9, 10, 12, 13, 14, 15, 16, 28, 29, 30, 41, 42, 47, 48, 51, 54, 66, 67, 70, 90, 91, 96, 97, 98, 100, 102, 104, 105, 106, 107, 108, 111, 112, 113, 114, 115, 120, 121, 123, 124, 125, 126, 133, 134, 135, 138, 144, 145, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 165, 166, 167, 168, 170, 171, 172, 173, 174, 176, 177, 179, 183, 184, 187, 217, 218, 224, 242, 243, 245, 246, 247, 248, 249, 250, 253, 254, 255, 256, 257, 263, 264, 270, 271, 274, 280, 281, 282, 283, 284, 285, 286, 287, 288, 290, 291, 292, 293, 296, 347, 352, 360, 369, 370, 371, 373, 374, 378, 380, 381, 382, 389, 395, 396, 398, 399, 405, 406, 407, 413, 415, 418, 419, 422, 456, 457, 458, 459, 460, 463, 471, 474, 475, 476, 477], "summary": {"covered_lines": 157, "num_statements": 165, "percent_covered": 92.5764192139738, "percent_covered_display": "93", "missing_lines": 8, "excluded_lines": 2, "percent_statements_covered": 95.15151515151516, "percent_statements_covered_display": "95", "num_branches": 64, "num_partial_branches": 9, "covered_branches": 55, "missing_branches": 9, "percent_branches_covered": 85.9375, "percent_branches_covered_display": "86"}, "missing_lines": [92, 103, 109, 127, 258, 361, 372, 383], "excluded_lines": [24, 25], "executed_branches": [[91, 96], [97, 98], [97, 125], [102, 104], [104, 105], [104, 106], [106, 107], [112, 113], [112, 120], [120, 121], [120, 123], [125, 126], [144, 145], [144, 147], [149, 150], [149, 165], [152, 153], [152, 157], [155, 149], [155, 156], [157, 158], [160, 161], [160, 162], [162, 149], [162, 163], [170, 171], [170, 176], [176, 177], [176, 179], [217, 218], [217, 224], [245, 246], [245, 271], [248, 249], [248, 253], [257, 263], [281, 282], [281, 290], [347, 352], [347, 360], [360, 369], [370, 371], [370, 419], [371, 373], [373, 374], [373, 378], [380, 381], [380, 398], [382, 389], [398, 399], [398, 415], [405, 370], [405, 406], [457, -422], [457, 458]], "missing_branches": [[91, 92], [102, 103], [106, 109], [125, 127], [157, 149], [257, 258], [360, 361], [371, 372], [382, 383]], "functions": {"_parse_box": {"executed_lines": [29, 30], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 28, "executed_branches": [], "missing_branches": []}, "_box_to_polygon": {"executed_lines": [42], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 41, "executed_branches": [], "missing_branches": []}, "_parse_polygon": {"executed_lines": [48], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 47, "executed_branches": [], "missing_branches": []}, "_polygons_to_masks": {"executed_lines": [54], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 51, "executed_branches": [], "missing_branches": []}, "_with_seg_mask": {"executed_lines": [67], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 66, "executed_branches": [], "missing_branches": []}, "_extract_class_names": {"executed_lines": [90, 91, 96, 97, 98, 100, 111, 112, 113, 114, 115, 120, 121, 123, 124, 125, 126], "summary": {"covered_lines": 17, "num_statements": 19, "percent_covered": 86.20689655172414, "percent_covered_display": "86", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 89.47368421052632, "percent_statements_covered_display": "89", "num_branches": 10, "num_partial_branches": 2, "covered_branches": 8, "missing_branches": 2, "percent_branches_covered": 80.0, "percent_branches_covered_display": "80"}, "missing_lines": [92, 127], "excluded_lines": [], "start_line": 70, "executed_branches": [[91, 96], [97, 98], [97, 125], [112, 113], [112, 120], [120, 121], [120, 123], [125, 126]], "missing_branches": [[91, 92], [125, 127]]}, "_extract_class_names._is_int_like": {"executed_lines": [102, 104, 105, 106, 107, 108], "summary": {"covered_lines": 6, "num_statements": 8, "percent_covered": 71.42857142857143, "percent_covered_display": "71", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 75.0, "percent_statements_covered_display": "75", "num_branches": 6, "num_partial_branches": 2, "covered_branches": 4, "missing_branches": 2, "percent_branches_covered": 66.66666666666667, "percent_branches_covered_display": "67"}, "missing_lines": [103, 109], "excluded_lines": [], "start_line": 100, "executed_branches": [[102, 104], [104, 105], [104, 106], [106, 107]], "missing_branches": [[102, 103], [106, 109]]}, "_image_name_to_annotation_name": {"executed_lines": [134, 135], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 133, "executed_branches": [], "missing_branches": []}, "yolo_annotations_to_detections": {"executed_lines": [144, 145, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 165, 166, 167, 168, 170, 171, 172, 173, 174, 176, 177, 179, 183, 184], "summary": {"covered_lines": 33, "num_statements": 33, "percent_covered": 98.03921568627452, "percent_covered_display": "98", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 18, "num_partial_branches": 1, "covered_branches": 17, "missing_branches": 1, "percent_branches_covered": 94.44444444444444, "percent_branches_covered_display": "94"}, "missing_lines": [], "excluded_lines": [], "start_line": 138, "executed_branches": [[144, 145], [144, 147], [149, 150], [149, 165], [152, 153], [152, 157], [155, 149], [155, 156], [157, 158], [160, 161], [160, 162], [162, 149], [162, 163], [170, 171], [170, 176], [176, 177], [176, 179]], "missing_branches": [[157, 149]]}, "load_yolo_annotations": {"executed_lines": [217, 218, 224, 242, 243, 245, 246, 247, 248, 249, 250, 253, 254, 255, 256, 257, 263, 264, 270, 271], "summary": {"covered_lines": 20, "num_statements": 21, "percent_covered": 93.10344827586206, "percent_covered_display": "93", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 95.23809523809524, "percent_statements_covered_display": "95", "num_branches": 8, "num_partial_branches": 1, "covered_branches": 7, "missing_branches": 1, "percent_branches_covered": 87.5, "percent_branches_covered_display": "88"}, "missing_lines": [258], "excluded_lines": [], "start_line": 187, "executed_branches": [[217, 218], [217, 224], [245, 246], [245, 271], [248, 249], [248, 253], [257, 263]], "missing_branches": [[257, 258]]}, "object_to_yolo": {"executed_lines": [280, 281, 282, 283, 284, 285, 286, 287, 288, 290, 291, 292, 293], "summary": {"covered_lines": 13, "num_statements": 13, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 274, "executed_branches": [[281, 282], [281, 290]], "missing_branches": []}, "detections_to_yolo_annotations": {"executed_lines": [347, 352, 360, 369, 370, 371, 373, 374, 378, 380, 381, 382, 389, 395, 396, 398, 399, 405, 406, 407, 413, 415, 418, 419], "summary": {"covered_lines": 24, "num_statements": 27, "percent_covered": 86.66666666666667, "percent_covered_display": "87", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 88.88888888888889, "percent_statements_covered_display": "89", "num_branches": 18, "num_partial_branches": 3, "covered_branches": 15, "missing_branches": 3, "percent_branches_covered": 83.33333333333333, "percent_branches_covered_display": "83"}, "missing_lines": [361, 372, 383], "excluded_lines": [], "start_line": 296, "executed_branches": [[347, 352], [347, 360], [360, 369], [370, 371], [370, 419], [371, 373], [373, 374], [373, 378], [380, 381], [380, 398], [382, 389], [398, 399], [398, 415], [405, 370], [405, 406]], "missing_branches": [[360, 361], [371, 372], [382, 383]]}, "save_yolo_annotations": {"executed_lines": [456, 457, 458, 459, 460, 463, 471], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 422, "executed_branches": [[457, -422], [457, 458]], "missing_branches": []}, "save_data_yaml": {"executed_lines": [475, 476, 477], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 474, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 5, 6, 8, 9, 10, 12, 13, 14, 15, 16, 28, 41, 47, 51, 66, 70, 133, 138, 187, 274, 296, 422, 474], "summary": {"covered_lines": 26, "num_statements": 26, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 2, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [24, 25], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 3, 4, 5, 6, 8, 9, 10, 12, 13, 14, 15, 16, 28, 29, 30, 41, 42, 47, 48, 51, 54, 66, 67, 70, 90, 91, 96, 97, 98, 100, 102, 104, 105, 106, 107, 108, 111, 112, 113, 114, 115, 120, 121, 123, 124, 125, 126, 133, 134, 135, 138, 144, 145, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 165, 166, 167, 168, 170, 171, 172, 173, 174, 176, 177, 179, 183, 184, 187, 217, 218, 224, 242, 243, 245, 246, 247, 248, 249, 250, 253, 254, 255, 256, 257, 263, 264, 270, 271, 274, 280, 281, 282, 283, 284, 285, 286, 287, 288, 290, 291, 292, 293, 296, 347, 352, 360, 369, 370, 371, 373, 374, 378, 380, 381, 382, 389, 395, 396, 398, 399, 405, 406, 407, 413, 415, 418, 419, 422, 456, 457, 458, 459, 460, 463, 471, 474, 475, 476, 477], "summary": {"covered_lines": 157, "num_statements": 165, "percent_covered": 92.5764192139738, "percent_covered_display": "93", "missing_lines": 8, "excluded_lines": 2, "percent_statements_covered": 95.15151515151516, "percent_statements_covered_display": "95", "num_branches": 64, "num_partial_branches": 9, "covered_branches": 55, "missing_branches": 9, "percent_branches_covered": 85.9375, "percent_branches_covered_display": "86"}, "missing_lines": [92, 103, 109, 127, 258, 361, 372, 383], "excluded_lines": [24, 25], "start_line": 1, "executed_branches": [[91, 96], [97, 98], [97, 125], [102, 104], [104, 105], [104, 106], [106, 107], [112, 113], [112, 120], [120, 121], [120, 123], [125, 126], [144, 145], [144, 147], [149, 150], [149, 165], [152, 153], [152, 157], [155, 149], [155, 156], [157, 158], [160, 161], [160, 162], [162, 149], [162, 163], [170, 171], [170, 176], [176, 177], [176, 179], [217, 218], [217, 224], [245, 246], [245, 271], [248, 249], [248, 253], [257, 263], [281, 282], [281, 290], [347, 352], [347, 360], [360, 369], [370, 371], [370, 419], [371, 373], [373, 374], [373, 378], [380, 381], [380, 398], [382, 389], [398, 399], [398, 415], [405, 370], [405, 406], [457, -422], [457, 458]], "missing_branches": [[91, 92], [102, 103], [106, 109], [125, 127], [157, 149], [257, 258], [360, 361], [371, 372], [382, 383]]}}}, "src\\supervision\\dataset\\utils.py": {"executed_lines": [1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13, 15, 16, 17, 20, 23, 29, 30, 37, 38, 49, 52, 58, 59, 60, 61, 63, 64, 65, 69, 74, 80, 81, 83, 84, 85, 87, 90, 94, 96, 97, 98, 102, 103, 105, 108, 111, 113, 114, 118, 120, 121, 125, 128, 129, 130, 131, 132, 136, 139, 157, 158, 160, 161, 163, 164], "summary": {"covered_lines": 66, "num_statements": 71, "percent_covered": 92.63157894736842, "percent_covered_display": "93", "missing_lines": 5, "excluded_lines": 2, "percent_statements_covered": 92.95774647887323, "percent_statements_covered_display": "93", "num_branches": 24, "num_partial_branches": 2, "covered_branches": 22, "missing_branches": 2, "percent_branches_covered": 91.66666666666667, "percent_branches_covered_display": "92"}, "missing_lines": [34, 43, 112, 133, 134], "excluded_lines": [46, 47], "executed_branches": [[64, 65], [64, 69], [83, 84], [83, 87], [84, 83], [84, 85], [96, 97], [96, 105], [97, 98], [97, 102], [111, 113], [113, 114], [113, 118], [120, 121], [120, 125], [130, -128], [130, 131], [132, 136], [157, 158], [157, 160], [160, 161], [160, 163]], "missing_branches": [[111, 112], [132, 133]], "functions": {"mask_to_rle": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [34], "excluded_lines": [], "start_line": 30, "executed_branches": [], "missing_branches": []}, "rle_to_mask": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [43], "excluded_lines": [], "start_line": 38, "executed_branches": [], "missing_branches": []}, "approximate_mask_with_polygons": {"executed_lines": [58, 59, 60, 61, 63, 64, 65, 69, 74], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 52, "executed_branches": [[64, 65], [64, 69]], "missing_branches": []}, "merge_class_lists": {"executed_lines": [81, 83, 84, 85, 87], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 80, "executed_branches": [[83, 84], [83, 87], [84, 83], [84, 85]], "missing_branches": []}, "build_class_index_mapping": {"executed_lines": [94, 96, 97, 98, 102, 103, 105], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 90, "executed_branches": [[96, 97], [96, 105], [97, 98], [97, 102]], "missing_branches": []}, "map_detections_class_id": {"executed_lines": [111, 113, 114, 118, 120, 121, 125], "summary": {"covered_lines": 7, "num_statements": 8, "percent_covered": 85.71428571428571, "percent_covered_display": "86", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 87.5, "percent_statements_covered_display": "88", "num_branches": 6, "num_partial_branches": 1, "covered_branches": 5, "missing_branches": 1, "percent_branches_covered": 83.33333333333333, "percent_branches_covered_display": "83"}, "missing_lines": [112], "excluded_lines": [], "start_line": 108, "executed_branches": [[111, 113], [113, 114], [113, 118], [120, 121], [120, 125]], "missing_branches": [[111, 112]]}, "save_dataset_images": {"executed_lines": [129, 130, 131, 132, 136], "summary": {"covered_lines": 5, "num_statements": 7, "percent_covered": 72.72727272727273, "percent_covered_display": "73", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 71.42857142857143, "percent_statements_covered_display": "71", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [133, 134], "excluded_lines": [], "start_line": 128, "executed_branches": [[130, -128], [130, 131], [132, 136]], "missing_branches": [[132, 133]]}, "train_test_split": {"executed_lines": [157, 158, 160, 161, 163, 164], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 139, "executed_branches": [[157, 158], [157, 160], [160, 161], [160, 163]], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13, 15, 16, 17, 20, 23, 29, 30, 37, 38, 49, 52, 80, 90, 108, 128, 139], "summary": {"covered_lines": 27, "num_statements": 27, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 2, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [46, 47], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13, 15, 16, 17, 20, 23, 29, 30, 37, 38, 49, 52, 58, 59, 60, 61, 63, 64, 65, 69, 74, 80, 81, 83, 84, 85, 87, 90, 94, 96, 97, 98, 102, 103, 105, 108, 111, 113, 114, 118, 120, 121, 125, 128, 129, 130, 131, 132, 136, 139, 157, 158, 160, 161, 163, 164], "summary": {"covered_lines": 66, "num_statements": 71, "percent_covered": 92.63157894736842, "percent_covered_display": "93", "missing_lines": 5, "excluded_lines": 2, "percent_statements_covered": 92.95774647887323, "percent_statements_covered_display": "93", "num_branches": 24, "num_partial_branches": 2, "covered_branches": 22, "missing_branches": 2, "percent_branches_covered": 91.66666666666667, "percent_branches_covered_display": "92"}, "missing_lines": [34, 43, 112, 133, 134], "excluded_lines": [46, 47], "start_line": 1, "executed_branches": [[64, 65], [64, 69], [83, 84], [83, 87], [84, 83], [84, 85], [96, 97], [96, 105], [97, 98], [97, 102], [111, 113], [113, 114], [113, 118], [120, 121], [120, 125], [130, -128], [130, 131], [132, 136], [157, 158], [157, 160], [160, 161], [160, 163]], "missing_branches": [[111, 112], [132, 133]]}}}, "src\\supervision\\detection\\__init__.py": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "src\\supervision\\detection\\compact_mask.py": {"executed_lines": [12, 14, 15, 16, 18, 19, 21, 27, 46, 49, 88, 89, 90, 92, 93, 94, 95, 96, 97, 98, 99, 100, 103, 111, 112, 113, 114, 115, 116, 117, 118, 121, 122, 125, 128, 161, 162, 166, 167, 168, 169, 170, 171, 175, 178, 179, 180, 181, 182, 183, 184, 185, 186, 188, 189, 190, 193, 228, 229, 230, 231, 233, 235, 236, 237, 238, 241, 242, 244, 246, 249, 305, 307, 309, 310, 311, 312, 314, 317, 320, 323, 324, 325, 326, 327, 328, 330, 336, 338, 341, 369, 372, 376, 377, 380, 381, 386, 389, 457, 459, 466, 467, 468, 469, 475, 476, 511, 512, 514, 515, 522, 523, 524, 526, 527, 528, 529, 530, 531, 535, 536, 537, 539, 541, 542, 543, 544, 545, 547, 548, 549, 555, 574, 575, 576, 577, 578, 582, 583, 584, 585, 587, 612, 613, 614, 620, 638, 640, 645, 646, 664, 665, 667, 668, 687, 689, 690, 713, 716, 717, 718, 719, 720, 722, 723, 741, 743, 744, 764, 766, 791, 792, 795, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 840, 841, 849, 850, 851, 854, 856, 858, 859, 860, 861, 863, 886, 887, 888, 889, 891, 913, 914, 915, 916, 923, 924, 955, 956, 958, 959, 960, 961, 969, 970, 971, 975, 978, 982, 984, 1018, 1019, 1020, 1027, 1028, 1029, 1031, 1032, 1033, 1034, 1036, 1037, 1039, 1041, 1042, 1043, 1044, 1046, 1047, 1048, 1049, 1051, 1052, 1053, 1054, 1056, 1067, 1102, 1103, 1106, 1107, 1119, 1122, 1123, 1124, 1125, 1127, 1131, 1133, 1141, 1142, 1143, 1145, 1146, 1147, 1148, 1149, 1151, 1152, 1153, 1159, 1160, 1162, 1163, 1164, 1165, 1167, 1168, 1169, 1170, 1171, 1172, 1173, 1175, 1176, 1177, 1178, 1179, 1181, 1192, 1233, 1235, 1236, 1237, 1242, 1243, 1251, 1252, 1259, 1260, 1261, 1264, 1265, 1266, 1267, 1269, 1270, 1271, 1272, 1273, 1276, 1281, 1282, 1284, 1295, 1296, 1297, 1298, 1302, 1304, 1305, 1306], "summary": {"covered_lines": 322, "num_statements": 341, "percent_covered": 92.27373068432671, "percent_covered_display": "92", "missing_lines": 19, "excluded_lines": 0, "percent_statements_covered": 94.42815249266862, "percent_statements_covered_display": "94", "num_branches": 112, "num_partial_branches": 12, "covered_branches": 96, "missing_branches": 16, "percent_branches_covered": 85.71428571428571, "percent_branches_covered_display": "86"}, "missing_lines": [104, 105, 106, 107, 108, 109, 110, 123, 163, 172, 308, 373, 642, 643, 714, 793, 917, 1104, 1108], "excluded_lines": [], "executed_branches": [[92, 93], [95, 96], [95, 117], [98, 99], [98, 103], [99, 100], [99, 111], [103, 111], [114, 95], [114, 115], [117, 92], [117, 118], [121, 122], [121, 125], [122, 121], [162, 166], [168, 169], [168, 171], [171, 175], [188, 189], [188, 190], [229, 230], [229, 246], [230, 231], [230, 233], [235, 236], [235, 238], [238, 241], [238, 244], [307, 309], [309, 310], [309, 311], [311, 312], [311, 314], [325, 326], [325, 330], [326, 327], [326, 328], [372, 376], [376, 377], [376, 380], [514, 515], [514, 522], [526, 527], [526, 547], [535, 536], [535, 539], [577, 578], [577, 585], [713, 716], [791, 792], [827, 828], [827, 840], [840, 841], [840, 849], [849, 850], [849, 851], [851, 854], [851, 856], [887, 888], [887, 889], [913, 914], [913, 915], [915, 916], [955, 956], [955, 958], [959, 960], [959, 969], [960, 959], [960, 961], [970, 971], [970, 975], [1019, 1020], [1019, 1027], [1031, 1032], [1031, 1056], [1039, 1041], [1039, 1046], [1103, 1106], [1107, 1119], [1131, 1133], [1131, 1141], [1145, 1146], [1145, 1181], [1151, 1152], [1151, 1162], [1167, 1168], [1167, 1175], [1236, 1237], [1236, 1242], [1242, 1243], [1242, 1251], [1251, 1252], [1251, 1259], [1296, 1297], [1296, 1302]], "missing_branches": [[92, 121], [103, 104], [107, 108], [107, 110], [122, 123], [162, 163], [171, 172], [307, 308], [372, 373], [642, -640], [642, 643], [713, 714], [791, 793], [915, 917], [1103, 1104], [1107, 1108]], "functions": {"_rle_area": {"executed_lines": [46], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 27, "executed_branches": [], "missing_branches": []}, "_rle_split_cols": {"executed_lines": [88, 89, 90, 92, 93, 94, 95, 96, 97, 98, 99, 100, 103, 111, 112, 113, 114, 115, 116, 117, 118, 121, 122, 125], "summary": {"covered_lines": 24, "num_statements": 32, "percent_covered": 75.0, "percent_covered_display": "75", "missing_lines": 8, "excluded_lines": 0, "percent_statements_covered": 75.0, "percent_statements_covered_display": "75", "num_branches": 20, "num_partial_branches": 3, "covered_branches": 15, "missing_branches": 5, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [104, 105, 106, 107, 108, 109, 110, 123], "excluded_lines": [], "start_line": 49, "executed_branches": [[92, 93], [95, 96], [95, 117], [98, 99], [98, 103], [99, 100], [99, 111], [103, 111], [114, 95], [114, 115], [117, 92], [117, 118], [121, 122], [121, 125], [122, 121]], "missing_branches": [[92, 121], [103, 104], [107, 108], [107, 110], [122, 123]]}, "_rle_scale_col": {"executed_lines": [161, 162, 166, 167, 168, 169, 170, 171, 175, 178, 179, 180, 181, 182, 183, 184, 185, 186, 188, 189, 190], "summary": {"covered_lines": 21, "num_statements": 23, "percent_covered": 87.09677419354838, "percent_covered_display": "87", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 91.30434782608695, "percent_statements_covered_display": "91", "num_branches": 8, "num_partial_branches": 2, "covered_branches": 6, "missing_branches": 2, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [163, 172], "excluded_lines": [], "start_line": 128, "executed_branches": [[162, 166], [168, 169], [168, 171], [171, 175], [188, 189], [188, 190]], "missing_branches": [[162, 163], [171, 172]]}, "_rle_join_cols": {"executed_lines": [228, 229, 230, 231, 233, 235, 236, 237, 238, 241, 242, 244, 246], "summary": {"covered_lines": 13, "num_statements": 13, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 8, "num_partial_branches": 0, "covered_branches": 8, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 193, "executed_branches": [[229, 230], [229, 246], [230, 231], [230, 233], [235, 236], [235, 238], [238, 241], [238, 244]], "missing_branches": []}, "_rle_resize": {"executed_lines": [305, 307, 309, 310, 311, 312, 314, 317, 320, 323, 324, 325, 326, 327, 328, 330], "summary": {"covered_lines": 16, "num_statements": 17, "percent_covered": 92.5925925925926, "percent_covered_display": "93", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 94.11764705882354, "percent_statements_covered_display": "94", "num_branches": 10, "num_partial_branches": 1, "covered_branches": 9, "missing_branches": 1, "percent_branches_covered": 90.0, "percent_branches_covered_display": "90"}, "missing_lines": [308], "excluded_lines": [], "start_line": 249, "executed_branches": [[307, 309], [309, 310], [309, 311], [311, 312], [311, 314], [325, 326], [325, 330], [326, 327], [326, 328]], "missing_branches": [[307, 308]]}, "_resize_crop": {"executed_lines": [369, 372, 376, 377, 380, 381, 386], "summary": {"covered_lines": 7, "num_statements": 8, "percent_covered": 83.33333333333333, "percent_covered_display": "83", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 87.5, "percent_statements_covered_display": "88", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [373], "excluded_lines": [], "start_line": 341, "executed_branches": [[372, 376], [376, 377], [376, 380]], "missing_branches": [[372, 373]]}, "CompactMask.__init__": {"executed_lines": [466, 467, 468, 469], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 459, "executed_branches": [], "missing_branches": []}, "CompactMask.from_dense": {"executed_lines": [511, 512, 514, 515, 522, 523, 524, 526, 527, 528, 529, 530, 531, 535, 536, 537, 539, 541, 542, 543, 544, 545, 547, 548, 549], "summary": {"covered_lines": 25, "num_statements": 25, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 6, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 476, "executed_branches": [[514, 515], [514, 522], [526, 527], [526, 547], [535, 536], [535, 539]], "missing_branches": []}, "CompactMask.to_dense": {"executed_lines": [574, 575, 576, 577, 578, 582, 583, 584, 585], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 555, "executed_branches": [[577, 578], [577, 585]], "missing_branches": []}, "CompactMask.crop": {"executed_lines": [612, 613, 614], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 587, "executed_branches": [], "missing_branches": []}, "CompactMask.__len__": {"executed_lines": [638], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 620, "executed_branches": [], "missing_branches": []}, "CompactMask.__iter__": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 2, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 2, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [642, 643], "excluded_lines": [], "start_line": 640, "executed_branches": [], "missing_branches": [[642, -640], [642, 643]]}, "CompactMask.shape": {"executed_lines": [664, 665], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 646, "executed_branches": [], "missing_branches": []}, "CompactMask.offsets": {"executed_lines": [687], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 668, "executed_branches": [], "missing_branches": []}, "CompactMask.bbox_xyxy": {"executed_lines": [713, 716, 717, 718, 719, 720], "summary": {"covered_lines": 6, "num_statements": 7, "percent_covered": 77.77777777777777, "percent_covered_display": "78", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 85.71428571428571, "percent_statements_covered_display": "86", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [714], "excluded_lines": [], "start_line": 690, "executed_branches": [[713, 716]], "missing_branches": [[713, 714]]}, "CompactMask.dtype": {"executed_lines": [741], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 723, "executed_branches": [], "missing_branches": []}, "CompactMask.area": {"executed_lines": [764], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 744, "executed_branches": [], "missing_branches": []}, "CompactMask.sum": {"executed_lines": [791, 792], "summary": {"covered_lines": 2, "num_statements": 3, "percent_covered": 60.0, "percent_covered_display": "60", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 66.66666666666667, "percent_statements_covered_display": "67", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [793], "excluded_lines": [], "start_line": 766, "executed_branches": [[791, 792]], "missing_branches": [[791, 793]]}, "CompactMask.__getitem__": {"executed_lines": [827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 840, 841, 849, 850, 851, 854, 856, 858, 859, 860, 861], "summary": {"covered_lines": 22, "num_statements": 22, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 8, "num_partial_branches": 0, "covered_branches": 8, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 795, "executed_branches": [[827, 828], [827, 840], [840, 841], [840, 849], [849, 850], [849, 851], [851, 854], [851, 856]], "missing_branches": []}, "CompactMask.__array__": {"executed_lines": [886, 887, 888, 889], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 863, "executed_branches": [[887, 888], [887, 889]], "missing_branches": []}, "CompactMask.__eq__": {"executed_lines": [913, 914, 915, 916], "summary": {"covered_lines": 4, "num_statements": 5, "percent_covered": 77.77777777777777, "percent_covered_display": "78", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 80.0, "percent_statements_covered_display": "80", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [917], "excluded_lines": [], "start_line": 891, "executed_branches": [[913, 914], [913, 915], [915, 916]], "missing_branches": [[915, 917]]}, "CompactMask.merge": {"executed_lines": [955, 956, 958, 959, 960, 961, 969, 970, 971, 975, 978, 982], "summary": {"covered_lines": 12, "num_statements": 12, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 8, "num_partial_branches": 0, "covered_branches": 8, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 924, "executed_branches": [[955, 956], [955, 958], [959, 960], [959, 969], [960, 959], [960, 961], [970, 971], [970, 975]], "missing_branches": []}, "CompactMask.repack": {"executed_lines": [1018, 1019, 1020, 1027, 1028, 1029, 1031, 1032, 1033, 1034, 1036, 1037, 1039, 1041, 1042, 1043, 1044, 1046, 1047, 1048, 1049, 1051, 1052, 1053, 1054, 1056], "summary": {"covered_lines": 26, "num_statements": 26, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 6, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 984, "executed_branches": [[1019, 1020], [1019, 1027], [1031, 1032], [1031, 1056], [1039, 1041], [1039, 1046]], "missing_branches": []}, "CompactMask.with_offset": {"executed_lines": [1102, 1103, 1106, 1107, 1119, 1122, 1123, 1124, 1125, 1127, 1131, 1133, 1141, 1142, 1143, 1145, 1146, 1147, 1148, 1149, 1151, 1152, 1153, 1159, 1160, 1162, 1163, 1164, 1165, 1167, 1168, 1169, 1170, 1171, 1172, 1173, 1175, 1176, 1177, 1178, 1179, 1181], "summary": {"covered_lines": 42, "num_statements": 44, "percent_covered": 92.85714285714286, "percent_covered_display": "93", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 95.45454545454545, "percent_statements_covered_display": "95", "num_branches": 12, "num_partial_branches": 2, "covered_branches": 10, "missing_branches": 2, "percent_branches_covered": 83.33333333333333, "percent_branches_covered_display": "83"}, "missing_lines": [1104, 1108], "excluded_lines": [], "start_line": 1067, "executed_branches": [[1103, 1106], [1107, 1119], [1131, 1133], [1131, 1141], [1145, 1146], [1145, 1181], [1151, 1152], [1151, 1162], [1167, 1168], [1167, 1175]], "missing_branches": [[1103, 1104], [1107, 1108]]}, "CompactMask.resize": {"executed_lines": [1233, 1235, 1236, 1237, 1242, 1243, 1251, 1252, 1259, 1260, 1261, 1264, 1265, 1266, 1267, 1269, 1270, 1271, 1272, 1273, 1276, 1281, 1282, 1284, 1295, 1296, 1297, 1298, 1302, 1304, 1305, 1306], "summary": {"covered_lines": 32, "num_statements": 32, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 8, "num_partial_branches": 0, "covered_branches": 8, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1192, "executed_branches": [[1236, 1237], [1236, 1242], [1242, 1243], [1242, 1251], [1251, 1252], [1251, 1259], [1296, 1297], [1296, 1302]], "missing_branches": []}, "": {"executed_lines": [12, 14, 15, 16, 18, 19, 21, 27, 49, 128, 193, 249, 336, 338, 341, 389, 457, 459, 475, 476, 555, 587, 620, 640, 645, 646, 667, 668, 689, 690, 722, 723, 743, 744, 766, 795, 863, 891, 923, 924, 984, 1067, 1192], "summary": {"covered_lines": 43, "num_statements": 43, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"CompactMask": {"executed_lines": [466, 467, 468, 469, 511, 512, 514, 515, 522, 523, 524, 526, 527, 528, 529, 530, 531, 535, 536, 537, 539, 541, 542, 543, 544, 545, 547, 548, 549, 574, 575, 576, 577, 578, 582, 583, 584, 585, 612, 613, 614, 638, 664, 665, 687, 713, 716, 717, 718, 719, 720, 741, 764, 791, 792, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 840, 841, 849, 850, 851, 854, 856, 858, 859, 860, 861, 886, 887, 888, 889, 913, 914, 915, 916, 955, 956, 958, 959, 960, 961, 969, 970, 971, 975, 978, 982, 1018, 1019, 1020, 1027, 1028, 1029, 1031, 1032, 1033, 1034, 1036, 1037, 1039, 1041, 1042, 1043, 1044, 1046, 1047, 1048, 1049, 1051, 1052, 1053, 1054, 1056, 1102, 1103, 1106, 1107, 1119, 1122, 1123, 1124, 1125, 1127, 1131, 1133, 1141, 1142, 1143, 1145, 1146, 1147, 1148, 1149, 1151, 1152, 1153, 1159, 1160, 1162, 1163, 1164, 1165, 1167, 1168, 1169, 1170, 1171, 1172, 1173, 1175, 1176, 1177, 1178, 1179, 1181, 1233, 1235, 1236, 1237, 1242, 1243, 1251, 1252, 1259, 1260, 1261, 1264, 1265, 1266, 1267, 1269, 1270, 1271, 1272, 1273, 1276, 1281, 1282, 1284, 1295, 1296, 1297, 1298, 1302, 1304, 1305, 1306], "summary": {"covered_lines": 197, "num_statements": 204, "percent_covered": 94.73684210526316, "percent_covered_display": "95", "missing_lines": 7, "excluded_lines": 0, "percent_statements_covered": 96.56862745098039, "percent_statements_covered_display": "97", "num_branches": 62, "num_partial_branches": 5, "covered_branches": 55, "missing_branches": 7, "percent_branches_covered": 88.70967741935483, "percent_branches_covered_display": "89"}, "missing_lines": [642, 643, 714, 793, 917, 1104, 1108], "excluded_lines": [], "start_line": 389, "executed_branches": [[514, 515], [514, 522], [526, 527], [526, 547], [535, 536], [535, 539], [577, 578], [577, 585], [713, 716], [791, 792], [827, 828], [827, 840], [840, 841], [840, 849], [849, 850], [849, 851], [851, 854], [851, 856], [887, 888], [887, 889], [913, 914], [913, 915], [915, 916], [955, 956], [955, 958], [959, 960], [959, 969], [960, 959], [960, 961], [970, 971], [970, 975], [1019, 1020], [1019, 1027], [1031, 1032], [1031, 1056], [1039, 1041], [1039, 1046], [1103, 1106], [1107, 1119], [1131, 1133], [1131, 1141], [1145, 1146], [1145, 1181], [1151, 1152], [1151, 1162], [1167, 1168], [1167, 1175], [1236, 1237], [1236, 1242], [1242, 1243], [1242, 1251], [1251, 1252], [1251, 1259], [1296, 1297], [1296, 1302]], "missing_branches": [[642, -640], [642, 643], [713, 714], [791, 793], [915, 917], [1103, 1104], [1107, 1108]]}, "": {"executed_lines": [12, 14, 15, 16, 18, 19, 21, 27, 46, 49, 88, 89, 90, 92, 93, 94, 95, 96, 97, 98, 99, 100, 103, 111, 112, 113, 114, 115, 116, 117, 118, 121, 122, 125, 128, 161, 162, 166, 167, 168, 169, 170, 171, 175, 178, 179, 180, 181, 182, 183, 184, 185, 186, 188, 189, 190, 193, 228, 229, 230, 231, 233, 235, 236, 237, 238, 241, 242, 244, 246, 249, 305, 307, 309, 310, 311, 312, 314, 317, 320, 323, 324, 325, 326, 327, 328, 330, 336, 338, 341, 369, 372, 376, 377, 380, 381, 386, 389, 457, 459, 475, 476, 555, 587, 620, 640, 645, 646, 667, 668, 689, 690, 722, 723, 743, 744, 766, 795, 863, 891, 923, 924, 984, 1067, 1192], "summary": {"covered_lines": 125, "num_statements": 137, "percent_covered": 88.77005347593582, "percent_covered_display": "89", "missing_lines": 12, "excluded_lines": 0, "percent_statements_covered": 91.24087591240875, "percent_statements_covered_display": "91", "num_branches": 50, "num_partial_branches": 7, "covered_branches": 41, "missing_branches": 9, "percent_branches_covered": 82.0, "percent_branches_covered_display": "82"}, "missing_lines": [104, 105, 106, 107, 108, 109, 110, 123, 163, 172, 308, 373], "excluded_lines": [], "start_line": 1, "executed_branches": [[92, 93], [95, 96], [95, 117], [98, 99], [98, 103], [99, 100], [99, 111], [103, 111], [114, 95], [114, 115], [117, 92], [117, 118], [121, 122], [121, 125], [122, 121], [162, 166], [168, 169], [168, 171], [171, 175], [188, 189], [188, 190], [229, 230], [229, 246], [230, 231], [230, 233], [235, 236], [235, 238], [238, 241], [238, 244], [307, 309], [309, 310], [309, 311], [311, 312], [311, 314], [325, 326], [325, 330], [326, 327], [326, 328], [372, 376], [376, 377], [376, 380]], "missing_branches": [[92, 121], [103, 104], [107, 108], [107, 110], [122, 123], [162, 163], [171, 172], [307, 308], [372, 373]]}}}, "src\\supervision\\detection\\core.py": {"executed_lines": [1, 3, 4, 5, 6, 8, 9, 10, 12, 16, 17, 22, 23, 28, 37, 48, 49, 62, 63, 64, 67, 68, 156, 157, 158, 159, 160, 161, 162, 164, 165, 174, 178, 180, 196, 197, 206, 207, 209, 221, 222, 245, 247, 253, 254, 285, 304, 305, 306, 312, 316, 317, 318, 335, 336, 363, 364, 366, 372, 373, 417, 418, 453, 454, 491, 492, 572, 573, 619, 620, 653, 654, 655, 657, 661, 662, 663, 664, 666, 675, 676, 704, 708, 709, 711, 712, 714, 715, 717, 718, 769, 771, 772, 773, 775, 777, 778, 783, 784, 785, 788, 790, 795, 796, 797, 799, 800, 802, 803, 805, 812, 813, 899, 900, 941, 942, 1430, 1431, 1853, 1855, 1863, 1874, 1883, 1884, 1885, 1886, 1887, 1930, 1931, 1976, 1977, 2034, 2035, 2050, 2056, 2078, 2080, 2081, 2133, 2137, 2138, 2140, 2141, 2150, 2152, 2155, 2156, 2157, 2158, 2159, 2160, 2161, 2162, 2164, 2165, 2167, 2168, 2169, 2170, 2172, 2174, 2175, 2177, 2187, 2206, 2207, 2213, 2219, 2220, 2226, 2227, 2233, 2234, 2237, 2238, 2239, 2240, 2241, 2242, 2245, 2246, 2247, 2248, 2252, 2285, 2286, 2287, 2288, 2289, 2290, 2291, 2301, 2336, 2337, 2376, 2377, 2378, 2379, 2380, 2381, 2382, 2384, 2385, 2394, 2396, 2397, 2426, 2427, 2429, 2430, 2431, 2433, 2463, 2466, 2470, 2473, 2477, 2485, 2486, 2492, 2493, 2502, 2508, 2510, 2552, 2553, 2555, 2559, 2560, 2562, 2566, 2574, 2581, 2582, 2591, 2597, 2598, 2599, 2600, 2602, 2605, 2621, 2624, 2625, 2626, 2629, 2630, 2631, 2632, 2633, 2634, 2637, 2638, 2645, 2648, 2661, 2662, 2664, 2668, 2669, 2673, 2674, 2676, 2677, 2678, 2679, 2686, 2690, 2691, 2692, 2693, 2694, 2695, 2696, 2697, 2698, 2699, 2700, 2703, 2714, 2717, 2718, 2719, 2721, 2723, 2725, 2736, 2737, 2780, 2781, 2783, 2785, 2786, 2787, 2788, 2790, 2791, 2792, 2793, 2794, 2798, 2800, 2801, 2802, 2804, 2805, 2807, 2809, 2810, 2811, 2812, 2814, 2816, 2818, 2829, 2830, 2857, 2858, 2872, 2873, 2874, 2875, 2878, 2879, 2880, 2881, 2883, 2884, 2885, 2887, 2890, 2893, 2894, 2895, 2898, 2901, 2902, 2905, 2906, 2909, 2910, 2913, 2916, 2917, 2919, 2920, 2921, 2922, 2923, 2925, 2928, 2940, 2941, 2942, 2943, 2945, 2946, 2952, 2957], "summary": {"covered_lines": 359, "num_statements": 513, "percent_covered": 67.51054852320675, "percent_covered_display": "68", "missing_lines": 154, "excluded_lines": 0, "percent_statements_covered": 69.98050682261209, "percent_statements_covered_display": "70", "num_branches": 198, "num_partial_branches": 17, "covered_branches": 121, "missing_branches": 77, "percent_branches_covered": 61.111111111111114, "percent_branches_covered_display": "61"}, "missing_lines": [208, 286, 287, 288, 289, 331, 332, 333, 407, 408, 409, 410, 411, 444, 445, 447, 480, 543, 547, 553, 554, 560, 561, 566, 605, 656, 786, 853, 854, 858, 860, 861, 862, 864, 866, 867, 869, 871, 872, 873, 874, 876, 877, 878, 879, 881, 882, 883, 885, 886, 887, 888, 890, 891, 893, 932, 933, 935, 1394, 1401, 1410, 1411, 1413, 1414, 1415, 1416, 1417, 1421, 1424, 1428, 1856, 1857, 1858, 1861, 1864, 1865, 1866, 1867, 1870, 1875, 1876, 1877, 1878, 1879, 1889, 1890, 1891, 1892, 1893, 1894, 1895, 1897, 1898, 1899, 1900, 1901, 1903, 1905, 1906, 1907, 1908, 1909, 1911, 1912, 1913, 1914, 1916, 1917, 1918, 1919, 1920, 1928, 1955, 1956, 1958, 1959, 1960, 1966, 1968, 2009, 2011, 2012, 2014, 2015, 2016, 2025, 2026, 2028, 2214, 2215, 2218, 2250, 2328, 2329, 2331, 2332, 2334, 2464, 2471, 2575, 2684, 2843, 2844, 2845, 2846, 2850, 2851, 2852, 2853, 2854, 2869, 2903, 2907, 2960], "excluded_lines": [], "executed_branches": [[196, -180], [196, 197], [207, 209], [285, 304], [304, 305], [304, 312], [312, 316], [363, 364], [363, 366], [653, 654], [653, 655], [655, 657], [661, 662], [661, 666], [711, 712], [711, 714], [777, 778], [777, 799], [783, 777], [783, 784], [785, 788], [799, 800], [799, 802], [1855, 1863], [1863, 1874], [1874, 1883], [1883, 1884], [2137, 2138], [2137, 2140], [2140, 2141], [2140, 2150], [2155, 2156], [2155, 2157], [2157, 2158], [2157, 2159], [2159, 2160], [2159, 2165], [2161, 2162], [2161, 2164], [2206, 2207], [2206, 2213], [2213, 2219], [2219, 2220], [2219, 2226], [2226, 2227], [2226, 2233], [2233, 2234], [2233, 2237], [2237, 2238], [2237, 2239], [2239, 2240], [2239, 2241], [2241, 2242], [2241, 2245], [2245, 2246], [2245, 2247], [2247, 2248], [2285, 2286], [2285, 2287], [2287, 2288], [2287, 2289], [2289, 2290], [2289, 2291], [2376, 2377], [2376, 2380], [2377, 2378], [2377, 2379], [2380, 2381], [2380, 2382], [2463, 2466], [2470, 2473], [2485, 2486], [2485, 2492], [2492, 2493], [2492, 2502], [2552, 2553], [2552, 2555], [2559, 2560], [2559, 2562], [2574, 2581], [2581, 2582], [2581, 2591], [2598, 2599], [2598, 2602], [2661, 2662], [2661, 2664], [2676, 2677], [2676, 2686], [2678, 2679], [2691, 2692], [2691, 2703], [2693, 2694], [2693, 2698], [2695, 2696], [2695, 2697], [2718, 2719], [2718, 2721], [2780, 2781], [2780, 2783], [2787, 2788], [2787, 2790], [2804, 2805], [2804, 2807], [2809, 2810], [2809, 2811], [2811, 2812], [2811, 2814], [2873, 2874], [2873, 2875], [2880, 2881], [2880, 2883], [2884, 2885], [2884, 2887], [2902, 2905], [2906, 2909], [2919, 2920], [2919, 2925], [2941, -2928], [2941, 2942], [2945, 2941], [2945, 2946]], "missing_branches": [[207, 208], [285, 286], [312, 331], [444, 445], [444, 447], [543, 547], [543, 553], [553, 554], [553, 560], [560, 561], [560, 566], [655, 656], [785, 786], [853, 854], [853, 858], [861, 862], [861, 864], [866, 867], [866, 890], [876, 866], [876, 877], [881, 882], [881, 885], [885, 876], [885, 886], [890, 891], [890, 893], [932, 933], [932, 935], [1410, 1411], [1410, 1413], [1413, 1414], [1413, 1424], [1855, 1856], [1863, 1864], [1874, 1875], [1883, 1889], [1889, 1890], [1889, 1905], [1892, 1893], [1892, 1897], [1898, 1899], [1898, 1900], [1900, 1901], [1900, 1903], [1905, 1906], [1905, 1911], [1911, 1912], [1911, 1916], [1916, 1917], [1916, 1928], [1955, 1956], [1955, 1958], [2011, 2012], [2011, 2014], [2014, 2015], [2014, 2028], [2213, 2214], [2214, 2215], [2214, 2218], [2247, 2250], [2328, 2329], [2328, 2331], [2331, 2332], [2331, 2334], [2463, 2464], [2470, 2471], [2574, 2575], [2678, 2684], [2844, 2845], [2844, 2854], [2845, 2846], [2845, 2850], [2851, 2852], [2851, 2853], [2902, 2903], [2906, 2907]], "functions": {"Detections.__post_init__": {"executed_lines": [165], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 164, "executed_branches": [], "missing_branches": []}, "Detections.__len__": {"executed_lines": [178], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 174, "executed_branches": [], "missing_branches": []}, "Detections.__iter__": {"executed_lines": [196, 197], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 180, "executed_branches": [[196, -180], [196, 197]], "missing_branches": []}, "Detections.__eq__": {"executed_lines": [207, 209], "summary": {"covered_lines": 2, "num_statements": 3, "percent_covered": 60.0, "percent_covered_display": "60", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 66.66666666666667, "percent_statements_covered_display": "67", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [208], "excluded_lines": [], "start_line": 206, "executed_branches": [[207, 209]], "missing_branches": [[207, 208]]}, "Detections.from_yolov5": {"executed_lines": [245, 247], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 222, "executed_branches": [], "missing_branches": []}, "Detections.from_ultralytics": {"executed_lines": [285, 304, 305, 306, 312, 316, 317, 318], "summary": {"covered_lines": 8, "num_statements": 15, "percent_covered": 57.142857142857146, "percent_covered_display": "57", "missing_lines": 7, "excluded_lines": 0, "percent_statements_covered": 53.333333333333336, "percent_statements_covered_display": "53", "num_branches": 6, "num_partial_branches": 2, "covered_branches": 4, "missing_branches": 2, "percent_branches_covered": 66.66666666666667, "percent_branches_covered_display": "67"}, "missing_lines": [286, 287, 288, 289, 331, 332, 333], "excluded_lines": [], "start_line": 254, "executed_branches": [[285, 304], [304, 305], [304, 312], [312, 316]], "missing_branches": [[285, 286], [312, 331]]}, "Detections.from_yolo_nas": {"executed_lines": [363, 364, 366], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 336, "executed_branches": [[363, 364], [363, 366]], "missing_branches": []}, "Detections.from_tensorflow": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 5, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 5, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [407, 408, 409, 410, 411], "excluded_lines": [], "start_line": 373, "executed_branches": [], "missing_branches": []}, "Detections.from_deepsparse": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 3, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 2, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [444, 445, 447], "excluded_lines": [], "start_line": 418, "executed_branches": [], "missing_branches": [[444, 445], [444, 447]]}, "Detections.from_mmdetection": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [480], "excluded_lines": [], "start_line": 454, "executed_branches": [], "missing_branches": []}, "Detections.from_transformers": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 7, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 7, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 6, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [543, 547, 553, 554, 560, 561, 566], "excluded_lines": [], "start_line": 492, "executed_branches": [], "missing_branches": [[543, 547], [543, 553], [553, 554], [553, 560], [560, 561], [560, 566]]}, "Detections.from_detectron2": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [605], "excluded_lines": [], "start_line": 573, "executed_branches": [], "missing_branches": []}, "Detections.from_inference": {"executed_lines": [653, 654, 655, 657, 661, 662, 663, 664, 666], "summary": {"covered_lines": 9, "num_statements": 10, "percent_covered": 87.5, "percent_covered_display": "88", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 90.0, "percent_statements_covered_display": "90", "num_branches": 6, "num_partial_branches": 1, "covered_branches": 5, "missing_branches": 1, "percent_branches_covered": 83.33333333333333, "percent_branches_covered_display": "83"}, "missing_lines": [656], "excluded_lines": [], "start_line": 620, "executed_branches": [[653, 654], [653, 655], [655, 657], [661, 662], [661, 666]], "missing_branches": [[655, 656]]}, "Detections.from_sam": {"executed_lines": [704, 708, 709, 711, 712, 714, 715], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 676, "executed_branches": [[711, 712], [711, 714]], "missing_branches": []}, "Detections.from_sam3": {"executed_lines": [769, 771, 772, 773, 775, 777, 778, 783, 784, 785, 788, 790, 795, 796, 797, 799, 800, 802, 803, 805], "summary": {"covered_lines": 20, "num_statements": 21, "percent_covered": 93.10344827586206, "percent_covered_display": "93", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 95.23809523809524, "percent_statements_covered_display": "95", "num_branches": 8, "num_partial_branches": 1, "covered_branches": 7, "missing_branches": 1, "percent_branches_covered": 87.5, "percent_branches_covered_display": "88"}, "missing_lines": [786], "excluded_lines": [], "start_line": 718, "executed_branches": [[777, 778], [777, 799], [783, 777], [783, 784], [785, 788], [799, 800], [799, 802]], "missing_branches": [[785, 786]]}, "Detections.from_azure_analyze_image": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 28, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 28, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 14, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 14, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [853, 854, 858, 860, 861, 862, 864, 866, 867, 869, 871, 872, 873, 874, 876, 877, 878, 879, 881, 882, 883, 885, 886, 887, 888, 890, 891, 893], "excluded_lines": [], "start_line": 813, "executed_branches": [], "missing_branches": [[853, 854], [853, 858], [861, 862], [861, 864], [866, 867], [866, 890], [876, 866], [876, 877], [881, 882], [881, 885], [885, 876], [885, 886], [890, 891], [890, 893]]}, "Detections.from_paddledet": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 3, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 2, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [932, 933, 935], "excluded_lines": [], "start_line": 900, "executed_branches": [], "missing_branches": [[932, 933], [932, 935]]}, "Detections.from_lmm": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 12, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 12, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 4, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [1394, 1401, 1410, 1411, 1413, 1414, 1415, 1416, 1417, 1421, 1424, 1428], "excluded_lines": [], "start_line": 942, "executed_branches": [], "missing_branches": [[1410, 1411], [1410, 1413], [1413, 1414], [1413, 1424]]}, "Detections.from_vlm": {"executed_lines": [1853, 1855, 1863, 1874, 1883, 1884, 1885, 1886, 1887], "summary": {"covered_lines": 9, "num_statements": 51, "percent_covered": 17.80821917808219, "percent_covered_display": "18", "missing_lines": 42, "excluded_lines": 0, "percent_statements_covered": 17.647058823529413, "percent_statements_covered_display": "18", "num_branches": 22, "num_partial_branches": 4, "covered_branches": 4, "missing_branches": 18, "percent_branches_covered": 18.181818181818183, "percent_branches_covered_display": "18"}, "missing_lines": [1856, 1857, 1858, 1861, 1864, 1865, 1866, 1867, 1870, 1875, 1876, 1877, 1878, 1879, 1889, 1890, 1891, 1892, 1893, 1894, 1895, 1897, 1898, 1899, 1900, 1901, 1903, 1905, 1906, 1907, 1908, 1909, 1911, 1912, 1913, 1914, 1916, 1917, 1918, 1919, 1920, 1928], "excluded_lines": [], "start_line": 1431, "executed_branches": [[1855, 1863], [1863, 1874], [1874, 1883], [1883, 1884]], "missing_branches": [[1855, 1856], [1863, 1864], [1874, 1875], [1883, 1889], [1889, 1890], [1889, 1905], [1892, 1893], [1892, 1897], [1898, 1899], [1898, 1900], [1900, 1901], [1900, 1903], [1905, 1906], [1905, 1911], [1911, 1912], [1911, 1916], [1916, 1917], [1916, 1928]]}, "Detections.from_easyocr": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 7, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 7, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 2, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [1955, 1956, 1958, 1959, 1960, 1966, 1968], "excluded_lines": [], "start_line": 1931, "executed_branches": [], "missing_branches": [[1955, 1956], [1955, 1958]]}, "Detections.from_ncnn": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 9, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 9, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 4, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [2009, 2011, 2012, 2014, 2015, 2016, 2025, 2026, 2028], "excluded_lines": [], "start_line": 1977, "executed_branches": [], "missing_branches": [[2011, 2012], [2011, 2014], [2014, 2015], [2014, 2028]]}, "Detections.empty": {"executed_lines": [2050], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 2035, "executed_branches": [], "missing_branches": []}, "Detections.is_empty": {"executed_lines": [2078], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 2056, "executed_branches": [], "missing_branches": []}, "Detections.merge": {"executed_lines": [2133, 2137, 2138, 2140, 2141, 2150, 2152, 2167, 2168, 2169, 2170, 2172, 2174, 2175, 2177], "summary": {"covered_lines": 15, "num_statements": 15, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 2081, "executed_branches": [[2137, 2138], [2137, 2140], [2140, 2141], [2140, 2150]], "missing_branches": []}, "Detections.merge.stack_or_none": {"executed_lines": [2155, 2156, 2157, 2158, 2159, 2160, 2161, 2162, 2164, 2165], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 8, "num_partial_branches": 0, "covered_branches": 8, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 2152, "executed_branches": [[2155, 2156], [2155, 2157], [2157, 2158], [2157, 2159], [2159, 2160], [2159, 2165], [2161, 2162], [2161, 2164]], "missing_branches": []}, "Detections.get_anchors_coordinates": {"executed_lines": [2206, 2207, 2213, 2219, 2220, 2226, 2227, 2233, 2234, 2237, 2238, 2239, 2240, 2241, 2242, 2245, 2246, 2247, 2248], "summary": {"covered_lines": 19, "num_statements": 23, "percent_covered": 82.22222222222223, "percent_covered_display": "82", "missing_lines": 4, "excluded_lines": 0, "percent_statements_covered": 82.6086956521739, "percent_statements_covered_display": "83", "num_branches": 22, "num_partial_branches": 2, "covered_branches": 18, "missing_branches": 4, "percent_branches_covered": 81.81818181818181, "percent_branches_covered_display": "82"}, "missing_lines": [2214, 2215, 2218, 2250], "excluded_lines": [], "start_line": 2187, "executed_branches": [[2206, 2207], [2206, 2213], [2213, 2219], [2219, 2220], [2219, 2226], [2226, 2227], [2226, 2233], [2233, 2234], [2233, 2237], [2237, 2238], [2237, 2239], [2239, 2240], [2239, 2241], [2241, 2242], [2241, 2245], [2245, 2246], [2245, 2247], [2247, 2248]], "missing_branches": [[2213, 2214], [2214, 2215], [2214, 2218], [2247, 2250]]}, "Detections.__getitem__": {"executed_lines": [2285, 2286, 2287, 2288, 2289, 2290, 2291], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 6, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 2252, "executed_branches": [[2285, 2286], [2285, 2287], [2287, 2288], [2287, 2289], [2289, 2290], [2289, 2291]], "missing_branches": []}, "Detections.__setitem__": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 5, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 5, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 4, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [2328, 2329, 2331, 2332, 2334], "excluded_lines": [], "start_line": 2301, "executed_branches": [], "missing_branches": [[2328, 2329], [2328, 2331], [2331, 2332], [2331, 2334]]}, "Detections.area": {"executed_lines": [2376, 2377, 2378, 2379, 2380, 2381, 2382], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 6, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 2337, "executed_branches": [[2376, 2377], [2376, 2380], [2377, 2378], [2377, 2379], [2380, 2381], [2380, 2382]], "missing_branches": []}, "Detections.box_area": {"executed_lines": [2394], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 2385, "executed_branches": [], "missing_branches": []}, "Detections.box_aspect_ratio": {"executed_lines": [2426, 2427, 2429, 2430, 2431], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 2397, "executed_branches": [], "missing_branches": []}, "Detections.with_nms": {"executed_lines": [2463, 2466, 2470, 2473, 2477, 2485, 2486, 2492, 2493, 2502, 2508], "summary": {"covered_lines": 11, "num_statements": 13, "percent_covered": 80.95238095238095, "percent_covered_display": "81", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 84.61538461538461, "percent_statements_covered_display": "85", "num_branches": 8, "num_partial_branches": 2, "covered_branches": 6, "missing_branches": 2, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [2464, 2471], "excluded_lines": [], "start_line": 2433, "executed_branches": [[2463, 2466], [2470, 2473], [2485, 2486], [2485, 2492], [2492, 2493], [2492, 2502]], "missing_branches": [[2463, 2464], [2470, 2471]]}, "Detections.with_nmm": {"executed_lines": [2552, 2553, 2555, 2559, 2560, 2562, 2566, 2574, 2581, 2582, 2591, 2597, 2598, 2599, 2600, 2602], "summary": {"covered_lines": 16, "num_statements": 17, "percent_covered": 92.5925925925926, "percent_covered_display": "93", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 94.11764705882354, "percent_statements_covered_display": "94", "num_branches": 10, "num_partial_branches": 1, "covered_branches": 9, "missing_branches": 1, "percent_branches_covered": 90.0, "percent_branches_covered_display": "90"}, "missing_lines": [2575], "excluded_lines": [], "start_line": 2510, "executed_branches": [[2552, 2553], [2552, 2555], [2559, 2560], [2559, 2562], [2574, 2581], [2581, 2582], [2581, 2591], [2598, 2599], [2598, 2602]], "missing_branches": [[2574, 2575]]}, "_merge_obb_corners": {"executed_lines": [2621, 2624, 2625, 2626, 2629, 2630, 2631, 2632, 2633, 2634, 2637, 2638, 2645], "summary": {"covered_lines": 13, "num_statements": 13, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 2605, "executed_branches": [], "missing_branches": []}, "_merge_detection_group": {"executed_lines": [2661, 2662, 2664, 2668, 2669, 2673, 2674, 2676, 2677, 2678, 2679, 2686, 2690, 2691, 2692, 2693, 2694, 2695, 2696, 2697, 2698, 2699, 2700, 2703, 2714, 2717, 2718, 2719, 2721, 2723, 2725], "summary": {"covered_lines": 31, "num_statements": 32, "percent_covered": 95.65217391304348, "percent_covered_display": "96", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 96.875, "percent_statements_covered_display": "97", "num_branches": 14, "num_partial_branches": 1, "covered_branches": 13, "missing_branches": 1, "percent_branches_covered": 92.85714285714286, "percent_branches_covered_display": "93"}, "missing_lines": [2684], "excluded_lines": [], "start_line": 2648, "executed_branches": [[2661, 2662], [2661, 2664], [2676, 2677], [2676, 2686], [2678, 2679], [2691, 2692], [2691, 2703], [2693, 2694], [2693, 2698], [2695, 2696], [2695, 2697], [2718, 2719], [2718, 2721]], "missing_branches": [[2678, 2684]]}, "merge_inner_detection_object_pair": {"executed_lines": [2780, 2781, 2783, 2785, 2786, 2787, 2788, 2790, 2791, 2792, 2793, 2794, 2798, 2800, 2801, 2802, 2804, 2805, 2807, 2809, 2810, 2811, 2812, 2814, 2816, 2818], "summary": {"covered_lines": 26, "num_statements": 26, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 10, "num_partial_branches": 0, "covered_branches": 10, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 2737, "executed_branches": [[2780, 2781], [2780, 2783], [2787, 2788], [2787, 2790], [2804, 2805], [2804, 2807], [2809, 2810], [2809, 2811], [2811, 2812], [2811, 2814]], "missing_branches": []}, "merge_inner_detections_objects": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 9, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 9, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 6, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [2843, 2844, 2845, 2846, 2850, 2851, 2852, 2853, 2854], "excluded_lines": [], "start_line": 2830, "executed_branches": [], "missing_branches": [[2844, 2845], [2844, 2854], [2845, 2846], [2845, 2850], [2851, 2852], [2851, 2853]]}, "merge_inner_detections_objects_without_iou": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [2869], "excluded_lines": [], "start_line": 2858, "executed_branches": [], "missing_branches": []}, "_get_sam3_value": {"executed_lines": [2873, 2874, 2875], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 2872, "executed_branches": [[2873, 2874], [2873, 2875]], "missing_branches": []}, "_normalize_sam3_prompt_results": {"executed_lines": [2879, 2880, 2881, 2883, 2884, 2885, 2887], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 2878, "executed_branches": [[2880, 2881], [2880, 2883], [2884, 2885], [2884, 2887]], "missing_branches": []}, "_normalize_sam3_prompt_result": {"executed_lines": [2893, 2894, 2895], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 2890, "executed_branches": [], "missing_branches": []}, "_normalize_sam3_prediction": {"executed_lines": [2901, 2902, 2905, 2906, 2909, 2910], "summary": {"covered_lines": 6, "num_statements": 8, "percent_covered": 66.66666666666667, "percent_covered_display": "67", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 75.0, "percent_statements_covered_display": "75", "num_branches": 4, "num_partial_branches": 2, "covered_branches": 2, "missing_branches": 2, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [2903, 2907], "excluded_lines": [], "start_line": 2898, "executed_branches": [[2902, 2905], [2906, 2909]], "missing_branches": [[2902, 2903], [2906, 2907]]}, "_build_sam3_mask": {"executed_lines": [2916, 2917, 2919, 2920, 2921, 2922, 2923, 2925], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 2913, "executed_branches": [[2919, 2920], [2919, 2925]], "missing_branches": []}, "_validate_fields_both_defined_or_none": {"executed_lines": [2940, 2941, 2942, 2943, 2945, 2946], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 2928, "executed_branches": [[2941, -2928], [2941, 2942], [2945, 2941], [2945, 2946]], "missing_branches": []}, "validate_fields_both_defined_or_none": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [2960], "excluded_lines": [], "start_line": 2957, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 5, 6, 8, 9, 10, 12, 16, 17, 22, 23, 28, 37, 48, 49, 62, 63, 64, 67, 68, 156, 157, 158, 159, 160, 161, 162, 164, 174, 180, 206, 221, 222, 253, 254, 335, 336, 372, 373, 417, 418, 453, 454, 491, 492, 572, 573, 619, 620, 675, 676, 717, 718, 812, 813, 899, 900, 941, 942, 1430, 1431, 1930, 1931, 1976, 1977, 2034, 2035, 2056, 2080, 2081, 2187, 2252, 2301, 2336, 2337, 2384, 2385, 2396, 2397, 2433, 2510, 2605, 2648, 2736, 2737, 2829, 2830, 2857, 2858, 2872, 2878, 2890, 2898, 2913, 2928, 2952, 2957], "summary": {"covered_lines": 99, "num_statements": 99, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"Detections": {"executed_lines": [165, 178, 196, 197, 207, 209, 245, 247, 285, 304, 305, 306, 312, 316, 317, 318, 363, 364, 366, 653, 654, 655, 657, 661, 662, 663, 664, 666, 704, 708, 709, 711, 712, 714, 715, 769, 771, 772, 773, 775, 777, 778, 783, 784, 785, 788, 790, 795, 796, 797, 799, 800, 802, 803, 805, 1853, 1855, 1863, 1874, 1883, 1884, 1885, 1886, 1887, 2050, 2078, 2133, 2137, 2138, 2140, 2141, 2150, 2152, 2155, 2156, 2157, 2158, 2159, 2160, 2161, 2162, 2164, 2165, 2167, 2168, 2169, 2170, 2172, 2174, 2175, 2177, 2206, 2207, 2213, 2219, 2220, 2226, 2227, 2233, 2234, 2237, 2238, 2239, 2240, 2241, 2242, 2245, 2246, 2247, 2248, 2285, 2286, 2287, 2288, 2289, 2290, 2291, 2376, 2377, 2378, 2379, 2380, 2381, 2382, 2394, 2426, 2427, 2429, 2430, 2431, 2463, 2466, 2470, 2473, 2477, 2485, 2486, 2492, 2493, 2502, 2508, 2552, 2553, 2555, 2559, 2560, 2562, 2566, 2574, 2581, 2582, 2591, 2597, 2598, 2599, 2600, 2602], "summary": {"covered_lines": 157, "num_statements": 297, "percent_covered": 53.67483296213808, "percent_covered_display": "54", "missing_lines": 140, "excluded_lines": 0, "percent_statements_covered": 52.861952861952865, "percent_statements_covered_display": "53", "num_branches": 152, "num_partial_branches": 14, "covered_branches": 84, "missing_branches": 68, "percent_branches_covered": 55.26315789473684, "percent_branches_covered_display": "55"}, "missing_lines": [208, 286, 287, 288, 289, 331, 332, 333, 407, 408, 409, 410, 411, 444, 445, 447, 480, 543, 547, 553, 554, 560, 561, 566, 605, 656, 786, 853, 854, 858, 860, 861, 862, 864, 866, 867, 869, 871, 872, 873, 874, 876, 877, 878, 879, 881, 882, 883, 885, 886, 887, 888, 890, 891, 893, 932, 933, 935, 1394, 1401, 1410, 1411, 1413, 1414, 1415, 1416, 1417, 1421, 1424, 1428, 1856, 1857, 1858, 1861, 1864, 1865, 1866, 1867, 1870, 1875, 1876, 1877, 1878, 1879, 1889, 1890, 1891, 1892, 1893, 1894, 1895, 1897, 1898, 1899, 1900, 1901, 1903, 1905, 1906, 1907, 1908, 1909, 1911, 1912, 1913, 1914, 1916, 1917, 1918, 1919, 1920, 1928, 1955, 1956, 1958, 1959, 1960, 1966, 1968, 2009, 2011, 2012, 2014, 2015, 2016, 2025, 2026, 2028, 2214, 2215, 2218, 2250, 2328, 2329, 2331, 2332, 2334, 2464, 2471, 2575], "excluded_lines": [], "start_line": 68, "executed_branches": [[196, -180], [196, 197], [207, 209], [285, 304], [304, 305], [304, 312], [312, 316], [363, 364], [363, 366], [653, 654], [653, 655], [655, 657], [661, 662], [661, 666], [711, 712], [711, 714], [777, 778], [777, 799], [783, 777], [783, 784], [785, 788], [799, 800], [799, 802], [1855, 1863], [1863, 1874], [1874, 1883], [1883, 1884], [2137, 2138], [2137, 2140], [2140, 2141], [2140, 2150], [2155, 2156], [2155, 2157], [2157, 2158], [2157, 2159], [2159, 2160], [2159, 2165], [2161, 2162], [2161, 2164], [2206, 2207], [2206, 2213], [2213, 2219], [2219, 2220], [2219, 2226], [2226, 2227], [2226, 2233], [2233, 2234], [2233, 2237], [2237, 2238], [2237, 2239], [2239, 2240], [2239, 2241], [2241, 2242], [2241, 2245], [2245, 2246], [2245, 2247], [2247, 2248], [2285, 2286], [2285, 2287], [2287, 2288], [2287, 2289], [2289, 2290], [2289, 2291], [2376, 2377], [2376, 2380], [2377, 2378], [2377, 2379], [2380, 2381], [2380, 2382], [2463, 2466], [2470, 2473], [2485, 2486], [2485, 2492], [2492, 2493], [2492, 2502], [2552, 2553], [2552, 2555], [2559, 2560], [2559, 2562], [2574, 2581], [2581, 2582], [2581, 2591], [2598, 2599], [2598, 2602]], "missing_branches": [[207, 208], [285, 286], [312, 331], [444, 445], [444, 447], [543, 547], [543, 553], [553, 554], [553, 560], [560, 561], [560, 566], [655, 656], [785, 786], [853, 854], [853, 858], [861, 862], [861, 864], [866, 867], [866, 890], [876, 866], [876, 877], [881, 882], [881, 885], [885, 876], [885, 886], [890, 891], [890, 893], [932, 933], [932, 935], [1410, 1411], [1410, 1413], [1413, 1414], [1413, 1424], [1855, 1856], [1863, 1864], [1874, 1875], [1883, 1889], [1889, 1890], [1889, 1905], [1892, 1893], [1892, 1897], [1898, 1899], [1898, 1900], [1900, 1901], [1900, 1903], [1905, 1906], [1905, 1911], [1911, 1912], [1911, 1916], [1916, 1917], [1916, 1928], [1955, 1956], [1955, 1958], [2011, 2012], [2011, 2014], [2014, 2015], [2014, 2028], [2213, 2214], [2214, 2215], [2214, 2218], [2247, 2250], [2328, 2329], [2328, 2331], [2331, 2332], [2331, 2334], [2463, 2464], [2470, 2471], [2574, 2575]]}, "": {"executed_lines": [1, 3, 4, 5, 6, 8, 9, 10, 12, 16, 17, 22, 23, 28, 37, 48, 49, 62, 63, 64, 67, 68, 156, 157, 158, 159, 160, 161, 162, 164, 174, 180, 206, 221, 222, 253, 254, 335, 336, 372, 373, 417, 418, 453, 454, 491, 492, 572, 573, 619, 620, 675, 676, 717, 718, 812, 813, 899, 900, 941, 942, 1430, 1431, 1930, 1931, 1976, 1977, 2034, 2035, 2056, 2080, 2081, 2187, 2252, 2301, 2336, 2337, 2384, 2385, 2396, 2397, 2433, 2510, 2605, 2621, 2624, 2625, 2626, 2629, 2630, 2631, 2632, 2633, 2634, 2637, 2638, 2645, 2648, 2661, 2662, 2664, 2668, 2669, 2673, 2674, 2676, 2677, 2678, 2679, 2686, 2690, 2691, 2692, 2693, 2694, 2695, 2696, 2697, 2698, 2699, 2700, 2703, 2714, 2717, 2718, 2719, 2721, 2723, 2725, 2736, 2737, 2780, 2781, 2783, 2785, 2786, 2787, 2788, 2790, 2791, 2792, 2793, 2794, 2798, 2800, 2801, 2802, 2804, 2805, 2807, 2809, 2810, 2811, 2812, 2814, 2816, 2818, 2829, 2830, 2857, 2858, 2872, 2873, 2874, 2875, 2878, 2879, 2880, 2881, 2883, 2884, 2885, 2887, 2890, 2893, 2894, 2895, 2898, 2901, 2902, 2905, 2906, 2909, 2910, 2913, 2916, 2917, 2919, 2920, 2921, 2922, 2923, 2925, 2928, 2940, 2941, 2942, 2943, 2945, 2946, 2952, 2957], "summary": {"covered_lines": 202, "num_statements": 216, "percent_covered": 91.22137404580153, "percent_covered_display": "91", "missing_lines": 14, "excluded_lines": 0, "percent_statements_covered": 93.51851851851852, "percent_statements_covered_display": "94", "num_branches": 46, "num_partial_branches": 3, "covered_branches": 37, "missing_branches": 9, "percent_branches_covered": 80.43478260869566, "percent_branches_covered_display": "80"}, "missing_lines": [2684, 2843, 2844, 2845, 2846, 2850, 2851, 2852, 2853, 2854, 2869, 2903, 2907, 2960], "excluded_lines": [], "start_line": 1, "executed_branches": [[2661, 2662], [2661, 2664], [2676, 2677], [2676, 2686], [2678, 2679], [2691, 2692], [2691, 2703], [2693, 2694], [2693, 2698], [2695, 2696], [2695, 2697], [2718, 2719], [2718, 2721], [2780, 2781], [2780, 2783], [2787, 2788], [2787, 2790], [2804, 2805], [2804, 2807], [2809, 2810], [2809, 2811], [2811, 2812], [2811, 2814], [2873, 2874], [2873, 2875], [2880, 2881], [2880, 2883], [2884, 2885], [2884, 2887], [2902, 2905], [2906, 2909], [2919, 2920], [2919, 2925], [2941, -2928], [2941, 2942], [2945, 2941], [2945, 2946]], "missing_branches": [[2678, 2684], [2844, 2845], [2844, 2854], [2845, 2846], [2845, 2850], [2851, 2852], [2851, 2853], [2902, 2903], [2906, 2907]]}}}, "src\\supervision\\detection\\line_zone.py": {"executed_lines": [1, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 15, 16, 17, 18, 19, 20, 21, 22, 24, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 45, 46, 47, 53, 54, 55, 56, 57, 58, 59, 60, 63, 64, 65, 67, 68, 70, 73, 138, 163, 164, 165, 166, 169, 170, 171, 172, 174, 176, 177, 178, 180, 181, 182, 184, 185, 186, 188, 189, 190, 192, 207, 208, 210, 213, 222, 224, 228, 234, 237, 238, 240, 243, 244, 245, 247, 248, 250, 251, 253, 254, 255, 257, 258, 259, 261, 262, 264, 266, 267, 268, 270, 271, 273, 274, 276, 277, 279, 280, 282, 289, 296, 298, 334, 335, 337, 344, 345, 348, 349, 351, 352, 353, 355, 357, 364, 365, 367, 368, 370, 371, 377, 380, 381, 421, 438, 452, 453, 454, 455, 464, 472, 481, 482, 483, 485, 489, 492, 493, 507, 509, 519, 520, 522, 523, 525, 526, 527, 532, 534, 598, 619, 626, 627, 629, 631, 642, 644, 698, 699, 700, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 783, 817, 828, 840, 859, 860, 861, 864, 865, 866, 867, 869, 873, 874, 876, 877, 878, 880, 881, 884, 886, 887, 888, 891, 892, 893, 895, 896, 897, 898, 899, 901, 916, 918, 921, 925, 926, 929, 930, 931, 933, 944], "summary": {"covered_lines": 229, "num_statements": 286, "percent_covered": 78.16091954022988, "percent_covered_display": "78", "missing_lines": 57, "excluded_lines": 1, "percent_statements_covered": 80.06993006993007, "percent_statements_covered_display": "80", "num_branches": 62, "num_partial_branches": 13, "covered_branches": 43, "missing_branches": 19, "percent_branches_covered": 69.35483870967742, "percent_branches_covered_display": "69"}, "missing_lines": [173, 211, 214, 220, 241, 373, 490, 500, 529, 530, 556, 558, 559, 562, 564, 565, 567, 571, 576, 577, 579, 582, 586, 587, 588, 590, 591, 593, 594, 596, 666, 667, 677, 679, 686, 694, 696, 727, 731, 732, 733, 735, 736, 738, 745, 751, 757, 760, 761, 763, 764, 767, 769, 823, 862, 879, 883], "excluded_lines": [74], "executed_branches": [[172, 174], [210, 213], [213, 222], [234, 237], [234, 264], [237, 238], [237, 240], [240, 243], [250, 251], [250, 253], [254, 255], [254, 257], [257, 258], [257, 261], [270, 271], [270, 273], [367, 368], [367, 370], [370, 371], [485, 489], [485, 507], [489, 492], [492, 493], [525, 526], [626, 627], [626, 629], [817, 828], [859, 860], [861, 864], [865, 866], [865, 886], [869, 865], [869, 873], [873, 874], [873, 876], [877, 869], [877, 878], [878, 880], [880, 881], [887, 888], [887, 895], [925, 926], [925, 944]], "missing_branches": [[172, 173], [210, 211], [213, 214], [240, 241], [370, 373], [489, 490], [492, 500], [525, 529], [558, 559], [558, 564], [586, 587], [586, 590], [760, 761], [760, 763], [817, 823], [859, 861], [861, 862], [878, 879], [880, 883]], "functions": {"_multiclass_config_property": {"executed_lines": [64, 67, 70], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 63, "executed_branches": [], "missing_branches": []}, "_multiclass_config_property.getter": {"executed_lines": [65], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 64, "executed_branches": [], "missing_branches": []}, "_multiclass_config_property.setter": {"executed_lines": [68], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 67, "executed_branches": [], "missing_branches": []}, "LineZone.__init__": {"executed_lines": [163, 164, 165, 166, 169, 170, 171, 172, 174], "summary": {"covered_lines": 9, "num_statements": 10, "percent_covered": 83.33333333333333, "percent_covered_display": "83", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 90.0, "percent_statements_covered_display": "90", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [173], "excluded_lines": [], "start_line": 138, "executed_branches": [[172, 174]], "missing_branches": [[172, 173]]}, "LineZone.in_count": {"executed_lines": [178], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 177, "executed_branches": [], "missing_branches": []}, "LineZone.out_count": {"executed_lines": [182], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 181, "executed_branches": [], "missing_branches": []}, "LineZone.in_count_per_class": {"executed_lines": [186], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 185, "executed_branches": [], "missing_branches": []}, "LineZone.out_count_per_class": {"executed_lines": [190], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 189, "executed_branches": [], "missing_branches": []}, "LineZone.trigger": {"executed_lines": [207, 208, 210, 213, 222, 224, 228, 234, 237, 238, 240, 243, 244, 245, 247, 248, 250, 251, 253, 254, 255, 257, 258, 259, 261, 262, 264], "summary": {"covered_lines": 27, "num_statements": 31, "percent_covered": 85.1063829787234, "percent_covered_display": "85", "missing_lines": 4, "excluded_lines": 0, "percent_statements_covered": 87.09677419354838, "percent_statements_covered_display": "87", "num_branches": 16, "num_partial_branches": 3, "covered_branches": 13, "missing_branches": 3, "percent_branches_covered": 81.25, "percent_branches_covered_display": "81"}, "missing_lines": [211, 214, 220, 241], "excluded_lines": [], "start_line": 192, "executed_branches": [[210, 213], [213, 222], [234, 237], [234, 264], [237, 238], [237, 240], [240, 243], [250, 251], [250, 253], [254, 255], [254, 257], [257, 258], [257, 261]], "missing_branches": [[210, 211], [213, 214], [240, 241]]}, "LineZone._calculate_region_of_interest_limits": {"executed_lines": [268, 270, 271, 273, 274, 276, 277, 279, 280, 282, 289, 296], "summary": {"covered_lines": 12, "num_statements": 12, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 267, "executed_branches": [[270, 271], [270, 273]], "missing_branches": []}, "LineZone._compute_anchor_sides": {"executed_lines": [334, 335, 337, 344, 345, 348, 349, 351, 352, 353, 355], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 298, "executed_branches": [], "missing_branches": []}, "LineZone._update_class_id_to_name": {"executed_lines": [364, 365, 367, 368, 370, 371, 377], "summary": {"covered_lines": 7, "num_statements": 8, "percent_covered": 83.33333333333333, "percent_covered_display": "83", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 87.5, "percent_statements_covered_display": "88", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [373], "excluded_lines": [], "start_line": 357, "executed_branches": [[367, 368], [367, 370], [370, 371]], "missing_branches": [[370, 373]]}, "LineZoneAnnotator.__init__": {"executed_lines": [421], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 381, "executed_branches": [], "missing_branches": []}, "LineZoneAnnotator.annotate": {"executed_lines": [452, 453, 454, 455, 464, 472, 481, 482, 483, 485, 489, 492, 493, 507], "summary": {"covered_lines": 14, "num_statements": 16, "percent_covered": 81.81818181818181, "percent_covered_display": "82", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 87.5, "percent_statements_covered_display": "88", "num_branches": 6, "num_partial_branches": 2, "covered_branches": 4, "missing_branches": 2, "percent_branches_covered": 66.66666666666667, "percent_branches_covered_display": "67"}, "missing_lines": [490, 500], "excluded_lines": [], "start_line": 438, "executed_branches": [[485, 489], [485, 507], [489, 492], [492, 493]], "missing_branches": [[489, 490], [492, 500]]}, "LineZoneAnnotator._get_line_angle": {"executed_lines": [519, 520, 522, 523, 525, 526, 527, 532], "summary": {"covered_lines": 8, "num_statements": 10, "percent_covered": 75.0, "percent_covered_display": "75", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 80.0, "percent_statements_covered_display": "80", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [529, 530], "excluded_lines": [], "start_line": 509, "executed_branches": [[525, 526]], "missing_branches": [[525, 529]]}, "LineZoneAnnotator._calculate_anchor_in_frame": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 20, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 20, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 4, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [556, 558, 559, 562, 564, 565, 567, 571, 576, 577, 579, 582, 586, 587, 588, 590, 591, 593, 594, 596], "excluded_lines": [], "start_line": 534, "executed_branches": [], "missing_branches": [[558, 559], [558, 564], [586, 587], [586, 590]]}, "LineZoneAnnotator._draw_basic_label": {"executed_lines": [619, 626, 627, 629, 631, 642], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 598, "executed_branches": [[626, 627], [626, 629]], "missing_branches": []}, "LineZoneAnnotator._draw_oriented_label": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 7, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 7, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [666, 667, 677, 679, 686, 694, 696], "excluded_lines": [], "start_line": 644, "executed_branches": [], "missing_branches": []}, "LineZoneAnnotator._make_label_image": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 16, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 16, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 2, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [727, 731, 732, 733, 735, 736, 738, 745, 751, 757, 760, 761, 763, 764, 767, 769], "excluded_lines": [], "start_line": 700, "executed_branches": [], "missing_branches": [[760, 761], [760, 763]]}, "LineZoneAnnotatorMulticlass.__init__": {"executed_lines": [817, 828], "summary": {"covered_lines": 2, "num_statements": 3, "percent_covered": 60.0, "percent_covered_display": "60", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 66.66666666666667, "percent_statements_covered_display": "67", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [823], "excluded_lines": [], "start_line": 783, "executed_branches": [[817, 828]], "missing_branches": [[817, 823]]}, "LineZoneAnnotatorMulticlass.annotate": {"executed_lines": [859, 860, 861, 864, 865, 866, 867, 869, 873, 874, 876, 877, 878, 880, 881, 884, 886, 887, 888, 891, 892, 893, 895, 896, 897, 898, 899, 901, 916, 918, 921, 925, 926, 929, 930, 931, 933, 944], "summary": {"covered_lines": 38, "num_statements": 41, "percent_covered": 88.52459016393442, "percent_covered_display": "89", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 92.6829268292683, "percent_statements_covered_display": "93", "num_branches": 20, "num_partial_branches": 4, "covered_branches": 16, "missing_branches": 4, "percent_branches_covered": 80.0, "percent_branches_covered_display": "80"}, "missing_lines": [862, 879, 883], "excluded_lines": [], "start_line": 840, "executed_branches": [[859, 860], [861, 864], [865, 866], [865, 886], [869, 865], [869, 873], [873, 874], [873, 876], [877, 869], [877, 878], [878, 880], [880, 881], [887, 888], [887, 895], [925, 926], [925, 944]], "missing_branches": [[859, 861], [861, 862], [878, 879], [880, 883]]}, "": {"executed_lines": [1, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 15, 16, 17, 18, 19, 20, 21, 22, 24, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 45, 46, 47, 53, 54, 55, 56, 57, 58, 59, 60, 63, 73, 138, 176, 177, 180, 181, 184, 185, 188, 189, 192, 266, 267, 298, 357, 380, 381, 438, 509, 534, 598, 644, 698, 699, 700, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 783, 840], "summary": {"covered_lines": 85, "num_statements": 85, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 1, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [74], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"LineZoneAnnotatorConfig": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 28, "executed_branches": [], "missing_branches": []}, "LineZoneAnnotatorMulticlassConfig": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 46, "executed_branches": [], "missing_branches": []}, "LineZone": {"executed_lines": [163, 164, 165, 166, 169, 170, 171, 172, 174, 178, 182, 186, 190, 207, 208, 210, 213, 222, 224, 228, 234, 237, 238, 240, 243, 244, 245, 247, 248, 250, 251, 253, 254, 255, 257, 258, 259, 261, 262, 264, 268, 270, 271, 273, 274, 276, 277, 279, 280, 282, 289, 296, 334, 335, 337, 344, 345, 348, 349, 351, 352, 353, 355, 364, 365, 367, 368, 370, 371, 377], "summary": {"covered_lines": 70, "num_statements": 76, "percent_covered": 89.0, "percent_covered_display": "89", "missing_lines": 6, "excluded_lines": 0, "percent_statements_covered": 92.10526315789474, "percent_statements_covered_display": "92", "num_branches": 24, "num_partial_branches": 5, "covered_branches": 19, "missing_branches": 5, "percent_branches_covered": 79.16666666666667, "percent_branches_covered_display": "79"}, "missing_lines": [173, 211, 214, 220, 241, 373], "excluded_lines": [], "start_line": 73, "executed_branches": [[172, 174], [210, 213], [213, 222], [234, 237], [234, 264], [237, 238], [237, 240], [240, 243], [250, 251], [250, 253], [254, 255], [254, 257], [257, 258], [257, 261], [270, 271], [270, 273], [367, 368], [367, 370], [370, 371]], "missing_branches": [[172, 173], [210, 211], [213, 214], [240, 241], [370, 373]]}, "LineZoneAnnotator": {"executed_lines": [421, 452, 453, 454, 455, 464, 472, 481, 482, 483, 485, 489, 492, 493, 507, 519, 520, 522, 523, 525, 526, 527, 532, 619, 626, 627, 629, 631, 642], "summary": {"covered_lines": 29, "num_statements": 76, "percent_covered": 39.130434782608695, "percent_covered_display": "39", "missing_lines": 47, "excluded_lines": 0, "percent_statements_covered": 38.1578947368421, "percent_statements_covered_display": "38", "num_branches": 16, "num_partial_branches": 3, "covered_branches": 7, "missing_branches": 9, "percent_branches_covered": 43.75, "percent_branches_covered_display": "44"}, "missing_lines": [490, 500, 529, 530, 556, 558, 559, 562, 564, 565, 567, 571, 576, 577, 579, 582, 586, 587, 588, 590, 591, 593, 594, 596, 666, 667, 677, 679, 686, 694, 696, 727, 731, 732, 733, 735, 736, 738, 745, 751, 757, 760, 761, 763, 764, 767, 769], "excluded_lines": [], "start_line": 380, "executed_branches": [[485, 489], [485, 507], [489, 492], [492, 493], [525, 526], [626, 627], [626, 629]], "missing_branches": [[489, 490], [492, 500], [525, 529], [558, 559], [558, 564], [586, 587], [586, 590], [760, 761], [760, 763]]}, "LineZoneAnnotatorMulticlass": {"executed_lines": [817, 828, 859, 860, 861, 864, 865, 866, 867, 869, 873, 874, 876, 877, 878, 880, 881, 884, 886, 887, 888, 891, 892, 893, 895, 896, 897, 898, 899, 901, 916, 918, 921, 925, 926, 929, 930, 931, 933, 944], "summary": {"covered_lines": 40, "num_statements": 44, "percent_covered": 86.36363636363636, "percent_covered_display": "86", "missing_lines": 4, "excluded_lines": 0, "percent_statements_covered": 90.9090909090909, "percent_statements_covered_display": "91", "num_branches": 22, "num_partial_branches": 5, "covered_branches": 17, "missing_branches": 5, "percent_branches_covered": 77.27272727272727, "percent_branches_covered_display": "77"}, "missing_lines": [823, 862, 879, 883], "excluded_lines": [], "start_line": 772, "executed_branches": [[817, 828], [859, 860], [861, 864], [865, 866], [865, 886], [869, 865], [869, 873], [873, 874], [873, 876], [877, 869], [877, 878], [878, 880], [880, 881], [887, 888], [887, 895], [925, 926], [925, 944]], "missing_branches": [[817, 823], [859, 861], [861, 862], [878, 879], [880, 883]]}, "": {"executed_lines": [1, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 15, 16, 17, 18, 19, 20, 21, 22, 24, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 45, 46, 47, 53, 54, 55, 56, 57, 58, 59, 60, 63, 64, 65, 67, 68, 70, 73, 138, 176, 177, 180, 181, 184, 185, 188, 189, 192, 266, 267, 298, 357, 380, 381, 438, 509, 534, 598, 644, 698, 699, 700, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 783, 840], "summary": {"covered_lines": 90, "num_statements": 90, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 1, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [74], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "src\\supervision\\detection\\tools\\__init__.py": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "src\\supervision\\detection\\tools\\csv_sink.py": {"executed_lines": [1, 3, 4, 5, 6, 7, 9, 11, 12, 14, 16, 27, 31, 75, 82, 83, 84, 85, 86, 88, 89, 90, 92, 98, 100, 104, 105, 108, 109, 111, 115, 116, 118, 119, 138, 139, 140, 141, 142, 144, 145, 166, 167, 168, 169, 185, 186, 187, 189, 190, 191, 193, 194, 196, 210, 214, 215, 216, 217, 218, 220, 227, 228, 229, 233, 234, 237, 238, 241], "summary": {"covered_lines": 69, "num_statements": 72, "percent_covered": 91.83673469387755, "percent_covered_display": "92", "missing_lines": 3, "excluded_lines": 3, "percent_statements_covered": 95.83333333333333, "percent_statements_covered_display": "96", "num_branches": 26, "num_partial_branches": 5, "covered_branches": 21, "missing_branches": 5, "percent_branches_covered": 80.76923076923077, "percent_branches_covered_display": "81"}, "missing_lines": [106, 211, 221], "excluded_lines": [28, 29, 30], "executed_branches": [[105, 108], [115, 116], [138, 139], [138, 140], [140, 141], [140, 142], [168, 169], [168, 194], [185, 186], [186, 187], [186, 189], [189, 190], [189, 193], [190, 191], [190, 193], [210, 214], [215, 216], [215, 220], [220, 227], [228, -196], [228, 229]], "missing_branches": [[105, 106], [115, -111], [185, 189], [210, 211], [220, 221]], "functions": {"WriterProtocol.writerow": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 1, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [28], "start_line": 28, "executed_branches": [], "missing_branches": []}, "CSVSink.__init__": {"executed_lines": [82, 83, 84, 85, 86], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 75, "executed_branches": [], "missing_branches": []}, "CSVSink.__enter__": {"executed_lines": [89, 90], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 88, "executed_branches": [], "missing_branches": []}, "CSVSink.__exit__": {"executed_lines": [98], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 92, "executed_branches": [], "missing_branches": []}, "CSVSink.open": {"executed_lines": [104, 105, 108, 109], "summary": {"covered_lines": 4, "num_statements": 5, "percent_covered": 71.42857142857143, "percent_covered_display": "71", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 80.0, "percent_statements_covered_display": "80", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [106], "excluded_lines": [], "start_line": 100, "executed_branches": [[105, 108]], "missing_branches": [[105, 106]]}, "CSVSink.close": {"executed_lines": [115, 116], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 75.0, "percent_covered_display": "75", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [], "excluded_lines": [], "start_line": 111, "executed_branches": [[115, 116]], "missing_branches": [[115, -111]]}, "CSVSink._slice_value": {"executed_lines": [138, 139, 140, 141, 142], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 119, "executed_branches": [[138, 139], [138, 140], [140, 141], [140, 142]], "missing_branches": []}, "CSVSink.parse_detection_data": {"executed_lines": [166, 167, 168, 169, 185, 186, 187, 189, 190, 191, 193, 194], "summary": {"covered_lines": 12, "num_statements": 12, "percent_covered": 95.45454545454545, "percent_covered_display": "95", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 10, "num_partial_branches": 1, "covered_branches": 9, "missing_branches": 1, "percent_branches_covered": 90.0, "percent_branches_covered_display": "90"}, "missing_lines": [], "excluded_lines": [], "start_line": 145, "executed_branches": [[168, 169], [168, 194], [185, 186], [186, 187], [186, 189], [189, 190], [189, 193], [190, 191], [190, 193]], "missing_branches": [[185, 189]]}, "CSVSink.append": {"executed_lines": [210, 214, 215, 216, 217, 218, 220, 227, 228, 229], "summary": {"covered_lines": 10, "num_statements": 12, "percent_covered": 80.0, "percent_covered_display": "80", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 83.33333333333333, "percent_statements_covered_display": "83", "num_branches": 8, "num_partial_branches": 2, "covered_branches": 6, "missing_branches": 2, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [211, 221], "excluded_lines": [], "start_line": 196, "executed_branches": [[210, 214], [215, 216], [215, 220], [220, 227], [228, -196], [228, 229]], "missing_branches": [[210, 211], [220, 221]]}, "CSVSink.parse_field_names": {"executed_lines": [237, 238, 241], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 234, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 5, 6, 7, 9, 11, 12, 14, 16, 27, 31, 75, 88, 92, 100, 111, 118, 119, 144, 145, 196, 233, 234], "summary": {"covered_lines": 25, "num_statements": 25, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 2, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [29, 30], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"WriterProtocol": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 1, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [28], "start_line": 27, "executed_branches": [], "missing_branches": []}, "CSVSink": {"executed_lines": [82, 83, 84, 85, 86, 89, 90, 98, 104, 105, 108, 109, 115, 116, 138, 139, 140, 141, 142, 166, 167, 168, 169, 185, 186, 187, 189, 190, 191, 193, 194, 210, 214, 215, 216, 217, 218, 220, 227, 228, 229, 237, 238, 241], "summary": {"covered_lines": 44, "num_statements": 47, "percent_covered": 89.04109589041096, "percent_covered_display": "89", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 93.61702127659575, "percent_statements_covered_display": "94", "num_branches": 26, "num_partial_branches": 5, "covered_branches": 21, "missing_branches": 5, "percent_branches_covered": 80.76923076923077, "percent_branches_covered_display": "81"}, "missing_lines": [106, 211, 221], "excluded_lines": [], "start_line": 31, "executed_branches": [[105, 108], [115, 116], [138, 139], [138, 140], [140, 141], [140, 142], [168, 169], [168, 194], [185, 186], [186, 187], [186, 189], [189, 190], [189, 193], [190, 191], [190, 193], [210, 214], [215, 216], [215, 220], [220, 227], [228, -196], [228, 229]], "missing_branches": [[105, 106], [115, -111], [185, 189], [210, 211], [220, 221]]}, "": {"executed_lines": [1, 3, 4, 5, 6, 7, 9, 11, 12, 14, 16, 27, 31, 75, 88, 92, 100, 111, 118, 119, 144, 145, 196, 233, 234], "summary": {"covered_lines": 25, "num_statements": 25, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 2, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [29, 30], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "src\\supervision\\detection\\tools\\inference_slicer.py": {"executed_lines": [1, 3, 4, 5, 6, 7, 8, 10, 11, 13, 14, 15, 16, 17, 18, 19, 20, 21, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 36, 37, 38, 39, 40, 41, 44, 60, 61, 62, 65, 66, 71, 73, 79, 82, 85, 164, 166, 177, 178, 180, 182, 188, 198, 200, 201, 202, 204, 205, 208, 209, 210, 212, 213, 217, 218, 219, 221, 222, 226, 227, 228, 230, 231, 234, 235, 236, 238, 239, 242, 243, 244, 246, 247, 248, 250, 251, 252, 254, 255, 256, 261, 263, 264, 265, 267, 268, 271, 289, 291, 297, 299, 300, 302, 307, 309, 310, 312, 313, 314, 316, 317, 326, 328, 329, 330, 331, 332, 333, 341, 342, 344, 345, 349, 350, 351, 352, 355, 357, 360, 362, 386, 391, 393, 398, 399, 403, 405, 406, 407, 423, 424, 425, 426, 427, 431, 432, 443, 455, 456, 458, 463, 464, 470, 473, 477, 478, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 497, 498, 503, 505, 506, 509, 510, 514, 530, 531, 534, 535, 540, 556, 557, 574, 575, 576, 578, 579, 581, 586, 587, 589, 590, 592, 593, 594, 595, 596, 598, 603, 609, 610, 611, 613, 618, 620, 621, 625, 626, 628, 634], "summary": {"covered_lines": 209, "num_statements": 257, "percent_covered": 76.13293051359517, "percent_covered_display": "76", "missing_lines": 48, "excluded_lines": 0, "percent_statements_covered": 81.32295719844358, "percent_statements_covered_display": "81", "num_branches": 74, "num_partial_branches": 15, "covered_branches": 43, "missing_branches": 31, "percent_branches_covered": 58.108108108108105, "percent_branches_covered_display": "58"}, "missing_lines": [67, 183, 206, 214, 215, 223, 224, 232, 240, 257, 269, 318, 368, 369, 371, 372, 373, 374, 375, 377, 378, 379, 381, 382, 384, 409, 410, 411, 413, 414, 437, 441, 511, 516, 517, 518, 519, 522, 524, 536, 542, 543, 544, 545, 548, 550, 629, 635], "excluded_lines": [], "executed_branches": [[61, 62], [61, 65], [65, 66], [65, 82], [66, 71], [71, 73], [71, 79], [182, 188], [256, 261], [317, 326], [328, 329], [328, 344], [329, 330], [329, 341], [331, 332], [341, 342], [341, 357], [349, 350], [349, 351], [406, 407], [424, 425], [424, 426], [426, 427], [426, 431], [431, 432], [458, 463], [458, 470], [477, 478], [477, 498], [480, 481], [487, 488], [487, 498], [509, 510], [510, 514], [534, 535], [535, 540], [586, 587], [586, 589], [589, 590], [589, 592], [594, 595], [628, 634], [634, -620]], "missing_branches": [[66, 67], [182, 183], [256, 257], [317, 318], [331, 341], [371, 372], [371, 384], [377, 378], [377, 381], [381, 371], [381, 382], [406, 409], [410, 411], [410, 413], [431, 437], [480, 498], [509, 516], [510, 511], [516, 517], [516, 524], [518, 519], [518, 522], [534, 542], [535, 536], [542, 543], [542, 550], [544, 545], [544, 548], [594, 596], [628, 629], [634, 635]], "functions": {"move_detections": {"executed_lines": [60, 61, 62, 65, 66, 71, 73, 79, 82], "summary": {"covered_lines": 9, "num_statements": 10, "percent_covered": 88.88888888888889, "percent_covered_display": "89", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 90.0, "percent_statements_covered_display": "90", "num_branches": 8, "num_partial_branches": 1, "covered_branches": 7, "missing_branches": 1, "percent_branches_covered": 87.5, "percent_branches_covered_display": "88"}, "missing_lines": [67], "excluded_lines": [], "start_line": 44, "executed_branches": [[61, 62], [61, 65], [65, 66], [65, 82], [66, 71], [71, 73], [71, 79]], "missing_branches": [[66, 67]]}, "InferenceSlicer.__init__": {"executed_lines": [177, 178, 180, 182, 188, 198], "summary": {"covered_lines": 6, "num_statements": 7, "percent_covered": 77.77777777777777, "percent_covered_display": "78", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 85.71428571428571, "percent_statements_covered_display": "86", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [183], "excluded_lines": [], "start_line": 166, "executed_branches": [[182, 188]], "missing_branches": [[182, 183]]}, "InferenceSlicer.callback": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [206], "excluded_lines": [], "start_line": 205, "executed_branches": [], "missing_branches": []}, "InferenceSlicer.slice_wh": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 2, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [214, 215], "excluded_lines": [], "start_line": 213, "executed_branches": [], "missing_branches": []}, "InferenceSlicer.overlap_wh": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 2, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [223, 224], "excluded_lines": [], "start_line": 222, "executed_branches": [], "missing_branches": []}, "InferenceSlicer.iou_threshold": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [232], "excluded_lines": [], "start_line": 231, "executed_branches": [], "missing_branches": []}, "InferenceSlicer.overlap_metric": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [240], "excluded_lines": [], "start_line": 239, "executed_branches": [], "missing_branches": []}, "InferenceSlicer.overlap_filter": {"executed_lines": [248], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 247, "executed_branches": [], "missing_branches": []}, "InferenceSlicer.thread_workers": {"executed_lines": [256, 261], "summary": {"covered_lines": 2, "num_statements": 3, "percent_covered": 60.0, "percent_covered_display": "60", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 66.66666666666667, "percent_statements_covered_display": "67", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [257], "excluded_lines": [], "start_line": 255, "executed_branches": [[256, 261]], "missing_branches": [[256, 257]]}, "InferenceSlicer.compact_masks": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [269], "excluded_lines": [], "start_line": 268, "executed_branches": [], "missing_branches": []}, "InferenceSlicer.__call__": {"executed_lines": [289, 291, 297, 299, 300], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 271, "executed_branches": [], "missing_branches": []}, "InferenceSlicer._collect_detections": {"executed_lines": [307, 309, 310, 312, 313, 314, 316, 317, 326, 328, 329, 330, 331, 332, 333, 341, 342, 344, 345, 349, 350, 351, 352, 355, 357, 360], "summary": {"covered_lines": 26, "num_statements": 27, "percent_covered": 92.3076923076923, "percent_covered_display": "92", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 96.29629629629629, "percent_statements_covered_display": "96", "num_branches": 12, "num_partial_branches": 2, "covered_branches": 10, "missing_branches": 2, "percent_branches_covered": 83.33333333333333, "percent_branches_covered_display": "83"}, "missing_lines": [318], "excluded_lines": [], "start_line": 302, "executed_branches": [[317, 326], [328, 329], [328, 344], [329, 330], [329, 341], [331, 332], [341, 342], [341, 357], [349, 350], [349, 351]], "missing_branches": [[317, 318], [331, 341]]}, "InferenceSlicer._probe_remaining_offsets": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 13, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 13, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 6, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [368, 369, 371, 372, 373, 374, 375, 377, 378, 379, 381, 382, 384], "excluded_lines": [], "start_line": 362, "executed_branches": [], "missing_branches": [[371, 372], [371, 384], [377, 378], [377, 381], [381, 371], [381, 382]]}, "InferenceSlicer._run_sequential_inference": {"executed_lines": [391], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 386, "executed_branches": [], "missing_branches": []}, "InferenceSlicer._run_parallel_inference": {"executed_lines": [398, 399, 403], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 393, "executed_branches": [], "missing_branches": []}, "InferenceSlicer._warn_obb_sequential_fallback": {"executed_lines": [406, 407], "summary": {"covered_lines": 2, "num_statements": 7, "percent_covered": 27.272727272727273, "percent_covered_display": "27", "missing_lines": 5, "excluded_lines": 0, "percent_statements_covered": 28.571428571428573, "percent_statements_covered_display": "29", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 3, "percent_branches_covered": 25.0, "percent_branches_covered_display": "25"}, "missing_lines": [409, 410, 411, 413, 414], "excluded_lines": [], "start_line": 405, "executed_branches": [[406, 407]], "missing_branches": [[406, 409], [410, 411], [410, 413]]}, "InferenceSlicer._apply_overlap_filter": {"executed_lines": [424, 425, 426, 427, 431, 432], "summary": {"covered_lines": 6, "num_statements": 8, "percent_covered": 78.57142857142857, "percent_covered_display": "79", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 75.0, "percent_statements_covered_display": "75", "num_branches": 6, "num_partial_branches": 1, "covered_branches": 5, "missing_branches": 1, "percent_branches_covered": 83.33333333333333, "percent_branches_covered_display": "83"}, "missing_lines": [437, 441], "excluded_lines": [], "start_line": 423, "executed_branches": [[424, 425], [424, 426], [426, 427], [426, 431], [431, 432]], "missing_branches": [[431, 437]]}, "InferenceSlicer._run_callback": {"executed_lines": [455, 456, 458, 463, 464, 470, 473, 477, 478, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 497, 498, 503], "summary": {"covered_lines": 22, "num_statements": 22, "percent_covered": 96.66666666666667, "percent_covered_display": "97", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 8, "num_partial_branches": 1, "covered_branches": 7, "missing_branches": 1, "percent_branches_covered": 87.5, "percent_branches_covered_display": "88"}, "missing_lines": [], "excluded_lines": [], "start_line": 443, "executed_branches": [[458, 463], [458, 470], [477, 478], [477, 498], [480, 481], [487, 488], [487, 498]], "missing_branches": [[480, 498]]}, "InferenceSlicer._normalize_slice_wh": {"executed_lines": [509, 510, 514], "summary": {"covered_lines": 3, "num_statements": 10, "percent_covered": 27.77777777777778, "percent_covered_display": "28", "missing_lines": 7, "excluded_lines": 0, "percent_statements_covered": 30.0, "percent_statements_covered_display": "30", "num_branches": 8, "num_partial_branches": 2, "covered_branches": 2, "missing_branches": 6, "percent_branches_covered": 25.0, "percent_branches_covered_display": "25"}, "missing_lines": [511, 516, 517, 518, 519, 522, 524], "excluded_lines": [], "start_line": 506, "executed_branches": [[509, 510], [510, 514]], "missing_branches": [[509, 516], [510, 511], [516, 517], [516, 524], [518, 519], [518, 522]]}, "InferenceSlicer._normalize_overlap_wh": {"executed_lines": [534, 535, 540], "summary": {"covered_lines": 3, "num_statements": 10, "percent_covered": 27.77777777777778, "percent_covered_display": "28", "missing_lines": 7, "excluded_lines": 0, "percent_statements_covered": 30.0, "percent_statements_covered_display": "30", "num_branches": 8, "num_partial_branches": 2, "covered_branches": 2, "missing_branches": 6, "percent_branches_covered": 25.0, "percent_branches_covered_display": "25"}, "missing_lines": [536, 542, 543, 544, 545, 548, 550], "excluded_lines": [], "start_line": 531, "executed_branches": [[534, 535], [535, 540]], "missing_branches": [[534, 542], [535, 536], [542, 543], [542, 550], [544, 545], [544, 548]]}, "InferenceSlicer._generate_offset": {"executed_lines": [574, 575, 576, 578, 579, 581, 598, 603, 609, 610, 611, 613, 618], "summary": {"covered_lines": 13, "num_statements": 13, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 557, "executed_branches": [], "missing_branches": []}, "InferenceSlicer._generate_offset._compute_axis_starts": {"executed_lines": [586, 587, 589, 590, 592, 593, 594, 595, 596], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 93.33333333333333, "percent_covered_display": "93", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 1, "covered_branches": 5, "missing_branches": 1, "percent_branches_covered": 83.33333333333333, "percent_branches_covered_display": "83"}, "missing_lines": [], "excluded_lines": [], "start_line": 581, "executed_branches": [[586, 587], [586, 589], [589, 590], [589, 592], [594, 595]], "missing_branches": [[594, 596]]}, "InferenceSlicer._validate_overlap": {"executed_lines": [625, 626, 628, 634], "summary": {"covered_lines": 4, "num_statements": 6, "percent_covered": 60.0, "percent_covered_display": "60", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 66.66666666666667, "percent_statements_covered_display": "67", "num_branches": 4, "num_partial_branches": 2, "covered_branches": 2, "missing_branches": 2, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [629, 635], "excluded_lines": [], "start_line": 621, "executed_branches": [[628, 634], [634, -620]], "missing_branches": [[628, 629], [634, 635]]}, "": {"executed_lines": [1, 3, 4, 5, 6, 7, 8, 10, 11, 13, 14, 15, 16, 17, 18, 19, 20, 21, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 36, 37, 38, 39, 40, 41, 44, 85, 164, 166, 200, 201, 204, 205, 208, 209, 212, 213, 217, 218, 221, 222, 226, 227, 230, 231, 234, 235, 238, 239, 242, 243, 246, 247, 250, 251, 254, 255, 263, 264, 267, 268, 271, 302, 362, 386, 393, 405, 423, 443, 505, 506, 530, 531, 556, 557, 620, 621], "summary": {"covered_lines": 86, "num_statements": 86, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"_InferenceSlicerConfig": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 25, "executed_branches": [], "missing_branches": []}, "_InferenceSlicerState": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 37, "executed_branches": [], "missing_branches": []}, "InferenceSlicer": {"executed_lines": [177, 178, 180, 182, 188, 198, 202, 210, 219, 228, 236, 244, 248, 252, 256, 261, 265, 289, 291, 297, 299, 300, 307, 309, 310, 312, 313, 314, 316, 317, 326, 328, 329, 330, 331, 332, 333, 341, 342, 344, 345, 349, 350, 351, 352, 355, 357, 360, 391, 398, 399, 403, 406, 407, 424, 425, 426, 427, 431, 432, 455, 456, 458, 463, 464, 470, 473, 477, 478, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 497, 498, 503, 509, 510, 514, 534, 535, 540, 574, 575, 576, 578, 579, 581, 586, 587, 589, 590, 592, 593, 594, 595, 596, 598, 603, 609, 610, 611, 613, 618, 625, 626, 628, 634], "summary": {"covered_lines": 114, "num_statements": 161, "percent_covered": 66.07929515418502, "percent_covered_display": "66", "missing_lines": 47, "excluded_lines": 0, "percent_statements_covered": 70.80745341614907, "percent_statements_covered_display": "71", "num_branches": 66, "num_partial_branches": 14, "covered_branches": 36, "missing_branches": 30, "percent_branches_covered": 54.54545454545455, "percent_branches_covered_display": "55"}, "missing_lines": [183, 206, 214, 215, 223, 224, 232, 240, 257, 269, 318, 368, 369, 371, 372, 373, 374, 375, 377, 378, 379, 381, 382, 384, 409, 410, 411, 413, 414, 437, 441, 511, 516, 517, 518, 519, 522, 524, 536, 542, 543, 544, 545, 548, 550, 629, 635], "excluded_lines": [], "start_line": 85, "executed_branches": [[182, 188], [256, 261], [317, 326], [328, 329], [328, 344], [329, 330], [329, 341], [331, 332], [341, 342], [341, 357], [349, 350], [349, 351], [406, 407], [424, 425], [424, 426], [426, 427], [426, 431], [431, 432], [458, 463], [458, 470], [477, 478], [477, 498], [480, 481], [487, 488], [487, 498], [509, 510], [510, 514], [534, 535], [535, 540], [586, 587], [586, 589], [589, 590], [589, 592], [594, 595], [628, 634], [634, -620]], "missing_branches": [[182, 183], [256, 257], [317, 318], [331, 341], [371, 372], [371, 384], [377, 378], [377, 381], [381, 371], [381, 382], [406, 409], [410, 411], [410, 413], [431, 437], [480, 498], [509, 516], [510, 511], [516, 517], [516, 524], [518, 519], [518, 522], [534, 542], [535, 536], [542, 543], [542, 550], [544, 545], [544, 548], [594, 596], [628, 629], [634, 635]]}, "": {"executed_lines": [1, 3, 4, 5, 6, 7, 8, 10, 11, 13, 14, 15, 16, 17, 18, 19, 20, 21, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 36, 37, 38, 39, 40, 41, 44, 60, 61, 62, 65, 66, 71, 73, 79, 82, 85, 164, 166, 200, 201, 204, 205, 208, 209, 212, 213, 217, 218, 221, 222, 226, 227, 230, 231, 234, 235, 238, 239, 242, 243, 246, 247, 250, 251, 254, 255, 263, 264, 267, 268, 271, 302, 362, 386, 393, 405, 423, 443, 505, 506, 530, 531, 556, 557, 620, 621], "summary": {"covered_lines": 95, "num_statements": 96, "percent_covered": 98.07692307692308, "percent_covered_display": "98", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 98.95833333333333, "percent_statements_covered_display": "99", "num_branches": 8, "num_partial_branches": 1, "covered_branches": 7, "missing_branches": 1, "percent_branches_covered": 87.5, "percent_branches_covered_display": "88"}, "missing_lines": [67], "excluded_lines": [], "start_line": 1, "executed_branches": [[61, 62], [61, 65], [65, 66], [65, 82], [66, 71], [71, 73], [71, 79]], "missing_branches": [[66, 67]]}}}, "src\\supervision\\detection\\tools\\json_sink.py": {"executed_lines": [1, 3, 4, 5, 6, 8, 10, 13, 51, 58, 59, 60, 62, 63, 64, 66, 72, 74, 78, 79, 82, 84, 85, 101, 102, 103, 104, 105, 109, 113, 114, 115, 119, 121, 122, 141, 142, 143, 144, 145, 147, 148, 169, 170, 171, 172, 188, 189, 190, 192, 193, 194, 195, 197, 198, 200, 214, 215], "summary": {"covered_lines": 58, "num_statements": 59, "percent_covered": 95.06172839506173, "percent_covered_display": "95", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 98.30508474576271, "percent_statements_covered_display": "98", "num_branches": 22, "num_partial_branches": 3, "covered_branches": 19, "missing_branches": 3, "percent_branches_covered": 86.36363636363636, "percent_branches_covered_display": "86"}, "missing_lines": [80], "excluded_lines": [], "executed_branches": [[79, 82], [101, 102], [101, 103], [103, 104], [103, 105], [113, 114], [141, 142], [141, 143], [143, 144], [143, 145], [171, 172], [171, 198], [188, 189], [189, 190], [189, 192], [192, 193], [192, 197], [193, 194], [193, 197]], "missing_branches": [[79, 80], [113, -109], [188, 192]], "functions": {"JSONSink.__init__": {"executed_lines": [58, 59, 60], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 51, "executed_branches": [], "missing_branches": []}, "JSONSink.__enter__": {"executed_lines": [63, 64], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 62, "executed_branches": [], "missing_branches": []}, "JSONSink.__exit__": {"executed_lines": [72], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 66, "executed_branches": [], "missing_branches": []}, "JSONSink.open": {"executed_lines": [78, 79, 82], "summary": {"covered_lines": 3, "num_statements": 4, "percent_covered": 66.66666666666667, "percent_covered_display": "67", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 75.0, "percent_statements_covered_display": "75", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [80], "excluded_lines": [], "start_line": 74, "executed_branches": [[79, 82]], "missing_branches": [[79, 80]]}, "JSONSink._json_default": {"executed_lines": [101, 102, 103, 104, 105], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 85, "executed_branches": [[101, 102], [101, 103], [103, 104], [103, 105]], "missing_branches": []}, "JSONSink.write_and_close": {"executed_lines": [113, 114, 115, 119], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 83.33333333333333, "percent_covered_display": "83", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [], "excluded_lines": [], "start_line": 109, "executed_branches": [[113, 114]], "missing_branches": [[113, -109]]}, "JSONSink._slice_value": {"executed_lines": [141, 142, 143, 144, 145], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 122, "executed_branches": [[141, 142], [141, 143], [143, 144], [143, 145]], "missing_branches": []}, "JSONSink.parse_detection_data": {"executed_lines": [169, 170, 171, 172, 188, 189, 190, 192, 193, 194, 195, 197, 198], "summary": {"covered_lines": 13, "num_statements": 13, "percent_covered": 95.65217391304348, "percent_covered_display": "96", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 10, "num_partial_branches": 1, "covered_branches": 9, "missing_branches": 1, "percent_branches_covered": 90.0, "percent_branches_covered_display": "90"}, "missing_lines": [], "excluded_lines": [], "start_line": 148, "executed_branches": [[171, 172], [171, 198], [188, 189], [189, 190], [189, 192], [192, 193], [192, 197], [193, 194], [193, 197]], "missing_branches": [[188, 192]]}, "JSONSink.append": {"executed_lines": [214, 215], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 200, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 5, 6, 8, 10, 13, 51, 62, 66, 74, 84, 85, 109, 121, 122, 147, 148, 200], "summary": {"covered_lines": 20, "num_statements": 20, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"JSONSink": {"executed_lines": [58, 59, 60, 63, 64, 72, 78, 79, 82, 101, 102, 103, 104, 105, 113, 114, 115, 119, 141, 142, 143, 144, 145, 169, 170, 171, 172, 188, 189, 190, 192, 193, 194, 195, 197, 198, 214, 215], "summary": {"covered_lines": 38, "num_statements": 39, "percent_covered": 93.44262295081967, "percent_covered_display": "93", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 97.43589743589743, "percent_statements_covered_display": "97", "num_branches": 22, "num_partial_branches": 3, "covered_branches": 19, "missing_branches": 3, "percent_branches_covered": 86.36363636363636, "percent_branches_covered_display": "86"}, "missing_lines": [80], "excluded_lines": [], "start_line": 13, "executed_branches": [[79, 82], [101, 102], [101, 103], [103, 104], [103, 105], [113, 114], [141, 142], [141, 143], [143, 144], [143, 145], [171, 172], [171, 198], [188, 189], [189, 190], [189, 192], [192, 193], [192, 197], [193, 194], [193, 197]], "missing_branches": [[79, 80], [113, -109], [188, 192]]}, "": {"executed_lines": [1, 3, 4, 5, 6, 8, 10, 13, 51, 62, 66, 74, 84, 85, 109, 121, 122, 147, 148, 200], "summary": {"covered_lines": 20, "num_statements": 20, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "src\\supervision\\detection\\tools\\polygon_zone.py": {"executed_lines": [1, 3, 4, 5, 7, 8, 9, 11, 12, 13, 14, 15, 16, 18, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 33, 71, 76, 77, 78, 79, 81, 83, 84, 88, 105, 106, 107, 109, 116, 117, 118, 119, 120, 121, 122, 123, 126, 146, 158, 159, 170, 171, 172, 174, 175, 178, 179, 180, 182, 183, 186, 187, 190, 191, 194, 195, 198, 199, 202, 203, 206, 207, 210, 211, 214, 215, 218, 219, 220, 222, 223, 226, 227, 228, 230, 231, 234, 235, 238, 239, 242, 256, 257, 264, 270, 277, 290], "summary": {"covered_lines": 97, "num_statements": 112, "percent_covered": 86.66666666666667, "percent_covered_display": "87", "missing_lines": 15, "excluded_lines": 0, "percent_statements_covered": 86.60714285714286, "percent_statements_covered_display": "87", "num_branches": 8, "num_partial_branches": 1, "covered_branches": 7, "missing_branches": 1, "percent_branches_covered": 87.5, "percent_branches_covered_display": "88"}, "missing_lines": [176, 184, 188, 192, 196, 200, 204, 208, 212, 216, 224, 232, 236, 240, 278], "excluded_lines": [], "executed_branches": [[78, 79], [78, 81], [105, 106], [105, 109], [256, 257], [256, 264], [277, 290]], "missing_branches": [[277, 278]], "functions": {"PolygonZone.__init__": {"executed_lines": [76, 77, 78, 79, 81, 83, 84], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 71, "executed_branches": [[78, 79], [78, 81]], "missing_branches": []}, "PolygonZone.trigger": {"executed_lines": [105, 106, 107, 109, 116, 117, 118, 119, 120, 121, 122, 123], "summary": {"covered_lines": 12, "num_statements": 12, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 88, "executed_branches": [[105, 106], [105, 109]], "missing_branches": []}, "PolygonZoneAnnotator.__init__": {"executed_lines": [158, 159], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 146, "executed_branches": [], "missing_branches": []}, "PolygonZoneAnnotator.color": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [176], "excluded_lines": [], "start_line": 175, "executed_branches": [], "missing_branches": []}, "PolygonZoneAnnotator.thickness": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [184], "excluded_lines": [], "start_line": 183, "executed_branches": [], "missing_branches": []}, "PolygonZoneAnnotator.text_color": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [192], "excluded_lines": [], "start_line": 191, "executed_branches": [], "missing_branches": []}, "PolygonZoneAnnotator.text_scale": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [200], "excluded_lines": [], "start_line": 199, "executed_branches": [], "missing_branches": []}, "PolygonZoneAnnotator.text_thickness": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [208], "excluded_lines": [], "start_line": 207, "executed_branches": [], "missing_branches": []}, "PolygonZoneAnnotator.text_padding": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [216], "excluded_lines": [], "start_line": 215, "executed_branches": [], "missing_branches": []}, "PolygonZoneAnnotator.display_in_zone_count": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [224], "excluded_lines": [], "start_line": 223, "executed_branches": [], "missing_branches": []}, "PolygonZoneAnnotator.opacity": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [232], "excluded_lines": [], "start_line": 231, "executed_branches": [], "missing_branches": []}, "PolygonZoneAnnotator.font": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [236], "excluded_lines": [], "start_line": 235, "executed_branches": [], "missing_branches": []}, "PolygonZoneAnnotator.center": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [240], "excluded_lines": [], "start_line": 239, "executed_branches": [], "missing_branches": []}, "PolygonZoneAnnotator.annotate": {"executed_lines": [256, 257, 264, 270, 277, 290], "summary": {"covered_lines": 6, "num_statements": 7, "percent_covered": 81.81818181818181, "percent_covered_display": "82", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 85.71428571428571, "percent_statements_covered_display": "86", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [278], "excluded_lines": [], "start_line": 242, "executed_branches": [[256, 257], [256, 264], [277, 290]], "missing_branches": [[277, 278]]}, "": {"executed_lines": [1, 3, 4, 5, 7, 8, 9, 11, 12, 13, 14, 15, 16, 18, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 33, 71, 88, 126, 146, 170, 171, 174, 175, 178, 179, 182, 183, 186, 187, 190, 191, 194, 195, 198, 199, 202, 203, 206, 207, 210, 211, 214, 215, 218, 219, 222, 223, 226, 227, 230, 231, 234, 235, 238, 239, 242], "summary": {"covered_lines": 66, "num_statements": 66, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"_PolygonZoneAnnotatorConfig": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 22, "executed_branches": [], "missing_branches": []}, "PolygonZone": {"executed_lines": [76, 77, 78, 79, 81, 83, 84, 105, 106, 107, 109, 116, 117, 118, 119, 120, 121, 122, 123], "summary": {"covered_lines": 19, "num_statements": 19, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 33, "executed_branches": [[78, 79], [78, 81], [105, 106], [105, 109]], "missing_branches": []}, "PolygonZoneAnnotator": {"executed_lines": [158, 159, 172, 180, 220, 228, 256, 257, 264, 270, 277, 290], "summary": {"covered_lines": 12, "num_statements": 27, "percent_covered": 48.38709677419355, "percent_covered_display": "48", "missing_lines": 15, "excluded_lines": 0, "percent_statements_covered": 44.44444444444444, "percent_statements_covered_display": "44", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [176, 184, 188, 192, 196, 200, 204, 208, 212, 216, 224, 232, 236, 240, 278], "excluded_lines": [], "start_line": 126, "executed_branches": [[256, 257], [256, 264], [277, 290]], "missing_branches": [[277, 278]]}, "": {"executed_lines": [1, 3, 4, 5, 7, 8, 9, 11, 12, 13, 14, 15, 16, 18, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 33, 71, 88, 126, 146, 170, 171, 174, 175, 178, 179, 182, 183, 186, 187, 190, 191, 194, 195, 198, 199, 202, 203, 206, 207, 210, 211, 214, 215, 218, 219, 222, 223, 226, 227, 230, 231, 234, 235, 238, 239, 242], "summary": {"covered_lines": 66, "num_statements": 66, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "src\\supervision\\detection\\tools\\smoother.py": {"executed_lines": [1, 3, 4, 5, 6, 8, 10, 11, 14, 90, 96, 100, 108, 109, 115, 117, 118, 119, 121, 123, 124, 125, 127, 128, 131, 133, 148, 149, 152, 153, 156, 157, 161, 162, 164, 166, 167, 168, 169, 170, 171, 176, 177, 178, 180, 181, 184], "summary": {"covered_lines": 47, "num_statements": 51, "percent_covered": 88.31168831168831, "percent_covered_display": "88", "missing_lines": 4, "excluded_lines": 0, "percent_statements_covered": 92.15686274509804, "percent_statements_covered_display": "92", "num_branches": 26, "num_partial_branches": 5, "covered_branches": 21, "missing_branches": 5, "percent_branches_covered": 80.76923076923077, "percent_branches_covered_display": "81"}, "missing_lines": [129, 150, 154, 182], "excluded_lines": [], "executed_branches": [[108, 109], [108, 117], [117, 118], [117, 123], [123, 124], [123, 127], [124, 123], [124, 125], [127, 128], [127, 131], [128, 127], [149, 152], [153, 156], [168, 169], [168, 176], [170, 171], [176, 177], [176, 180], [177, 178], [177, 180], [181, 184]], "missing_branches": [[128, 129], [149, 150], [153, 154], [170, 168], [181, 182]], "functions": {"DetectionsSmoother.__init__": {"executed_lines": [96], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 90, "executed_branches": [], "missing_branches": []}, "DetectionsSmoother.update_with_detections": {"executed_lines": [108, 109, 115, 117, 118, 119, 121, 123, 124, 125, 127, 128, 131], "summary": {"covered_lines": 13, "num_statements": 14, "percent_covered": 92.3076923076923, "percent_covered_display": "92", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 92.85714285714286, "percent_statements_covered_display": "93", "num_branches": 12, "num_partial_branches": 1, "covered_branches": 11, "missing_branches": 1, "percent_branches_covered": 91.66666666666667, "percent_branches_covered_display": "92"}, "missing_lines": [129], "excluded_lines": [], "start_line": 100, "executed_branches": [[108, 109], [108, 117], [117, 118], [117, 123], [123, 124], [123, 127], [124, 123], [124, 125], [127, 128], [127, 131], [128, 127]], "missing_branches": [[128, 129]]}, "DetectionsSmoother.get_track": {"executed_lines": [148, 149, 152, 153, 156, 157, 161, 162, 164], "summary": {"covered_lines": 9, "num_statements": 11, "percent_covered": 73.33333333333333, "percent_covered_display": "73", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 81.81818181818181, "percent_statements_covered_display": "82", "num_branches": 4, "num_partial_branches": 2, "covered_branches": 2, "missing_branches": 2, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [150, 154], "excluded_lines": [], "start_line": 133, "executed_branches": [[149, 152], [153, 156]], "missing_branches": [[149, 150], [153, 154]]}, "DetectionsSmoother.get_smoothed_detections": {"executed_lines": [167, 168, 169, 170, 171, 176, 177, 178, 180, 181, 184], "summary": {"covered_lines": 11, "num_statements": 12, "percent_covered": 86.36363636363636, "percent_covered_display": "86", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 91.66666666666667, "percent_statements_covered_display": "92", "num_branches": 10, "num_partial_branches": 2, "covered_branches": 8, "missing_branches": 2, "percent_branches_covered": 80.0, "percent_branches_covered_display": "80"}, "missing_lines": [182], "excluded_lines": [], "start_line": 166, "executed_branches": [[168, 169], [168, 176], [170, 171], [176, 177], [176, 180], [177, 178], [177, 180], [181, 184]], "missing_branches": [[170, 168], [181, 182]]}, "": {"executed_lines": [1, 3, 4, 5, 6, 8, 10, 11, 14, 90, 100, 133, 166], "summary": {"covered_lines": 13, "num_statements": 13, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"DetectionsSmoother": {"executed_lines": [96, 108, 109, 115, 117, 118, 119, 121, 123, 124, 125, 127, 128, 131, 148, 149, 152, 153, 156, 157, 161, 162, 164, 167, 168, 169, 170, 171, 176, 177, 178, 180, 181, 184], "summary": {"covered_lines": 34, "num_statements": 38, "percent_covered": 85.9375, "percent_covered_display": "86", "missing_lines": 4, "excluded_lines": 0, "percent_statements_covered": 89.47368421052632, "percent_statements_covered_display": "89", "num_branches": 26, "num_partial_branches": 5, "covered_branches": 21, "missing_branches": 5, "percent_branches_covered": 80.76923076923077, "percent_branches_covered_display": "81"}, "missing_lines": [129, 150, 154, 182], "excluded_lines": [], "start_line": 14, "executed_branches": [[108, 109], [108, 117], [117, 118], [117, 123], [123, 124], [123, 127], [124, 123], [124, 125], [127, 128], [127, 131], [128, 127], [149, 152], [153, 156], [168, 169], [168, 176], [170, 171], [176, 177], [176, 180], [177, 178], [177, 180], [181, 184]], "missing_branches": [[128, 129], [149, 150], [153, 154], [170, 168], [181, 182]]}, "": {"executed_lines": [1, 3, 4, 5, 6, 8, 10, 11, 14, 90, 100, 133, 166], "summary": {"covered_lines": 13, "num_statements": 13, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "src\\supervision\\detection\\tools\\transformers.py": {"executed_lines": [1, 3, 4, 6, 7, 8, 10, 11, 14, 43, 82, 112, 148, 182, 207, 224], "summary": {"covered_lines": 16, "num_statements": 58, "percent_covered": 23.529411764705884, "percent_covered_display": "24", "missing_lines": 42, "excluded_lines": 0, "percent_statements_covered": 27.586206896551722, "percent_statements_covered_display": "28", "num_branches": 10, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 10, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [32, 33, 35, 62, 63, 67, 68, 69, 70, 71, 73, 102, 103, 104, 107, 130, 131, 132, 133, 134, 137, 139, 165, 166, 167, 168, 169, 172, 174, 199, 200, 203, 204, 219, 220, 221, 243, 244, 246, 247, 248, 250], "excluded_lines": [], "executed_branches": [], "missing_branches": [[62, 63], [62, 67], [68, 69], [68, 70], [102, 103], [102, 107], [243, 244], [243, 246], [246, 247], [246, 250]], "functions": {"process_transformers_detection_result": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 3, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [32, 33, 35], "excluded_lines": [], "start_line": 14, "executed_branches": [], "missing_branches": []}, "process_transformers_v4_segmentation_result": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 8, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 8, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 4, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [62, 63, 67, 68, 69, 70, 71, 73], "excluded_lines": [], "start_line": 43, "executed_branches": [], "missing_branches": [[62, 63], [62, 67], [68, 69], [68, 70]]}, "process_transformers_v5_segmentation_result": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 4, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 4, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 2, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [102, 103, 104, 107], "excluded_lines": [], "start_line": 82, "executed_branches": [], "missing_branches": [[102, 103], [102, 107]]}, "process_transformers_v5_semantic_or_instance_segmentation_result": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 7, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 7, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [130, 131, 132, 133, 134, 137, 139], "excluded_lines": [], "start_line": 112, "executed_branches": [], "missing_branches": []}, "process_transformers_v4_panoptic_segmentation_result": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 7, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 7, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [165, 166, 167, 168, 169, 172, 174], "excluded_lines": [], "start_line": 148, "executed_branches": [], "missing_branches": []}, "process_transformers_v5_panoptic_segmentation_result": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 4, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 4, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [199, 200, 203, 204], "excluded_lines": [], "start_line": 182, "executed_branches": [], "missing_branches": []}, "png_string_to_segmentation_array": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 3, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [219, 220, 221], "excluded_lines": [], "start_line": 207, "executed_branches": [], "missing_branches": []}, "append_class_names_to_data": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 6, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 6, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 4, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [243, 244, 246, 247, 248, 250], "excluded_lines": [], "start_line": 224, "executed_branches": [], "missing_branches": [[243, 244], [243, 246], [246, 247], [246, 250]]}, "": {"executed_lines": [1, 3, 4, 6, 7, 8, 10, 11, 14, 43, 82, 112, 148, 182, 207, 224], "summary": {"covered_lines": 16, "num_statements": 16, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 3, 4, 6, 7, 8, 10, 11, 14, 43, 82, 112, 148, 182, 207, 224], "summary": {"covered_lines": 16, "num_statements": 58, "percent_covered": 23.529411764705884, "percent_covered_display": "24", "missing_lines": 42, "excluded_lines": 0, "percent_statements_covered": 27.586206896551722, "percent_statements_covered_display": "28", "num_branches": 10, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 10, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [32, 33, 35, 62, 63, 67, 68, 69, 70, 71, 73, 102, 103, 104, 107, 130, 131, 132, 133, 134, 137, 139, 165, 166, 167, 168, 169, 172, 174, 199, 200, 203, 204, 219, 220, 221, 243, 244, 246, 247, 248, 250], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": [[62, 63], [62, 67], [68, 69], [68, 70], [102, 103], [102, 107], [243, 244], [243, 246], [246, 247], [246, 250]]}}}, "src\\supervision\\detection\\utils\\__init__.py": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "src\\supervision\\detection\\utils\\boxes.py": {"executed_lines": [1, 3, 4, 5, 7, 10, 45, 46, 47, 48, 49, 52, 99, 105, 155, 156, 158, 159, 161, 164, 192, 195, 241, 244, 263, 264, 265, 266, 267, 268, 269, 272, 302, 303, 305, 306, 307, 308, 309, 312, 342, 343, 344, 347], "summary": {"covered_lines": 44, "num_statements": 75, "percent_covered": 54.02298850574713, "percent_covered_display": "54", "missing_lines": 31, "excluded_lines": 0, "percent_statements_covered": 58.666666666666664, "percent_statements_covered_display": "59", "num_branches": 12, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 9, "percent_branches_covered": 25.0, "percent_branches_covered_display": "25"}, "missing_lines": [89, 90, 92, 93, 94, 96, 304, 375, 376, 378, 379, 381, 382, 383, 384, 386, 389, 392, 393, 396, 397, 398, 405, 406, 408, 409, 410, 412, 414, 415, 417], "excluded_lines": [], "executed_branches": [[264, 265], [264, 266], [303, 305]], "missing_branches": [[89, 90], [89, 92], [303, 304], [375, 376], [375, 378], [379, 381], [379, 417], [383, 384], [383, 386]], "functions": {"clip_boxes": {"executed_lines": [45, 46, 47, 48, 49], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 10, "executed_branches": [], "missing_branches": []}, "pad_boxes": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 6, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 6, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 2, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [89, 90, 92, 93, 94, 96], "excluded_lines": [], "start_line": 52, "executed_branches": [], "missing_branches": [[89, 90], [89, 92]]}, "denormalize_boxes": {"executed_lines": [155, 156, 158, 159, 161], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 105, "executed_branches": [], "missing_branches": []}, "move_boxes": {"executed_lines": [192], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 164, "executed_branches": [], "missing_branches": []}, "move_oriented_boxes": {"executed_lines": [241], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 195, "executed_branches": [], "missing_branches": []}, "obb_polygon_area": {"executed_lines": [263, 264, 265, 266, 267, 268, 269], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 244, "executed_branches": [[264, 265], [264, 266]], "missing_branches": []}, "xyxyxyxy_to_xyxy": {"executed_lines": [302, 303, 305, 306, 307, 308, 309], "summary": {"covered_lines": 7, "num_statements": 8, "percent_covered": 80.0, "percent_covered_display": "80", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 87.5, "percent_statements_covered_display": "88", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [304], "excluded_lines": [], "start_line": 272, "executed_branches": [[303, 305]], "missing_branches": [[303, 304]]}, "scale_boxes": {"executed_lines": [342, 343, 344], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 312, "executed_branches": [], "missing_branches": []}, "spread_out_boxes": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 24, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 24, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 6, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [375, 376, 378, 379, 381, 382, 383, 384, 386, 389, 392, 393, 396, 397, 398, 405, 406, 408, 409, 410, 412, 414, 415, 417], "excluded_lines": [], "start_line": 347, "executed_branches": [], "missing_branches": [[375, 376], [375, 378], [379, 381], [379, 417], [383, 384], [383, 386]]}, "": {"executed_lines": [1, 3, 4, 5, 7, 10, 52, 99, 105, 164, 195, 244, 272, 312, 347], "summary": {"covered_lines": 15, "num_statements": 15, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 3, 4, 5, 7, 10, 45, 46, 47, 48, 49, 52, 99, 105, 155, 156, 158, 159, 161, 164, 192, 195, 241, 244, 263, 264, 265, 266, 267, 268, 269, 272, 302, 303, 305, 306, 307, 308, 309, 312, 342, 343, 344, 347], "summary": {"covered_lines": 44, "num_statements": 75, "percent_covered": 54.02298850574713, "percent_covered_display": "54", "missing_lines": 31, "excluded_lines": 0, "percent_statements_covered": 58.666666666666664, "percent_statements_covered_display": "59", "num_branches": 12, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 9, "percent_branches_covered": 25.0, "percent_branches_covered_display": "25"}, "missing_lines": [89, 90, 92, 93, 94, 96, 304, 375, 376, 378, 379, 381, 382, 383, 384, 386, 389, 392, 393, 396, 397, 398, 405, 406, 408, 409, 410, 412, 414, 415, 417], "excluded_lines": [], "start_line": 1, "executed_branches": [[264, 265], [264, 266], [303, 305]], "missing_branches": [[89, 90], [89, 92], [303, 304], [375, 376], [375, 378], [379, 381], [379, 417], [383, 384], [383, 386]]}}}, "src\\supervision\\detection\\utils\\converters.py": {"executed_lines": [1, 3, 5, 6, 7, 9, 12, 25, 26, 27, 28, 31, 46, 47, 48, 49, 52, 79, 80, 81, 82, 85, 113, 114, 115, 116, 119, 147, 148, 149, 150, 151, 152, 155, 183, 184, 186, 187, 188, 189, 190, 192, 198, 199, 202, 227, 228, 229, 234, 235, 237, 238, 239, 240, 242, 244, 245, 248, 291, 292, 293, 295, 296, 297, 298, 299, 301, 302, 304, 307, 322, 325, 332, 360, 361, 362, 363, 364, 365, 366, 367, 368, 371, 372, 373, 374, 375, 376, 377, 378, 379, 382, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 418, 439, 440, 441, 442, 445, 465, 466, 467, 468, 471, 494, 497, 523, 524, 525, 527, 528, 529, 530, 532, 533, 535, 538, 565, 566, 567, 568, 569, 570, 575, 627, 628, 629, 630, 633, 634, 636, 638, 640, 641, 646, 649, 715, 716, 718, 719, 720, 721, 724, 736, 737, 738], "summary": {"covered_lines": 156, "num_statements": 156, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 42, "num_partial_branches": 0, "covered_branches": 42, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [[183, 184], [183, 186], [228, 229], [228, 234], [295, 296], [295, 304], [301, 295], [301, 302], [362, 363], [362, 379], [366, 367], [366, 378], [367, 368], [367, 371], [376, 366], [376, 377], [406, 407], [406, 415], [408, 406], [408, 409], [412, 413], [412, 414], [440, 441], [440, 442], [466, 467], [466, 468], [524, 525], [524, 527], [532, 533], [532, 535], [568, 569], [568, 570], [627, 628], [627, 629], [629, 630], [629, 633], [633, 634], [633, 636], [640, 641], [640, 646], [719, 720], [719, 721]], "missing_branches": [], "functions": {"xyxy_to_polygons": {"executed_lines": [25, 26, 27, 28], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 12, "executed_branches": [], "missing_branches": []}, "polygon_to_mask": {"executed_lines": [46, 47, 48, 49], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 31, "executed_branches": [], "missing_branches": []}, "xywh_to_xyxy": {"executed_lines": [79, 80, 81, 82], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 52, "executed_branches": [], "missing_branches": []}, "xyxy_to_xywh": {"executed_lines": [113, 114, 115, 116], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 85, "executed_branches": [], "missing_branches": []}, "xcycwh_to_xyxy": {"executed_lines": [147, 148, 149, 150, 151, 152], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 119, "executed_branches": [], "missing_branches": []}, "xyxy_to_xcycarh": {"executed_lines": [183, 184, 186, 187, 188, 189, 190, 192, 198, 199], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 155, "executed_branches": [[183, 184], [183, 186]], "missing_branches": []}, "mask_to_xyxy": {"executed_lines": [227, 228, 229, 234, 235, 237, 238, 239, 240, 242, 244, 245], "summary": {"covered_lines": 12, "num_statements": 12, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 202, "executed_branches": [[228, 229], [228, 234]], "missing_branches": []}, "xyxy_to_mask": {"executed_lines": [291, 292, 293, 295, 296, 297, 298, 299, 301, 302, 304], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 248, "executed_branches": [[295, 296], [295, 304], [301, 295], [301, 302]], "missing_branches": []}, "mask_to_polygons": {"executed_lines": [322, 325], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 307, "executed_branches": [], "missing_branches": []}, "_base48_decode": {"executed_lines": [360, 361, 362, 363, 364, 365, 366, 367, 368, 371, 372, 373, 374, 375, 376, 377, 378, 379], "summary": {"covered_lines": 18, "num_statements": 18, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 8, "num_partial_branches": 0, "covered_branches": 8, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 332, "executed_branches": [[362, 363], [362, 379], [366, 367], [366, 378], [367, 368], [367, 371], [376, 366], [376, 377]], "missing_branches": []}, "_base48_encode": {"executed_lines": [405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 6, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 382, "executed_branches": [[406, 407], [406, 415], [408, 406], [408, 409], [412, 413], [412, 414]], "missing_branches": []}, "_delta_decode": {"executed_lines": [439, 440, 441, 442], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 418, "executed_branches": [[440, 441], [440, 442]], "missing_branches": []}, "_delta_encode": {"executed_lines": [465, 466, 467, 468], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 445, "executed_branches": [[466, 467], [466, 468]], "missing_branches": []}, "is_compressed_rle": {"executed_lines": [494], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 471, "executed_branches": [], "missing_branches": []}, "_mask_to_rle_counts": {"executed_lines": [523, 524, 525, 527, 528, 529, 530, 532, 533, 535], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 497, "executed_branches": [[524, 525], [524, 527], [532, 533], [532, 535]], "missing_branches": []}, "_rle_counts_to_mask": {"executed_lines": [565, 566, 567, 568, 569, 570], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 538, "executed_branches": [[568, 569], [568, 570]], "missing_branches": []}, "rle_to_mask": {"executed_lines": [627, 628, 629, 630, 633, 634, 636, 638, 640, 641, 646], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 8, "num_partial_branches": 0, "covered_branches": 8, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 575, "executed_branches": [[627, 628], [627, 629], [629, 630], [629, 633], [633, 634], [633, 636], [640, 641], [640, 646]], "missing_branches": []}, "mask_to_rle": {"executed_lines": [715, 716, 718, 719, 720, 721], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 649, "executed_branches": [[719, 720], [719, 721]], "missing_branches": []}, "polygon_to_xyxy": {"executed_lines": [736, 737, 738], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 724, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 5, 6, 7, 9, 12, 31, 52, 85, 119, 155, 202, 248, 307, 332, 382, 418, 445, 471, 497, 538, 575, 649, 724], "summary": {"covered_lines": 25, "num_statements": 25, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 3, 5, 6, 7, 9, 12, 25, 26, 27, 28, 31, 46, 47, 48, 49, 52, 79, 80, 81, 82, 85, 113, 114, 115, 116, 119, 147, 148, 149, 150, 151, 152, 155, 183, 184, 186, 187, 188, 189, 190, 192, 198, 199, 202, 227, 228, 229, 234, 235, 237, 238, 239, 240, 242, 244, 245, 248, 291, 292, 293, 295, 296, 297, 298, 299, 301, 302, 304, 307, 322, 325, 332, 360, 361, 362, 363, 364, 365, 366, 367, 368, 371, 372, 373, 374, 375, 376, 377, 378, 379, 382, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 418, 439, 440, 441, 442, 445, 465, 466, 467, 468, 471, 494, 497, 523, 524, 525, 527, 528, 529, 530, 532, 533, 535, 538, 565, 566, 567, 568, 569, 570, 575, 627, 628, 629, 630, 633, 634, 636, 638, 640, 641, 646, 649, 715, 716, 718, 719, 720, 721, 724, 736, 737, 738], "summary": {"covered_lines": 156, "num_statements": 156, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 42, "num_partial_branches": 0, "covered_branches": 42, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [[183, 184], [183, 186], [228, 229], [228, 234], [295, 296], [295, 304], [301, 295], [301, 302], [362, 363], [362, 379], [366, 367], [366, 378], [367, 368], [367, 371], [376, 366], [376, 377], [406, 407], [406, 415], [408, 406], [408, 409], [412, 413], [412, 414], [440, 441], [440, 442], [466, 467], [466, 468], [524, 525], [524, 527], [532, 533], [532, 535], [568, 569], [568, 570], [627, 628], [627, 629], [629, 630], [629, 633], [633, 634], [633, 636], [640, 641], [640, 646], [719, 720], [719, 721]], "missing_branches": []}}}, "src\\supervision\\detection\\utils\\internal.py": {"executed_lines": [1, 3, 4, 5, 7, 8, 9, 11, 12, 13, 15, 18, 19, 20, 54, 59, 60, 61, 62, 63, 64, 65, 71, 72, 73, 78, 81, 114, 115, 124, 125, 126, 127, 128, 129, 131, 132, 134, 135, 136, 137, 138, 139, 140, 141, 142, 144, 146, 147, 148, 152, 156, 158, 159, 160, 161, 162, 163, 164, 165, 167, 170, 173, 178, 181, 184, 187, 189, 199, 212, 217, 227, 238, 241, 242, 243, 245, 248, 251, 252, 253, 254, 259, 263, 264, 266, 267, 268, 269, 270, 271, 280, 302, 303, 305, 306, 308, 313, 316, 336, 337, 339, 340, 341, 343, 344, 345, 346, 347, 348, 350, 351, 352, 353, 357, 359, 364, 365, 367, 370, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 399, 400, 401, 407, 410, 422, 428, 429], "summary": {"covered_lines": 140, "num_statements": 162, "percent_covered": 85.59322033898304, "percent_covered_display": "86", "missing_lines": 22, "excluded_lines": 0, "percent_statements_covered": 86.41975308641975, "percent_statements_covered_display": "86", "num_branches": 74, "num_partial_branches": 6, "covered_branches": 62, "missing_branches": 12, "percent_branches_covered": 83.78378378378379, "percent_branches_covered_display": "84"}, "missing_lines": [22, 23, 25, 27, 28, 32, 37, 38, 40, 41, 42, 43, 44, 46, 47, 49, 51, 66, 272, 274, 403, 405], "excluded_lines": [], "executed_branches": [[19, 20], [60, 61], [60, 62], [65, 71], [114, 115], [114, 124], [134, 135], [134, 167], [146, 147], [146, 158], [147, 148], [147, 156], [162, 163], [162, 164], [164, 134], [164, 165], [242, 243], [242, 245], [251, -248], [251, 252], [253, 251], [253, 254], [263, 264], [263, 266], [266, 267], [268, 269], [268, 270], [270, 271], [302, 303], [302, 305], [336, 337], [336, 339], [340, 341], [340, 343], [344, 345], [344, 367], [345, 344], [345, 346], [346, 347], [346, 350], [351, 352], [351, 357], [352, 345], [352, 353], [357, 359], [357, 364], [364, 345], [364, 365], [385, 386], [385, 407], [386, 387], [386, 388], [388, 389], [389, 390], [389, 391], [391, 392], [391, 393], [393, 394], [393, 400], [394, 395], [394, 399], [400, 401]], "missing_branches": [[19, 22], [27, 28], [27, 37], [42, 43], [42, 51], [46, 47], [46, 49], [65, 66], [266, 274], [270, 272], [388, 405], [400, 403]], "functions": {"extract_ultralytics_masks": {"executed_lines": [19, 20], "summary": {"covered_lines": 2, "num_statements": 19, "percent_covered": 11.11111111111111, "percent_covered_display": "11", "missing_lines": 17, "excluded_lines": 0, "percent_statements_covered": 10.526315789473685, "percent_statements_covered_display": "11", "num_branches": 8, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 7, "percent_branches_covered": 12.5, "percent_branches_covered_display": "12"}, "missing_lines": [22, 23, 25, 27, 28, 32, 37, 38, 40, 41, 42, 43, 44, 46, 47, 49, 51], "excluded_lines": [], "start_line": 18, "executed_branches": [[19, 20]], "missing_branches": [[19, 22], [27, 28], [27, 37], [42, 43], [42, 51], [46, 47], [46, 49]]}, "_decode_rle_mask": {"executed_lines": [59, 60, 61, 62, 63, 64, 65, 71, 72, 73, 78], "summary": {"covered_lines": 11, "num_statements": 12, "percent_covered": 87.5, "percent_covered_display": "88", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 91.66666666666667, "percent_statements_covered_display": "92", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [66], "excluded_lines": [], "start_line": 54, "executed_branches": [[60, 61], [60, 62], [65, 71]], "missing_branches": [[65, 66]]}, "process_roboflow_result": {"executed_lines": [114, 115, 124, 125, 126, 127, 128, 129, 131, 132, 134, 135, 136, 137, 138, 139, 140, 141, 142, 144, 146, 147, 148, 152, 156, 158, 159, 160, 161, 162, 163, 164, 165, 167, 170, 173, 178, 181, 184, 187, 189], "summary": {"covered_lines": 41, "num_statements": 41, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 12, "num_partial_branches": 0, "covered_branches": 12, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 81, "executed_branches": [[114, 115], [114, 124], [134, 135], [134, 167], [146, 147], [146, 158], [147, 148], [147, 156], [162, 163], [162, 164], [164, 134], [164, 165]], "missing_branches": []}, "is_data_equal": {"executed_lines": [212], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 199, "executed_branches": [], "missing_branches": []}, "is_metadata_equal": {"executed_lines": [227], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 217, "executed_branches": [], "missing_branches": []}, "_validate_data_list_keys": {"executed_lines": [241, 242, 243, 245], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 238, "executed_branches": [[242, 243], [242, 245]], "missing_branches": []}, "_validate_data_value_lengths": {"executed_lines": [251, 252, 253, 254], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 248, "executed_branches": [[251, -248], [251, 252], [253, 251], [253, 254]], "missing_branches": []}, "_merge_data_values": {"executed_lines": [263, 264, 266, 267, 268, 269, 270, 271], "summary": {"covered_lines": 8, "num_statements": 10, "percent_covered": 77.77777777777777, "percent_covered_display": "78", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 80.0, "percent_statements_covered_display": "80", "num_branches": 8, "num_partial_branches": 2, "covered_branches": 6, "missing_branches": 2, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [272, 274], "excluded_lines": [], "start_line": 259, "executed_branches": [[263, 264], [263, 266], [266, 267], [268, 269], [268, 270], [270, 271]], "missing_branches": [[266, 274], [270, 272]]}, "merge_data": {"executed_lines": [302, 303, 305, 306, 308, 313], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 280, "executed_branches": [[302, 303], [302, 305]], "missing_branches": []}, "merge_metadata": {"executed_lines": [336, 337, 339, 340, 341, 343, 344, 345, 346, 347, 348, 350, 351, 352, 353, 357, 359, 364, 365, 367], "summary": {"covered_lines": 20, "num_statements": 20, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 18, "num_partial_branches": 0, "covered_branches": 18, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 316, "executed_branches": [[336, 337], [336, 339], [340, 341], [340, 343], [344, 345], [344, 367], [345, 344], [345, 346], [346, 347], [346, 350], [351, 352], [351, 357], [352, 345], [352, 353], [357, 359], [357, 364], [364, 345], [364, 365]], "missing_branches": []}, "get_data_item": {"executed_lines": [384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 399, 400, 401, 407], "summary": {"covered_lines": 16, "num_statements": 18, "percent_covered": 88.23529411764706, "percent_covered_display": "88", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 88.88888888888889, "percent_statements_covered_display": "89", "num_branches": 16, "num_partial_branches": 2, "covered_branches": 14, "missing_branches": 2, "percent_branches_covered": 87.5, "percent_branches_covered_display": "88"}, "missing_lines": [403, 405], "excluded_lines": [], "start_line": 370, "executed_branches": [[385, 386], [385, 407], [386, 387], [386, 388], [388, 389], [389, 390], [389, 391], [391, 392], [391, 393], [393, 394], [393, 400], [394, 395], [394, 399], [400, 401]], "missing_branches": [[388, 405], [400, 403]]}, "cross_product": {"executed_lines": [422, 428, 429], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 410, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 5, 7, 8, 9, 11, 12, 13, 15, 18, 54, 81, 199, 217, 238, 248, 259, 280, 316, 370, 410], "summary": {"covered_lines": 23, "num_statements": 23, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 3, 4, 5, 7, 8, 9, 11, 12, 13, 15, 18, 19, 20, 54, 59, 60, 61, 62, 63, 64, 65, 71, 72, 73, 78, 81, 114, 115, 124, 125, 126, 127, 128, 129, 131, 132, 134, 135, 136, 137, 138, 139, 140, 141, 142, 144, 146, 147, 148, 152, 156, 158, 159, 160, 161, 162, 163, 164, 165, 167, 170, 173, 178, 181, 184, 187, 189, 199, 212, 217, 227, 238, 241, 242, 243, 245, 248, 251, 252, 253, 254, 259, 263, 264, 266, 267, 268, 269, 270, 271, 280, 302, 303, 305, 306, 308, 313, 316, 336, 337, 339, 340, 341, 343, 344, 345, 346, 347, 348, 350, 351, 352, 353, 357, 359, 364, 365, 367, 370, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 399, 400, 401, 407, 410, 422, 428, 429], "summary": {"covered_lines": 140, "num_statements": 162, "percent_covered": 85.59322033898304, "percent_covered_display": "86", "missing_lines": 22, "excluded_lines": 0, "percent_statements_covered": 86.41975308641975, "percent_statements_covered_display": "86", "num_branches": 74, "num_partial_branches": 6, "covered_branches": 62, "missing_branches": 12, "percent_branches_covered": 83.78378378378379, "percent_branches_covered_display": "84"}, "missing_lines": [22, 23, 25, 27, 28, 32, 37, 38, 40, 41, 42, 43, 44, 46, 47, 49, 51, 66, 272, 274, 403, 405], "excluded_lines": [], "start_line": 1, "executed_branches": [[19, 20], [60, 61], [60, 62], [65, 71], [114, 115], [114, 124], [134, 135], [134, 167], [146, 147], [146, 158], [147, 148], [147, 156], [162, 163], [162, 164], [164, 134], [164, 165], [242, 243], [242, 245], [251, -248], [251, 252], [253, 251], [253, 254], [263, 264], [263, 266], [266, 267], [268, 269], [268, 270], [270, 271], [302, 303], [302, 305], [336, 337], [336, 339], [340, 341], [340, 343], [344, 345], [344, 367], [345, 344], [345, 346], [346, 347], [346, 350], [351, 352], [351, 357], [352, 345], [352, 353], [357, 359], [357, 364], [364, 345], [364, 365], [385, 386], [385, 407], [386, 387], [386, 388], [388, 389], [389, 390], [389, 391], [391, 392], [391, 393], [393, 394], [393, 400], [394, 395], [394, 399], [400, 401]], "missing_branches": [[19, 22], [27, 28], [27, 37], [42, 43], [42, 51], [46, 47], [46, 49], [65, 66], [266, 274], [270, 272], [388, 405], [400, 403]]}}}, "src\\supervision\\detection\\utils\\iou_and_nms.py": {"executed_lines": [1, 3, 4, 5, 6, 8, 9, 10, 12, 13, 16, 30, 31, 32, 34, 35, 38, 39, 40, 41, 54, 67, 68, 70, 71, 72, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 90, 129, 130, 131, 133, 134, 135, 136, 138, 139, 141, 143, 144, 146, 147, 148, 149, 156, 157, 159, 162, 218, 219, 220, 221, 223, 224, 228, 229, 230, 231, 233, 234, 235, 236, 239, 240, 241, 242, 244, 246, 247, 249, 250, 251, 252, 259, 260, 261, 264, 280, 282, 283, 286, 288, 290, 291, 294, 295, 296, 298, 301, 304, 349, 352, 353, 354, 357, 358, 359, 360, 363, 372, 373, 374, 375, 378, 387, 388, 389, 394, 418, 419, 420, 423, 426, 428, 429, 433, 434, 438, 439, 444, 446, 447, 448, 449, 450, 456, 522, 523, 524, 528, 529, 530, 532, 533, 534, 536, 537, 539, 540, 543, 544, 545, 546, 548, 549, 551, 552, 553, 556, 557, 558, 563, 564, 565, 566, 567, 574, 577, 607, 608, 609, 611, 612, 614, 615, 619, 620, 621, 622, 623, 625, 626, 627, 628, 629, 632, 633, 634, 635, 636, 639, 640, 642, 643, 645, 646, 647, 648, 650, 651, 652, 653, 655, 656, 658, 659, 661, 662, 663, 665, 666, 667, 668, 669, 670, 677, 680, 703, 704, 705, 708, 711, 712, 714, 715, 717, 718, 719, 725, 727, 728, 740, 741, 744, 782, 783, 786, 787, 788, 789, 791, 792, 796, 797, 802, 803, 810, 811, 812, 813, 814, 815, 816, 823, 824, 826, 827, 828, 829, 837, 840, 878, 882, 884, 885, 887, 888, 889, 891, 892, 894, 895, 896, 897, 900, 904, 907, 915, 916, 917, 918, 919, 920, 921, 924, 935, 936, 937, 938, 939, 940, 941, 942, 943, 946, 971, 975, 976, 977, 978, 981, 1005, 1007, 1008, 1010, 1011, 1013, 1014, 1015, 1016, 1018, 1019, 1020, 1021, 1022, 1023, 1024, 1025, 1026, 1031, 1032, 1034, 1035, 1038, 1074, 1081, 1083, 1084, 1086, 1087, 1091, 1092, 1093, 1094, 1095, 1102, 1103, 1105, 1106, 1110, 1113, 1127, 1128, 1129, 1130, 1131, 1132, 1133, 1134, 1135, 1136, 1137, 1138, 1139, 1140, 1141, 1144, 1156, 1157, 1158, 1162, 1163, 1164, 1165, 1166, 1167, 1169, 1170, 1174, 1177, 1200, 1203, 1209, 1214, 1238, 1239, 1243, 1246, 1303, 1307, 1308, 1309, 1313, 1314, 1319, 1324, 1328, 1329, 1333, 1334, 1336, 1337, 1338, 1341, 1352, 1355, 1361, 1366, 1422, 1423, 1424, 1428, 1429, 1434, 1439, 1443, 1448, 1453, 1454, 1461], "summary": {"covered_lines": 409, "num_statements": 434, "percent_covered": 92.22972972972973, "percent_covered_display": "92", "missing_lines": 25, "excluded_lines": 0, "percent_statements_covered": 94.23963133640552, "percent_statements_covered_display": "94", "num_branches": 158, "num_partial_branches": 19, "covered_branches": 137, "missing_branches": 21, "percent_branches_covered": 86.70886075949367, "percent_branches_covered_display": "87"}, "missing_lines": [36, 42, 43, 44, 45, 46, 47, 48, 84, 151, 254, 299, 672, 735, 1107, 1171, 1310, 1315, 1320, 1325, 1425, 1430, 1435, 1440, 1444], "excluded_lines": [], "executed_branches": [[40, 41], [76, 77], [76, 78], [78, 79], [146, 147], [146, 148], [148, 149], [156, 157], [156, 159], [223, 224], [223, 228], [249, 250], [249, 251], [251, 252], [298, 301], [352, 353], [352, 354], [357, 358], [357, 360], [358, 357], [358, 359], [428, 429], [428, 433], [433, 434], [433, 438], [438, -426], [438, 439], [446, 447], [446, 448], [448, 449], [448, 450], [533, 534], [533, 536], [544, 545], [544, 548], [552, 553], [552, 574], [556, 557], [556, 558], [563, 564], [566, 552], [566, 567], [611, 612], [611, 614], [642, 643], [642, 677], [645, 646], [645, 647], [647, 648], [647, 650], [665, 666], [665, 668], [668, 669], [717, 718], [717, 725], [725, 727], [782, 783], [782, 786], [786, 787], [786, 788], [788, 789], [788, 791], [791, 792], [791, 796], [796, 797], [796, 802], [802, 803], [802, 810], [815, 816], [815, 823], [823, 824], [823, 826], [828, 829], [828, 837], [884, 885], [884, 887], [895, 896], [895, 904], [896, 895], [896, 897], [916, 917], [916, 918], [938, 939], [938, 943], [939, 940], [939, 941], [1010, 1011], [1010, 1035], [1014, 1015], [1014, 1018], [1020, 1021], [1020, 1034], [1023, 1024], [1023, 1025], [1074, 1081], [1074, 1083], [1086, 1087], [1086, 1091], [1093, 1094], [1093, 1105], [1102, 1093], [1102, 1103], [1105, 1106], [1105, 1110], [1106, 1105], [1130, 1131], [1130, 1141], [1133, 1134], [1133, 1136], [1156, 1157], [1156, 1162], [1164, 1165], [1164, 1169], [1166, 1164], [1166, 1167], [1169, 1170], [1169, 1174], [1170, 1169], [1307, 1308], [1307, 1328], [1308, 1309], [1308, 1314], [1309, 1313], [1314, 1319], [1319, 1324], [1324, 1307], [1328, 1329], [1328, 1333], [1422, 1423], [1422, 1443], [1423, 1424], [1423, 1429], [1424, 1428], [1429, 1434], [1434, 1439], [1439, 1422], [1443, 1448]], "missing_branches": [[40, 42], [42, 43], [42, 48], [78, 84], [148, 151], [251, 254], [298, 299], [563, 552], [668, 672], [725, 735], [1106, 1107], [1170, 1171], [1309, 1310], [1314, 1315], [1319, 1320], [1324, 1325], [1424, 1425], [1429, 1430], [1434, 1435], [1439, 1440], [1443, 1444]], "functions": {"OverlapFilter.list": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [36], "excluded_lines": [], "start_line": 35, "executed_branches": [], "missing_branches": []}, "OverlapFilter.from_value": {"executed_lines": [40, 41], "summary": {"covered_lines": 2, "num_statements": 9, "percent_covered": 23.076923076923077, "percent_covered_display": "23", "missing_lines": 7, "excluded_lines": 0, "percent_statements_covered": 22.22222222222222, "percent_statements_covered_display": "22", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 3, "percent_branches_covered": 25.0, "percent_branches_covered_display": "25"}, "missing_lines": [42, 43, 44, 45, 46, 47, 48], "excluded_lines": [], "start_line": 39, "executed_branches": [[40, 41]], "missing_branches": [[40, 42], [42, 43], [42, 48]]}, "OverlapMetric.list": {"executed_lines": [72], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 71, "executed_branches": [], "missing_branches": []}, "OverlapMetric.from_value": {"executed_lines": [76, 77, 78, 79, 80, 81, 82, 83], "summary": {"covered_lines": 8, "num_statements": 9, "percent_covered": 84.61538461538461, "percent_covered_display": "85", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 88.88888888888889, "percent_statements_covered_display": "89", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [84], "excluded_lines": [], "start_line": 75, "executed_branches": [[76, 77], [76, 78], [78, 79]], "missing_branches": [[78, 84]]}, "box_iou": {"executed_lines": [129, 130, 131, 133, 134, 135, 136, 138, 139, 141, 143, 144, 146, 147, 148, 149, 156, 157, 159], "summary": {"covered_lines": 19, "num_statements": 20, "percent_covered": 92.3076923076923, "percent_covered_display": "92", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 95.0, "percent_statements_covered_display": "95", "num_branches": 6, "num_partial_branches": 1, "covered_branches": 5, "missing_branches": 1, "percent_branches_covered": 83.33333333333333, "percent_branches_covered_display": "83"}, "missing_lines": [151], "excluded_lines": [], "start_line": 90, "executed_branches": [[146, 147], [146, 148], [148, 149], [156, 157], [156, 159]], "missing_branches": [[148, 151]]}, "box_iou_batch": {"executed_lines": [218, 219, 220, 221, 223, 224, 228, 229, 230, 231, 233, 234, 235, 236, 239, 240, 241, 242, 244, 246, 247, 249, 250, 251, 252, 259, 260, 261], "summary": {"covered_lines": 28, "num_statements": 29, "percent_covered": 94.28571428571429, "percent_covered_display": "94", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 96.55172413793103, "percent_statements_covered_display": "97", "num_branches": 6, "num_partial_branches": 1, "covered_branches": 5, "missing_branches": 1, "percent_branches_covered": 83.33333333333333, "percent_branches_covered_display": "83"}, "missing_lines": [254], "excluded_lines": [], "start_line": 162, "executed_branches": [[223, 224], [223, 228], [249, 250], [249, 251], [251, 252]], "missing_branches": [[251, 254]]}, "_jaccard": {"executed_lines": [280, 282, 283, 286, 288, 290, 291, 294, 295, 296, 298, 301], "summary": {"covered_lines": 12, "num_statements": 13, "percent_covered": 86.66666666666667, "percent_covered_display": "87", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 92.3076923076923, "percent_statements_covered_display": "92", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [299], "excluded_lines": [], "start_line": 264, "executed_branches": [[298, 301]], "missing_branches": [[298, 299]]}, "box_iou_batch_with_jaccard": {"executed_lines": [349, 352, 353, 354, 357, 358, 359, 360], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 6, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 304, "executed_branches": [[352, 353], [352, 354], [357, 358], [357, 360], [358, 357], [358, 359]], "missing_branches": []}, "_polygon_areas": {"executed_lines": [372, 373, 374, 375], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 363, "executed_branches": [], "missing_branches": []}, "_aabb_envelopes": {"executed_lines": [387, 388, 389], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 378, "executed_branches": [], "missing_branches": []}, "_overlapping_envelope_pairs": {"executed_lines": [418, 419, 420, 423], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 394, "executed_branches": [], "missing_branches": []}, "_validate_oriented_box_batch": {"executed_lines": [428, 429, 433, 434, 438, 439], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 6, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 426, "executed_branches": [[428, 429], [428, 433], [433, 434], [433, 438], [438, -426], [438, 439]], "missing_branches": []}, "_normalize_oriented_overlap_metric": {"executed_lines": [446, 447, 448, 449, 450], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 444, "executed_branches": [[446, 447], [446, 448], [448, 449], [448, 450]], "missing_branches": []}, "oriented_box_iou_batch": {"executed_lines": [522, 523, 524, 528, 529, 530, 532, 533, 534, 536, 537, 539, 540, 543, 544, 545, 546, 548, 549, 551, 552, 553, 556, 557, 558, 563, 564, 565, 566, 567, 574], "summary": {"covered_lines": 31, "num_statements": 31, "percent_covered": 97.67441860465117, "percent_covered_display": "98", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 12, "num_partial_branches": 1, "covered_branches": 11, "missing_branches": 1, "percent_branches_covered": 91.66666666666667, "percent_branches_covered_display": "92"}, "missing_lines": [], "excluded_lines": [], "start_line": 456, "executed_branches": [[533, 534], [533, 536], [544, 545], [544, 548], [552, 553], [552, 574], [556, 557], [556, 558], [563, 564], [566, 552], [566, 567]], "missing_branches": [[563, 552]]}, "compact_mask_iou_batch": {"executed_lines": [607, 608, 609, 611, 612, 614, 615, 619, 620, 621, 622, 623, 625, 626, 627, 628, 629, 632, 633, 634, 635, 636, 639, 640, 642, 643, 645, 646, 647, 648, 650, 651, 652, 653, 655, 656, 658, 659, 661, 662, 663, 665, 666, 667, 668, 669, 670, 677], "summary": {"covered_lines": 48, "num_statements": 49, "percent_covered": 96.72131147540983, "percent_covered_display": "97", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 97.95918367346938, "percent_statements_covered_display": "98", "num_branches": 12, "num_partial_branches": 1, "covered_branches": 11, "missing_branches": 1, "percent_branches_covered": 91.66666666666667, "percent_branches_covered_display": "92"}, "missing_lines": [672], "excluded_lines": [], "start_line": 577, "executed_branches": [[611, 612], [611, 614], [642, 643], [642, 677], [645, 646], [645, 647], [647, 648], [647, 650], [665, 666], [665, 668], [668, 669]], "missing_branches": [[668, 672]]}, "_mask_iou_batch_split": {"executed_lines": [703, 704, 705, 708, 711, 712, 714, 715, 717, 718, 719, 725, 727, 728, 740, 741], "summary": {"covered_lines": 16, "num_statements": 17, "percent_covered": 90.47619047619048, "percent_covered_display": "90", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 94.11764705882354, "percent_statements_covered_display": "94", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [735], "excluded_lines": [], "start_line": 680, "executed_branches": [[717, 718], [717, 725], [725, 727]], "missing_branches": [[725, 735]]}, "mask_iou_batch": {"executed_lines": [782, 783, 786, 787, 788, 789, 791, 792, 796, 797, 802, 803, 810, 811, 812, 813, 814, 815, 816, 823, 824, 826, 827, 828, 829, 837], "summary": {"covered_lines": 26, "num_statements": 26, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 18, "num_partial_branches": 0, "covered_branches": 18, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 744, "executed_branches": [[782, 783], [782, 786], [786, 787], [786, 788], [788, 789], [788, 791], [791, 792], [791, 796], [796, 797], [796, 802], [802, 803], [802, 810], [815, 816], [815, 823], [823, 824], [823, 826], [828, 829], [828, 837]], "missing_branches": []}, "mask_non_max_suppression": {"executed_lines": [878, 882, 884, 885, 887, 888, 889, 891, 892, 894, 895, 896, 897, 900, 904], "summary": {"covered_lines": 15, "num_statements": 15, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 6, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 840, "executed_branches": [[884, 885], [884, 887], [895, 896], [895, 904], [896, 895], [896, 897]], "missing_branches": []}, "_prepare_predictions_for_nms": {"executed_lines": [915, 916, 917, 918, 919, 920, 921], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 907, "executed_branches": [[916, 917], [916, 918]], "missing_branches": []}, "_nms_loop_from_iou_matrix": {"executed_lines": [935, 936, 937, 938, 939, 940, 941, 942, 943], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 924, "executed_branches": [[938, 939], [938, 943], [939, 940], [939, 941]], "missing_branches": []}, "box_non_max_suppression": {"executed_lines": [971, 975, 976, 977, 978], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 946, "executed_branches": [], "missing_branches": []}, "_group_overlapping_masks": {"executed_lines": [1005, 1007, 1008, 1010, 1011, 1013, 1014, 1015, 1016, 1018, 1019, 1020, 1021, 1022, 1023, 1024, 1025, 1026, 1031, 1032, 1034, 1035], "summary": {"covered_lines": 22, "num_statements": 22, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 8, "num_partial_branches": 0, "covered_branches": 8, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 981, "executed_branches": [[1010, 1011], [1010, 1035], [1014, 1015], [1014, 1018], [1020, 1021], [1020, 1034], [1023, 1024], [1023, 1025]], "missing_branches": []}, "mask_non_max_merge": {"executed_lines": [1074, 1081, 1083, 1084, 1086, 1087, 1091, 1092, 1093, 1094, 1095, 1102, 1103, 1105, 1106, 1110], "summary": {"covered_lines": 16, "num_statements": 17, "percent_covered": 93.10344827586206, "percent_covered_display": "93", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 94.11764705882354, "percent_statements_covered_display": "94", "num_branches": 12, "num_partial_branches": 1, "covered_branches": 11, "missing_branches": 1, "percent_branches_covered": 91.66666666666667, "percent_branches_covered_display": "92"}, "missing_lines": [1107], "excluded_lines": [], "start_line": 1038, "executed_branches": [[1074, 1081], [1074, 1083], [1086, 1087], [1086, 1091], [1093, 1094], [1093, 1105], [1102, 1093], [1102, 1103], [1105, 1106], [1105, 1110], [1106, 1105]], "missing_branches": [[1106, 1107]]}, "_greedy_nmm_via_iou_callback": {"executed_lines": [1127, 1128, 1129, 1130, 1131, 1132, 1133, 1134, 1135, 1136, 1137, 1138, 1139, 1140, 1141], "summary": {"covered_lines": 15, "num_statements": 15, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1113, "executed_branches": [[1130, 1131], [1130, 1141], [1133, 1134], [1133, 1136]], "missing_branches": []}, "_non_max_merge_per_category": {"executed_lines": [1156, 1157, 1158, 1162, 1163, 1164, 1165, 1166, 1167, 1169, 1170, 1174], "summary": {"covered_lines": 12, "num_statements": 13, "percent_covered": 91.30434782608695, "percent_covered_display": "91", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 92.3076923076923, "percent_statements_covered_display": "92", "num_branches": 10, "num_partial_branches": 1, "covered_branches": 9, "missing_branches": 1, "percent_branches_covered": 90.0, "percent_branches_covered_display": "90"}, "missing_lines": [1171], "excluded_lines": [], "start_line": 1144, "executed_branches": [[1156, 1157], [1156, 1162], [1164, 1165], [1164, 1169], [1166, 1164], [1166, 1167], [1169, 1170], [1169, 1174], [1170, 1169]], "missing_branches": [[1170, 1171]]}, "_group_overlapping_boxes": {"executed_lines": [1200, 1209], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1177, "executed_branches": [], "missing_branches": []}, "_group_overlapping_boxes.iou_against_candidate": {"executed_lines": [1203], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1200, "executed_branches": [], "missing_branches": []}, "box_non_max_merge": {"executed_lines": [1238, 1243], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1214, "executed_branches": [], "missing_branches": []}, "box_non_max_merge.group_within": {"executed_lines": [1239], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1238, "executed_branches": [], "missing_branches": []}, "oriented_box_non_max_suppression": {"executed_lines": [1303, 1307, 1308, 1309, 1313, 1314, 1319, 1324, 1328, 1329, 1333, 1334, 1336, 1337, 1338], "summary": {"covered_lines": 15, "num_statements": 19, "percent_covered": 75.75757575757575, "percent_covered_display": "76", "missing_lines": 4, "excluded_lines": 0, "percent_statements_covered": 78.94736842105263, "percent_statements_covered_display": "79", "num_branches": 14, "num_partial_branches": 4, "covered_branches": 10, "missing_branches": 4, "percent_branches_covered": 71.42857142857143, "percent_branches_covered_display": "71"}, "missing_lines": [1310, 1315, 1320, 1325], "excluded_lines": [], "start_line": 1246, "executed_branches": [[1307, 1308], [1307, 1328], [1308, 1309], [1308, 1314], [1309, 1313], [1314, 1319], [1319, 1324], [1324, 1307], [1328, 1329], [1328, 1333]], "missing_branches": [[1309, 1310], [1314, 1315], [1319, 1320], [1324, 1325]]}, "_group_overlapping_oriented_boxes": {"executed_lines": [1352, 1361], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1341, "executed_branches": [], "missing_branches": []}, "_group_overlapping_oriented_boxes.iou_against_candidate": {"executed_lines": [1355], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1352, "executed_branches": [], "missing_branches": []}, "oriented_box_non_max_merge": {"executed_lines": [1422, 1423, 1424, 1428, 1429, 1434, 1439, 1443, 1448, 1453, 1461], "summary": {"covered_lines": 11, "num_statements": 16, "percent_covered": 66.66666666666667, "percent_covered_display": "67", "missing_lines": 5, "excluded_lines": 0, "percent_statements_covered": 68.75, "percent_statements_covered_display": "69", "num_branches": 14, "num_partial_branches": 5, "covered_branches": 9, "missing_branches": 5, "percent_branches_covered": 64.28571428571429, "percent_branches_covered_display": "64"}, "missing_lines": [1425, 1430, 1435, 1440, 1444], "excluded_lines": [], "start_line": 1366, "executed_branches": [[1422, 1423], [1422, 1443], [1423, 1424], [1423, 1429], [1424, 1428], [1429, 1434], [1434, 1439], [1439, 1422], [1443, 1448]], "missing_branches": [[1424, 1425], [1429, 1430], [1434, 1435], [1439, 1440], [1443, 1444]]}, "oriented_box_non_max_merge.group_within": {"executed_lines": [1454], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1453, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 5, 6, 8, 9, 10, 12, 13, 16, 30, 31, 32, 34, 35, 38, 39, 54, 67, 68, 70, 71, 74, 75, 90, 162, 264, 304, 363, 378, 394, 426, 444, 456, 577, 680, 744, 840, 907, 924, 946, 981, 1038, 1113, 1144, 1177, 1214, 1246, 1341, 1366], "summary": {"covered_lines": 51, "num_statements": 51, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"OverlapFilter": {"executed_lines": [40, 41], "summary": {"covered_lines": 2, "num_statements": 10, "percent_covered": 21.428571428571427, "percent_covered_display": "21", "missing_lines": 8, "excluded_lines": 0, "percent_statements_covered": 20.0, "percent_statements_covered_display": "20", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 3, "percent_branches_covered": 25.0, "percent_branches_covered_display": "25"}, "missing_lines": [36, 42, 43, 44, 45, 46, 47, 48], "excluded_lines": [], "start_line": 16, "executed_branches": [[40, 41]], "missing_branches": [[40, 42], [42, 43], [42, 48]]}, "OverlapMetric": {"executed_lines": [72, 76, 77, 78, 79, 80, 81, 82, 83], "summary": {"covered_lines": 9, "num_statements": 10, "percent_covered": 85.71428571428571, "percent_covered_display": "86", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 90.0, "percent_statements_covered_display": "90", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [84], "excluded_lines": [], "start_line": 54, "executed_branches": [[76, 77], [76, 78], [78, 79]], "missing_branches": [[78, 84]]}, "": {"executed_lines": [1, 3, 4, 5, 6, 8, 9, 10, 12, 13, 16, 30, 31, 32, 34, 35, 38, 39, 54, 67, 68, 70, 71, 74, 75, 90, 129, 130, 131, 133, 134, 135, 136, 138, 139, 141, 143, 144, 146, 147, 148, 149, 156, 157, 159, 162, 218, 219, 220, 221, 223, 224, 228, 229, 230, 231, 233, 234, 235, 236, 239, 240, 241, 242, 244, 246, 247, 249, 250, 251, 252, 259, 260, 261, 264, 280, 282, 283, 286, 288, 290, 291, 294, 295, 296, 298, 301, 304, 349, 352, 353, 354, 357, 358, 359, 360, 363, 372, 373, 374, 375, 378, 387, 388, 389, 394, 418, 419, 420, 423, 426, 428, 429, 433, 434, 438, 439, 444, 446, 447, 448, 449, 450, 456, 522, 523, 524, 528, 529, 530, 532, 533, 534, 536, 537, 539, 540, 543, 544, 545, 546, 548, 549, 551, 552, 553, 556, 557, 558, 563, 564, 565, 566, 567, 574, 577, 607, 608, 609, 611, 612, 614, 615, 619, 620, 621, 622, 623, 625, 626, 627, 628, 629, 632, 633, 634, 635, 636, 639, 640, 642, 643, 645, 646, 647, 648, 650, 651, 652, 653, 655, 656, 658, 659, 661, 662, 663, 665, 666, 667, 668, 669, 670, 677, 680, 703, 704, 705, 708, 711, 712, 714, 715, 717, 718, 719, 725, 727, 728, 740, 741, 744, 782, 783, 786, 787, 788, 789, 791, 792, 796, 797, 802, 803, 810, 811, 812, 813, 814, 815, 816, 823, 824, 826, 827, 828, 829, 837, 840, 878, 882, 884, 885, 887, 888, 889, 891, 892, 894, 895, 896, 897, 900, 904, 907, 915, 916, 917, 918, 919, 920, 921, 924, 935, 936, 937, 938, 939, 940, 941, 942, 943, 946, 971, 975, 976, 977, 978, 981, 1005, 1007, 1008, 1010, 1011, 1013, 1014, 1015, 1016, 1018, 1019, 1020, 1021, 1022, 1023, 1024, 1025, 1026, 1031, 1032, 1034, 1035, 1038, 1074, 1081, 1083, 1084, 1086, 1087, 1091, 1092, 1093, 1094, 1095, 1102, 1103, 1105, 1106, 1110, 1113, 1127, 1128, 1129, 1130, 1131, 1132, 1133, 1134, 1135, 1136, 1137, 1138, 1139, 1140, 1141, 1144, 1156, 1157, 1158, 1162, 1163, 1164, 1165, 1166, 1167, 1169, 1170, 1174, 1177, 1200, 1203, 1209, 1214, 1238, 1239, 1243, 1246, 1303, 1307, 1308, 1309, 1313, 1314, 1319, 1324, 1328, 1329, 1333, 1334, 1336, 1337, 1338, 1341, 1352, 1355, 1361, 1366, 1422, 1423, 1424, 1428, 1429, 1434, 1439, 1443, 1448, 1453, 1454, 1461], "summary": {"covered_lines": 398, "num_statements": 414, "percent_covered": 94.14893617021276, "percent_covered_display": "94", "missing_lines": 16, "excluded_lines": 0, "percent_statements_covered": 96.13526570048309, "percent_statements_covered_display": "96", "num_branches": 150, "num_partial_branches": 17, "covered_branches": 133, "missing_branches": 17, "percent_branches_covered": 88.66666666666667, "percent_branches_covered_display": "89"}, "missing_lines": [151, 254, 299, 672, 735, 1107, 1171, 1310, 1315, 1320, 1325, 1425, 1430, 1435, 1440, 1444], "excluded_lines": [], "start_line": 1, "executed_branches": [[146, 147], [146, 148], [148, 149], [156, 157], [156, 159], [223, 224], [223, 228], [249, 250], [249, 251], [251, 252], [298, 301], [352, 353], [352, 354], [357, 358], [357, 360], [358, 357], [358, 359], [428, 429], [428, 433], [433, 434], [433, 438], [438, -426], [438, 439], [446, 447], [446, 448], [448, 449], [448, 450], [533, 534], [533, 536], [544, 545], [544, 548], [552, 553], [552, 574], [556, 557], [556, 558], [563, 564], [566, 552], [566, 567], [611, 612], [611, 614], [642, 643], [642, 677], [645, 646], [645, 647], [647, 648], [647, 650], [665, 666], [665, 668], [668, 669], [717, 718], [717, 725], [725, 727], [782, 783], [782, 786], [786, 787], [786, 788], [788, 789], [788, 791], [791, 792], [791, 796], [796, 797], [796, 802], [802, 803], [802, 810], [815, 816], [815, 823], [823, 824], [823, 826], [828, 829], [828, 837], [884, 885], [884, 887], [895, 896], [895, 904], [896, 895], [896, 897], [916, 917], [916, 918], [938, 939], [938, 943], [939, 940], [939, 941], [1010, 1011], [1010, 1035], [1014, 1015], [1014, 1018], [1020, 1021], [1020, 1034], [1023, 1024], [1023, 1025], [1074, 1081], [1074, 1083], [1086, 1087], [1086, 1091], [1093, 1094], [1093, 1105], [1102, 1093], [1102, 1103], [1105, 1106], [1105, 1110], [1106, 1105], [1130, 1131], [1130, 1141], [1133, 1134], [1133, 1136], [1156, 1157], [1156, 1162], [1164, 1165], [1164, 1169], [1166, 1164], [1166, 1167], [1169, 1170], [1169, 1174], [1170, 1169], [1307, 1308], [1307, 1328], [1308, 1309], [1308, 1314], [1309, 1313], [1314, 1319], [1319, 1324], [1324, 1307], [1328, 1329], [1328, 1333], [1422, 1423], [1422, 1443], [1423, 1424], [1423, 1429], [1424, 1428], [1429, 1434], [1434, 1439], [1439, 1422], [1443, 1448]], "missing_branches": [[148, 151], [251, 254], [298, 299], [563, 552], [668, 672], [725, 735], [1106, 1107], [1170, 1171], [1309, 1310], [1314, 1315], [1319, 1320], [1324, 1325], [1424, 1425], [1429, 1430], [1434, 1435], [1439, 1440], [1443, 1444]]}}}, "src\\supervision\\detection\\utils\\masks.py": {"executed_lines": [1, 3, 5, 6, 7, 9, 12, 56, 58, 59, 60, 61, 62, 64, 65, 66, 67, 69, 70, 71, 72, 73, 75, 76, 77, 78, 80, 81, 87, 90, 105, 107, 108, 109, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 122, 123, 124, 125, 127, 129, 130, 133, 135, 137, 140, 142, 143, 144, 146, 151, 190, 191, 193, 194, 195, 196, 197, 198, 201, 251, 252, 255, 256, 257, 260, 263, 275, 276, 277, 279, 280, 282, 283, 284, 286, 288, 291, 298, 299, 300, 301, 302, 306, 313, 314, 315, 316, 319, 327, 328, 329, 331, 332, 333, 335, 336, 339, 340, 341, 344, 425, 428, 429, 430, 432, 437, 441, 444, 445, 447, 454, 455, 457, 458, 464, 465, 475], "summary": {"covered_lines": 127, "num_statements": 132, "percent_covered": 94.31818181818181, "percent_covered_display": "94", "missing_lines": 5, "excluded_lines": 0, "percent_statements_covered": 96.21212121212122, "percent_statements_covered_display": "96", "num_branches": 44, "num_partial_branches": 5, "covered_branches": 39, "missing_branches": 5, "percent_branches_covered": 88.63636363636364, "percent_branches_covered_display": "89"}, "missing_lines": [303, 337, 426, 442, 473], "excluded_lines": [], "executed_branches": [[58, 59], [58, 64], [69, 70], [69, 75], [80, 81], [80, 87], [105, 107], [105, 129], [108, 109], [108, 111], [112, 113], [112, 127], [118, 119], [118, 122], [193, 194], [193, 198], [195, 196], [195, 198], [196, 195], [196, 197], [251, 252], [251, 255], [298, 299], [298, 301], [301, 302], [331, -319], [331, 332], [332, 333], [332, 335], [336, 339], [340, 331], [340, 341], [425, 428], [429, 430], [429, 432], [441, 444], [457, 458], [457, 464], [464, 465]], "missing_branches": [[301, 303], [336, 337], [425, 426], [441, 442], [464, 473]], "functions": {"move_masks": {"executed_lines": [56, 58, 59, 60, 61, 62, 64, 65, 66, 67, 69, 70, 71, 72, 73, 75, 76, 77, 78, 80, 81, 87], "summary": {"covered_lines": 22, "num_statements": 22, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 6, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 12, "executed_branches": [[58, 59], [58, 64], [69, 70], [69, 75], [80, 81], [80, 87]], "missing_branches": []}, "calculate_masks_centroids": {"executed_lines": [105, 107, 108, 109, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 122, 123, 124, 125, 127, 129, 130, 133, 135, 137, 142, 143, 144, 146], "summary": {"covered_lines": 28, "num_statements": 28, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 8, "num_partial_branches": 0, "covered_branches": 8, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 90, "executed_branches": [[105, 107], [105, 129], [108, 109], [108, 111], [112, 113], [112, 127], [118, 119], [118, 122]], "missing_branches": []}, "calculate_masks_centroids.sum_over_mask": {"executed_lines": [140], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 137, "executed_branches": [], "missing_branches": []}, "contains_holes": {"executed_lines": [190, 191, 193, 194, 195, 196, 197, 198], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 6, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 151, "executed_branches": [[193, 194], [193, 198], [195, 196], [195, 198], [196, 195], [196, 197]], "missing_branches": []}, "contains_multiple_segments": {"executed_lines": [251, 252, 255, 256, 257, 260], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 201, "executed_branches": [[251, 252], [251, 255]], "missing_branches": []}, "resize_masks": {"executed_lines": [275, 276, 277, 279, 280, 282, 283, 284, 286, 288], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 263, "executed_branches": [], "missing_branches": []}, "_resolve_distance_threshold": {"executed_lines": [298, 299, 300, 301, 302], "summary": {"covered_lines": 5, "num_statements": 6, "percent_covered": 80.0, "percent_covered_display": "80", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 83.33333333333333, "percent_statements_covered_display": "83", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [303], "excluded_lines": [], "start_line": 291, "executed_branches": [[298, 299], [298, 301], [301, 302]], "missing_branches": [[301, 303]]}, "_filter_labels_by_centroid_distance": {"executed_lines": [313, 314, 315, 316], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 306, "executed_branches": [], "missing_branches": []}, "_filter_labels_by_edge_distance": {"executed_lines": [327, 328, 329, 331, 332, 333, 335, 336, 339, 340, 341], "summary": {"covered_lines": 11, "num_statements": 12, "percent_covered": 90.0, "percent_covered_display": "90", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 91.66666666666667, "percent_statements_covered_display": "92", "num_branches": 8, "num_partial_branches": 1, "covered_branches": 7, "missing_branches": 1, "percent_branches_covered": 87.5, "percent_branches_covered_display": "88"}, "missing_lines": [337], "excluded_lines": [], "start_line": 319, "executed_branches": [[331, -319], [331, 332], [332, 333], [332, 335], [336, 339], [340, 331], [340, 341]], "missing_branches": [[336, 337]]}, "filter_segments_by_distance": {"executed_lines": [425, 428, 429, 430, 432, 437, 441, 444, 445, 447, 454, 455, 457, 458, 464, 465, 475], "summary": {"covered_lines": 17, "num_statements": 20, "percent_covered": 80.0, "percent_covered_display": "80", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 85.0, "percent_statements_covered_display": "85", "num_branches": 10, "num_partial_branches": 3, "covered_branches": 7, "missing_branches": 3, "percent_branches_covered": 70.0, "percent_branches_covered_display": "70"}, "missing_lines": [426, 442, 473], "excluded_lines": [], "start_line": 344, "executed_branches": [[425, 428], [429, 430], [429, 432], [441, 444], [457, 458], [457, 464], [464, 465]], "missing_branches": [[425, 426], [441, 442], [464, 473]]}, "": {"executed_lines": [1, 3, 5, 6, 7, 9, 12, 90, 151, 201, 263, 291, 306, 319, 344], "summary": {"covered_lines": 15, "num_statements": 15, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 3, 5, 6, 7, 9, 12, 56, 58, 59, 60, 61, 62, 64, 65, 66, 67, 69, 70, 71, 72, 73, 75, 76, 77, 78, 80, 81, 87, 90, 105, 107, 108, 109, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 122, 123, 124, 125, 127, 129, 130, 133, 135, 137, 140, 142, 143, 144, 146, 151, 190, 191, 193, 194, 195, 196, 197, 198, 201, 251, 252, 255, 256, 257, 260, 263, 275, 276, 277, 279, 280, 282, 283, 284, 286, 288, 291, 298, 299, 300, 301, 302, 306, 313, 314, 315, 316, 319, 327, 328, 329, 331, 332, 333, 335, 336, 339, 340, 341, 344, 425, 428, 429, 430, 432, 437, 441, 444, 445, 447, 454, 455, 457, 458, 464, 465, 475], "summary": {"covered_lines": 127, "num_statements": 132, "percent_covered": 94.31818181818181, "percent_covered_display": "94", "missing_lines": 5, "excluded_lines": 0, "percent_statements_covered": 96.21212121212122, "percent_statements_covered_display": "96", "num_branches": 44, "num_partial_branches": 5, "covered_branches": 39, "missing_branches": 5, "percent_branches_covered": 88.63636363636364, "percent_branches_covered_display": "89"}, "missing_lines": [303, 337, 426, 442, 473], "excluded_lines": [], "start_line": 1, "executed_branches": [[58, 59], [58, 64], [69, 70], [69, 75], [80, 81], [80, 87], [105, 107], [105, 129], [108, 109], [108, 111], [112, 113], [112, 127], [118, 119], [118, 122], [193, 194], [193, 198], [195, 196], [195, 198], [196, 195], [196, 197], [251, 252], [251, 255], [298, 299], [298, 301], [301, 302], [331, -319], [331, 332], [332, 333], [332, 335], [336, 339], [340, 331], [340, 341], [425, 428], [429, 430], [429, 432], [441, 444], [457, 458], [457, 464], [464, 465]], "missing_branches": [[301, 303], [336, 337], [425, 426], [441, 442], [464, 473]]}}}, "src\\supervision\\detection\\utils\\polygons.py": {"executed_lines": [1, 3, 4, 5, 8, 33, 34, 35, 36, 44, 95, 96, 97, 98, 100, 102, 103, 105, 106, 107, 108, 109, 112, 113, 114, 116], "summary": {"covered_lines": 26, "num_statements": 26, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 12, "num_partial_branches": 0, "covered_branches": 12, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [[33, 34], [33, 35], [95, 96], [95, 97], [97, 98], [97, 100], [102, 103], [102, 105], [107, 108], [107, 116], [112, 113], [112, 114]], "missing_branches": [], "functions": {"filter_polygons_by_area": {"executed_lines": [33, 34, 35, 36], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 8, "executed_branches": [[33, 34], [33, 35]], "missing_branches": []}, "approximate_polygon": {"executed_lines": [95, 96, 97, 98, 100, 102, 103, 105, 106, 107, 108, 109, 112, 113, 114, 116], "summary": {"covered_lines": 16, "num_statements": 16, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 10, "num_partial_branches": 0, "covered_branches": 10, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 44, "executed_branches": [[95, 96], [95, 97], [97, 98], [97, 100], [102, 103], [102, 105], [107, 108], [107, 116], [112, 113], [112, 114]], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 5, 8, 44], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 3, 4, 5, 8, 33, 34, 35, 36, 44, 95, 96, 97, 98, 100, 102, 103, 105, 106, 107, 108, 109, 112, 113, 114, 116], "summary": {"covered_lines": 26, "num_statements": 26, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 12, "num_partial_branches": 0, "covered_branches": 12, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [[33, 34], [33, 35], [95, 96], [95, 97], [97, 98], [97, 100], [102, 103], [102, 105], [107, 108], [107, 116], [112, 113], [112, 114]], "missing_branches": []}}}, "src\\supervision\\detection\\utils\\vlms.py": {"executed_lines": [1, 4, 38, 39, 40, 42, 43, 45, 46, 48, 49, 50, 51, 52, 54, 55, 60, 62, 65, 97, 98, 99, 100], "summary": {"covered_lines": 23, "num_statements": 23, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 14, "num_partial_branches": 0, "covered_branches": 14, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [[38, 39], [38, 42], [42, 43], [42, 45], [48, 49], [48, 62], [50, 51], [50, 60], [51, 52], [51, 54], [97, 98], [97, 100], [98, 97], [98, 99]], "missing_branches": [], "functions": {"edit_distance": {"executed_lines": [38, 39, 40, 42, 43, 45, 46, 48, 49, 50, 51, 52, 54, 55, 60, 62], "summary": {"covered_lines": 16, "num_statements": 16, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 10, "num_partial_branches": 0, "covered_branches": 10, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 4, "executed_branches": [[38, 39], [38, 42], [42, 43], [42, 45], [48, 49], [48, 62], [50, 51], [50, 60], [51, 52], [51, 54]], "missing_branches": []}, "fuzzy_match_index": {"executed_lines": [97, 98, 99, 100], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 65, "executed_branches": [[97, 98], [97, 100], [98, 97], [98, 99]], "missing_branches": []}, "": {"executed_lines": [1, 4, 65], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 4, 38, 39, 40, 42, 43, 45, 46, 48, 49, 50, 51, 52, 54, 55, 60, 62, 65, 97, 98, 99, 100], "summary": {"covered_lines": 23, "num_statements": 23, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 14, "num_partial_branches": 0, "covered_branches": 14, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [[38, 39], [38, 42], [42, 43], [42, 45], [48, 49], [48, 62], [50, 51], [50, 60], [51, 52], [51, 54], [97, 98], [97, 100], [98, 97], [98, 99]], "missing_branches": []}}}, "src\\supervision\\detection\\vlm.py": {"executed_lines": [1, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 16, 17, 18, 19, 22, 40, 41, 42, 43, 44, 45, 46, 47, 49, 50, 53, 54, 73, 87, 88, 89, 90, 91, 92, 93, 94, 96, 97, 100, 101, 116, 127, 138, 149, 163, 180, 188, 193, 194, 195, 198, 199, 200, 203, 206, 211, 215, 235, 237, 240, 241, 243, 244, 246, 247, 248, 249, 251, 252, 253, 254, 255, 257, 260, 276, 277, 278, 279, 280, 282, 283, 286, 288, 289, 292, 293, 295, 298, 300, 301, 302, 305, 337, 338, 340, 341, 342, 344, 345, 346, 347, 349, 350, 351, 352, 353, 354, 356, 357, 358, 359, 365, 366, 368, 369, 371, 372, 373, 374, 375, 377, 378, 380, 381, 383, 384, 386, 388, 389, 390, 391, 392, 394, 397, 424, 453, 454, 455, 457, 458, 463, 464, 465, 466, 467, 468, 469, 477, 479, 480, 482, 483, 484, 485, 486, 488, 489, 490, 492, 495, 519, 520, 521, 522, 525, 527, 528, 529, 530, 532, 533, 535, 537, 538, 539, 540, 541, 542, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 557, 558, 559, 561, 562, 563, 565, 567, 568, 572, 573, 575, 576, 577, 581, 582, 583, 584, 585, 586, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 605, 612, 621, 631, 632, 634, 636, 642, 645, 649, 652, 664, 665, 666, 667, 668, 669, 671, 672, 673, 674, 676, 677, 678, 680, 681, 682, 683, 685, 686, 687, 688, 690, 693, 706, 707, 708, 709, 711, 712, 714, 715, 717, 720, 723, 724, 725, 728, 734, 735, 738, 740, 741, 742, 743, 747, 748, 749, 750, 752, 753, 757, 758, 759, 764, 803, 805, 806, 807, 809, 810, 812, 813, 814, 815, 816, 818, 820, 821, 823, 828, 829, 831, 832, 833, 834, 835, 837, 840, 883, 885, 886, 887, 889, 898, 899, 901, 902, 903, 906, 909, 910, 918, 920, 923, 955, 956, 957, 961, 962, 964, 966, 967, 968, 970, 971, 972, 973, 975, 977, 978, 980], "summary": {"covered_lines": 344, "num_statements": 381, "percent_covered": 88.95463510848126, "percent_covered_display": "89", "missing_lines": 37, "excluded_lines": 4, "percent_statements_covered": 90.28871391076116, "percent_statements_covered_display": "90", "num_branches": 126, "num_partial_branches": 11, "covered_branches": 107, "missing_branches": 19, "percent_branches_covered": 84.92063492063492, "percent_branches_covered_display": "85"}, "missing_lines": [51, 55, 59, 60, 61, 62, 63, 64, 65, 66, 67, 98, 102, 103, 104, 105, 106, 107, 108, 109, 110, 181, 182, 183, 184, 189, 196, 201, 212, 284, 290, 296, 416, 588, 744, 745, 761], "excluded_lines": [311, 769, 851, 927], "executed_branches": [[180, 188], [188, 193], [194, 195], [194, 198], [195, 194], [199, 200], [199, 203], [200, 199], [243, 244], [243, 246], [251, 252], [251, 257], [278, 279], [278, 280], [283, 286], [289, 292], [295, 298], [346, 347], [346, 349], [353, 354], [353, 356], [365, 366], [365, 368], [371, 372], [371, 377], [372, 373], [372, 374], [377, 378], [377, 380], [388, 389], [388, 394], [457, 458], [457, 463], [465, 466], [465, 479], [467, 465], [467, 468], [482, 483], [482, 488], [521, 522], [521, 525], [527, 528], [527, 532], [532, 533], [532, 537], [537, 538], [537, 544], [544, 545], [544, 561], [547, 548], [547, 557], [548, 547], [548, 549], [561, 562], [561, 567], [567, 568], [572, 573], [572, 575], [593, 594], [593, 598], [594, 593], [594, 595], [631, 632], [631, 634], [671, 672], [671, 690], [673, 674], [673, 676], [680, 681], [680, 682], [682, 683], [685, 686], [685, 687], [687, 688], [711, 712], [711, 714], [714, 715], [714, 717], [735, 738], [735, 740], [752, 753], [806, 807], [806, 809], [812, 813], [812, 820], [813, 814], [813, 815], [820, 821], [820, 823], [831, 832], [831, 837], [886, 887], [886, 889], [898, 899], [898, 901], [909, 910], [909, 918], [956, 957], [956, 961], [961, 962], [961, 964], [966, 967], [966, 977], [967, 968], [967, 970], [977, 978], [977, 980]], "missing_branches": [[59, 60], [59, 61], [61, 62], [61, 67], [102, 103], [102, 104], [104, 105], [104, 110], [180, 181], [188, 189], [195, 196], [200, 201], [283, 284], [289, 290], [295, 296], [567, 588], [682, 685], [687, 671], [752, 761]], "functions": {"LMM.list": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [51], "excluded_lines": [], "start_line": 50, "executed_branches": [], "missing_branches": []}, "LMM.from_value": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 10, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 10, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 4, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [55, 59, 60, 61, 62, 63, 64, 65, 66, 67], "excluded_lines": [], "start_line": 54, "executed_branches": [], "missing_branches": [[59, 60], [59, 61], [61, 62], [61, 67]]}, "VLM.list": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [98], "excluded_lines": [], "start_line": 97, "executed_branches": [], "missing_branches": []}, "VLM.from_value": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 9, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 9, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 4, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [102, 103, 104, 105, 106, 107, 108, 109, 110], "excluded_lines": [], "start_line": 101, "executed_branches": [], "missing_branches": [[102, 103], [102, 104], [104, 105], [104, 110]]}, "_validate_vlm_parameters": {"executed_lines": [180, 188, 193, 194, 195, 198, 199, 200, 203], "summary": {"covered_lines": 9, "num_statements": 16, "percent_covered": 60.714285714285715, "percent_covered_display": "61", "missing_lines": 7, "excluded_lines": 0, "percent_statements_covered": 56.25, "percent_statements_covered_display": "56", "num_branches": 12, "num_partial_branches": 4, "covered_branches": 8, "missing_branches": 4, "percent_branches_covered": 66.66666666666667, "percent_branches_covered_display": "67"}, "missing_lines": [181, 182, 183, 184, 189, 196, 201], "excluded_lines": [], "start_line": 163, "executed_branches": [[180, 188], [188, 193], [194, 195], [194, 198], [195, 194], [199, 200], [199, 203], [200, 199]], "missing_branches": [[180, 181], [188, 189], [195, 196], [200, 201]]}, "validate_vlm_parameters": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [212], "excluded_lines": [], "start_line": 211, "executed_branches": [], "missing_branches": []}, "from_paligemma": {"executed_lines": [235, 237, 240, 241, 243, 244, 246, 247, 248, 249, 251, 252, 253, 254, 255, 257], "summary": {"covered_lines": 16, "num_statements": 16, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 215, "executed_branches": [[243, 244], [243, 246], [251, 252], [251, 257]], "missing_branches": []}, "recover_truncated_qwen_2_5_vl_response": {"executed_lines": [276, 277, 278, 279, 280, 282, 283, 286, 288, 289, 292, 293, 295, 298, 300, 301, 302], "summary": {"covered_lines": 17, "num_statements": 20, "percent_covered": 78.57142857142857, "percent_covered_display": "79", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 85.0, "percent_statements_covered_display": "85", "num_branches": 8, "num_partial_branches": 3, "covered_branches": 5, "missing_branches": 3, "percent_branches_covered": 62.5, "percent_branches_covered_display": "62"}, "missing_lines": [284, 290, 296], "excluded_lines": [], "start_line": 260, "executed_branches": [[278, 279], [278, 280], [283, 286], [289, 292], [295, 298]], "missing_branches": [[283, 284], [289, 290], [295, 296]]}, "from_qwen_2_5_vl": {"executed_lines": [337, 338, 340, 341, 342, 344, 345, 346, 347, 349, 350, 351, 352, 353, 354, 356, 357, 358, 359, 365, 366, 368, 369, 371, 372, 373, 374, 375, 377, 378, 380, 381, 383, 384, 386, 388, 389, 390, 391, 392, 394], "summary": {"covered_lines": 41, "num_statements": 41, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 1, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 14, "num_partial_branches": 0, "covered_branches": 14, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [311], "start_line": 305, "executed_branches": [[346, 347], [346, 349], [353, 354], [353, 356], [365, 366], [365, 368], [371, 372], [371, 377], [372, 373], [372, 374], [377, 378], [377, 380], [388, 389], [388, 394]], "missing_branches": []}, "from_qwen_3_vl": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [416], "excluded_lines": [], "start_line": 397, "executed_branches": [], "missing_branches": []}, "from_deepseek_vl_2": {"executed_lines": [453, 454, 455, 457, 458, 463, 464, 465, 466, 467, 468, 469, 477, 479, 480, 482, 483, 484, 485, 486, 488, 489, 490, 492], "summary": {"covered_lines": 24, "num_statements": 24, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 8, "num_partial_branches": 0, "covered_branches": 8, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 424, "executed_branches": [[457, 458], [457, 463], [465, 466], [465, 479], [467, 465], [467, 468], [482, 483], [482, 488]], "missing_branches": []}, "from_florence_2": {"executed_lines": [519, 520, 521, 522, 525, 527, 528, 529, 530, 532, 533, 535, 537, 538, 539, 540, 541, 542, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 557, 558, 559, 561, 562, 563, 565, 567, 568, 572, 573, 575, 576, 577, 581, 582, 583, 584, 585, 586], "summary": {"covered_lines": 48, "num_statements": 49, "percent_covered": 97.10144927536231, "percent_covered_display": "97", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 97.95918367346938, "percent_statements_covered_display": "98", "num_branches": 20, "num_partial_branches": 1, "covered_branches": 19, "missing_branches": 1, "percent_branches_covered": 95.0, "percent_branches_covered_display": "95"}, "missing_lines": [588], "excluded_lines": [], "start_line": 495, "executed_branches": [[521, 522], [521, 525], [527, 528], [527, 532], [532, 533], [532, 537], [537, 538], [537, 544], [544, 545], [544, 561], [547, 548], [547, 557], [548, 547], [548, 549], [561, 562], [561, 567], [567, 568], [572, 573], [572, 575]], "missing_branches": [[567, 588]]}, "_extract_json_from_backticks": {"executed_lines": [592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 591, "executed_branches": [[593, 594], [593, 598], [594, 593], [594, 595]], "missing_branches": []}, "_build_empty_gemini_2_5_result": {"executed_lines": [612], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 605, "executed_branches": [], "missing_branches": []}, "_parse_gemini_2_5_item": {"executed_lines": [631, 632, 634, 636, 642, 645, 649], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 621, "executed_branches": [[631, 632], [631, 634]], "missing_branches": []}, "_collect_gemini_2_5_items": {"executed_lines": [664, 665, 666, 667, 668, 669, 671, 672, 673, 674, 676, 677, 678, 680, 681, 682, 683, 685, 686, 687, 688, 690], "summary": {"covered_lines": 22, "num_statements": 22, "percent_covered": 94.11764705882354, "percent_covered_display": "94", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 12, "num_partial_branches": 2, "covered_branches": 10, "missing_branches": 2, "percent_branches_covered": 83.33333333333333, "percent_branches_covered_display": "83"}, "missing_lines": [], "excluded_lines": [], "start_line": 652, "executed_branches": [[671, 672], [671, 690], [673, 674], [673, 676], [680, 681], [680, 682], [682, 683], [685, 686], [685, 687], [687, 688]], "missing_branches": [[682, 685], [687, 671]]}, "_filter_gemini_2_5_results": {"executed_lines": [706, 707, 708, 709, 711, 712, 714, 715, 717], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 693, "executed_branches": [[711, 712], [711, 714], [714, 715], [714, 717]], "missing_branches": []}, "_build_gemini_2_5_class_id": {"executed_lines": [723, 724, 725], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 720, "executed_branches": [], "missing_branches": []}, "_decode_mask_for_item": {"executed_lines": [734, 735, 738, 740, 741, 742, 743, 747, 748, 749, 750, 752, 753, 757, 758, 759], "summary": {"covered_lines": 16, "num_statements": 19, "percent_covered": 82.6086956521739, "percent_covered_display": "83", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 84.21052631578948, "percent_statements_covered_display": "84", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [744, 745, 761], "excluded_lines": [], "start_line": 728, "executed_branches": [[735, 738], [735, 740], [752, 753]], "missing_branches": [[752, 761]]}, "from_google_gemini_2_0": {"executed_lines": [803, 805, 806, 807, 809, 810, 812, 813, 814, 815, 816, 818, 820, 821, 823, 828, 829, 831, 832, 833, 834, 835, 837], "summary": {"covered_lines": 23, "num_statements": 23, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 1, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 10, "num_partial_branches": 0, "covered_branches": 10, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [769], "start_line": 764, "executed_branches": [[806, 807], [806, 809], [812, 813], [812, 820], [813, 814], [813, 815], [820, 821], [820, 823], [831, 832], [831, 837]], "missing_branches": []}, "from_google_gemini_2_5": {"executed_lines": [883, 885, 886, 887, 889, 898, 899, 901, 902, 903, 906, 909, 910, 918, 920], "summary": {"covered_lines": 15, "num_statements": 15, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 1, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 6, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [851], "start_line": 840, "executed_branches": [[886, 887], [886, 889], [898, 899], [898, 901], [909, 910], [909, 918]], "missing_branches": []}, "from_moondream": {"executed_lines": [955, 956, 957, 961, 962, 964, 966, 967, 968, 970, 971, 972, 973, 975, 977, 978, 980], "summary": {"covered_lines": 17, "num_statements": 17, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 1, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 10, "num_partial_branches": 0, "covered_branches": 10, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [927], "start_line": 923, "executed_branches": [[956, 957], [956, 961], [961, 962], [961, 964], [966, 967], [966, 977], [967, 968], [967, 970], [977, 978], [977, 980]], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 16, 17, 18, 19, 22, 40, 41, 42, 43, 44, 45, 46, 47, 49, 50, 53, 54, 73, 87, 88, 89, 90, 91, 92, 93, 94, 96, 97, 100, 101, 116, 127, 138, 149, 163, 206, 211, 215, 260, 305, 397, 424, 495, 591, 605, 621, 652, 693, 720, 728, 764, 840, 923], "summary": {"covered_lines": 65, "num_statements": 65, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"LMM": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 11, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 11, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 4, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [51, 55, 59, 60, 61, 62, 63, 64, 65, 66, 67], "excluded_lines": [], "start_line": 22, "executed_branches": [], "missing_branches": [[59, 60], [59, 61], [61, 62], [61, 67]]}, "VLM": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 10, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 10, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 4, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [98, 102, 103, 104, 105, 106, 107, 108, 109, 110], "excluded_lines": [], "start_line": 73, "executed_branches": [], "missing_branches": [[102, 103], [102, 104], [104, 105], [104, 110]]}, "": {"executed_lines": [1, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 16, 17, 18, 19, 22, 40, 41, 42, 43, 44, 45, 46, 47, 49, 50, 53, 54, 73, 87, 88, 89, 90, 91, 92, 93, 94, 96, 97, 100, 101, 116, 127, 138, 149, 163, 180, 188, 193, 194, 195, 198, 199, 200, 203, 206, 211, 215, 235, 237, 240, 241, 243, 244, 246, 247, 248, 249, 251, 252, 253, 254, 255, 257, 260, 276, 277, 278, 279, 280, 282, 283, 286, 288, 289, 292, 293, 295, 298, 300, 301, 302, 305, 337, 338, 340, 341, 342, 344, 345, 346, 347, 349, 350, 351, 352, 353, 354, 356, 357, 358, 359, 365, 366, 368, 369, 371, 372, 373, 374, 375, 377, 378, 380, 381, 383, 384, 386, 388, 389, 390, 391, 392, 394, 397, 424, 453, 454, 455, 457, 458, 463, 464, 465, 466, 467, 468, 469, 477, 479, 480, 482, 483, 484, 485, 486, 488, 489, 490, 492, 495, 519, 520, 521, 522, 525, 527, 528, 529, 530, 532, 533, 535, 537, 538, 539, 540, 541, 542, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 557, 558, 559, 561, 562, 563, 565, 567, 568, 572, 573, 575, 576, 577, 581, 582, 583, 584, 585, 586, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 605, 612, 621, 631, 632, 634, 636, 642, 645, 649, 652, 664, 665, 666, 667, 668, 669, 671, 672, 673, 674, 676, 677, 678, 680, 681, 682, 683, 685, 686, 687, 688, 690, 693, 706, 707, 708, 709, 711, 712, 714, 715, 717, 720, 723, 724, 725, 728, 734, 735, 738, 740, 741, 742, 743, 747, 748, 749, 750, 752, 753, 757, 758, 759, 764, 803, 805, 806, 807, 809, 810, 812, 813, 814, 815, 816, 818, 820, 821, 823, 828, 829, 831, 832, 833, 834, 835, 837, 840, 883, 885, 886, 887, 889, 898, 899, 901, 902, 903, 906, 909, 910, 918, 920, 923, 955, 956, 957, 961, 962, 964, 966, 967, 968, 970, 971, 972, 973, 975, 977, 978, 980], "summary": {"covered_lines": 344, "num_statements": 360, "percent_covered": 94.35146443514644, "percent_covered_display": "94", "missing_lines": 16, "excluded_lines": 4, "percent_statements_covered": 95.55555555555556, "percent_statements_covered_display": "96", "num_branches": 118, "num_partial_branches": 11, "covered_branches": 107, "missing_branches": 11, "percent_branches_covered": 90.67796610169492, "percent_branches_covered_display": "91"}, "missing_lines": [181, 182, 183, 184, 189, 196, 201, 212, 284, 290, 296, 416, 588, 744, 745, 761], "excluded_lines": [311, 769, 851, 927], "start_line": 1, "executed_branches": [[180, 188], [188, 193], [194, 195], [194, 198], [195, 194], [199, 200], [199, 203], [200, 199], [243, 244], [243, 246], [251, 252], [251, 257], [278, 279], [278, 280], [283, 286], [289, 292], [295, 298], [346, 347], [346, 349], [353, 354], [353, 356], [365, 366], [365, 368], [371, 372], [371, 377], [372, 373], [372, 374], [377, 378], [377, 380], [388, 389], [388, 394], [457, 458], [457, 463], [465, 466], [465, 479], [467, 465], [467, 468], [482, 483], [482, 488], [521, 522], [521, 525], [527, 528], [527, 532], [532, 533], [532, 537], [537, 538], [537, 544], [544, 545], [544, 561], [547, 548], [547, 557], [548, 547], [548, 549], [561, 562], [561, 567], [567, 568], [572, 573], [572, 575], [593, 594], [593, 598], [594, 593], [594, 595], [631, 632], [631, 634], [671, 672], [671, 690], [673, 674], [673, 676], [680, 681], [680, 682], [682, 683], [685, 686], [685, 687], [687, 688], [711, 712], [711, 714], [714, 715], [714, 717], [735, 738], [735, 740], [752, 753], [806, 807], [806, 809], [812, 813], [812, 820], [813, 814], [813, 815], [820, 821], [820, 823], [831, 832], [831, 837], [886, 887], [886, 889], [898, 899], [898, 901], [909, 910], [909, 918], [956, 957], [956, 961], [961, 962], [961, 964], [966, 967], [966, 977], [967, 968], [967, 970], [977, 978], [977, 980]], "missing_branches": [[180, 181], [188, 189], [195, 196], [200, 201], [283, 284], [289, 290], [295, 296], [567, 588], [682, 685], [687, 671], [752, 761]]}}}, "src\\supervision\\draw\\__init__.py": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "src\\supervision\\draw\\base.py": {"executed_lines": [1, 3, 4, 5, 7, 8], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"": {"executed_lines": [1, 3, 4, 5, 7, 8], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 3, 4, 5, 7, 8], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "src\\supervision\\draw\\color.py": {"executed_lines": [1, 3, 4, 6, 8, 10, 34, 54, 57, 58, 59, 60, 61, 62, 65, 66, 100, 101, 102, 103, 105, 106, 134, 135, 136, 137, 138, 139, 141, 142, 143, 145, 146, 148, 149, 171, 172, 173, 174, 176, 177, 199, 200, 201, 202, 204, 205, 227, 228, 229, 232, 234, 235, 257, 258, 259, 262, 264, 283, 284, 285, 287, 302, 304, 319, 321, 336, 338, 353, 355, 356, 357, 359, 360, 361, 363, 364, 365, 367, 368, 369, 371, 372, 373, 375, 376, 377, 379, 380, 381, 383, 384, 385, 387, 388, 390, 391, 392, 393, 395, 396, 405, 406, 407, 409, 410, 428, 430, 431, 451, 452, 455, 456, 475, 476, 478, 479, 512, 532, 534, 535, 537, 547, 568, 571, 572], "summary": {"covered_lines": 126, "num_statements": 137, "percent_covered": 90.9090909090909, "percent_covered_display": "91", "missing_lines": 11, "excluded_lines": 0, "percent_statements_covered": 91.97080291970804, "percent_statements_covered_display": "92", "num_branches": 28, "num_partial_branches": 2, "covered_branches": 24, "missing_branches": 4, "percent_branches_covered": 85.71428571428571, "percent_branches_covered_display": "86"}, "missing_lines": [449, 453, 501, 503, 504, 506, 508, 533, 544, 569, 570], "excluded_lines": [], "executed_branches": [[59, 60], [59, 61], [61, -57], [61, 62], [136, 137], [136, 138], [138, 139], [138, 141], [141, 142], [141, 145], [172, 173], [172, 174], [200, 201], [200, 202], [228, 229], [228, 232], [258, 259], [258, 262], [283, 284], [283, 285], [391, 392], [391, 393], [532, 534], [568, 571]], "missing_branches": [[503, 504], [503, 506], [532, 533], [568, 569]], "functions": {"_validate_color_hex": {"executed_lines": [58, 59, 60, 61, 62], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 57, "executed_branches": [[59, 60], [59, 61], [61, -57], [61, 62]], "missing_branches": []}, "Color.from_hex": {"executed_lines": [134, 135, 136, 137, 138, 139, 141, 142, 143, 145, 146], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 6, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 106, "executed_branches": [[136, 137], [136, 138], [138, 139], [138, 141], [141, 142], [141, 145]], "missing_branches": []}, "Color.from_rgb_tuple": {"executed_lines": [171, 172, 173, 174], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 149, "executed_branches": [[172, 173], [172, 174]], "missing_branches": []}, "Color.from_bgr_tuple": {"executed_lines": [199, 200, 201, 202], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 177, "executed_branches": [[200, 201], [200, 202]], "missing_branches": []}, "Color.from_rgba_tuple": {"executed_lines": [227, 228, 229, 232], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 205, "executed_branches": [[228, 229], [228, 232]], "missing_branches": []}, "Color.from_bgra_tuple": {"executed_lines": [257, 258, 259, 262], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 235, "executed_branches": [[258, 259], [258, 262]], "missing_branches": []}, "Color.as_hex": {"executed_lines": [283, 284, 285], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 264, "executed_branches": [[283, 284], [283, 285]], "missing_branches": []}, "Color.as_rgb": {"executed_lines": [302], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 287, "executed_branches": [], "missing_branches": []}, "Color.as_bgr": {"executed_lines": [319], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 304, "executed_branches": [], "missing_branches": []}, "Color.as_rgba": {"executed_lines": [336], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 321, "executed_branches": [], "missing_branches": []}, "Color.as_bgra": {"executed_lines": [353], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 338, "executed_branches": [], "missing_branches": []}, "Color.WHITE": {"executed_lines": [357], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 356, "executed_branches": [], "missing_branches": []}, "Color.BLACK": {"executed_lines": [361], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 360, "executed_branches": [], "missing_branches": []}, "Color.GREY": {"executed_lines": [365], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 364, "executed_branches": [], "missing_branches": []}, "Color.RED": {"executed_lines": [369], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 368, "executed_branches": [], "missing_branches": []}, "Color.GREEN": {"executed_lines": [373], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 372, "executed_branches": [], "missing_branches": []}, "Color.BLUE": {"executed_lines": [377], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 376, "executed_branches": [], "missing_branches": []}, "Color.YELLOW": {"executed_lines": [381], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 380, "executed_branches": [], "missing_branches": []}, "Color.ROBOFLOW": {"executed_lines": [385], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 384, "executed_branches": [], "missing_branches": []}, "Color.__hash__": {"executed_lines": [388], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 387, "executed_branches": [], "missing_branches": []}, "Color.__repr__": {"executed_lines": [391, 392, 393], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 390, "executed_branches": [[391, 392], [391, 393]], "missing_branches": []}, "Color.__eq__": {"executed_lines": [396], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 395, "executed_branches": [], "missing_branches": []}, "ColorPalette.DEFAULT": {"executed_lines": [428], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 410, "executed_branches": [], "missing_branches": []}, "ColorPalette.ROBOFLOW": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [449], "excluded_lines": [], "start_line": 431, "executed_branches": [], "missing_branches": []}, "ColorPalette.LEGACY": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [453], "excluded_lines": [], "start_line": 452, "executed_branches": [], "missing_branches": []}, "ColorPalette.from_hex": {"executed_lines": [475, 476], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 456, "executed_branches": [], "missing_branches": []}, "ColorPalette.from_matplotlib": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 5, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 5, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 2, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [501, 503, 504, 506, 508], "excluded_lines": [], "start_line": 479, "executed_branches": [], "missing_branches": [[503, 504], [503, 506]]}, "ColorPalette.by_idx": {"executed_lines": [532, 534, 535], "summary": {"covered_lines": 3, "num_statements": 4, "percent_covered": 66.66666666666667, "percent_covered_display": "67", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 75.0, "percent_statements_covered_display": "75", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [533], "excluded_lines": [], "start_line": 512, "executed_branches": [[532, 534]], "missing_branches": [[532, 533]]}, "ColorPalette.__len__": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [544], "excluded_lines": [], "start_line": 537, "executed_branches": [], "missing_branches": []}, "unify_to_bgr": {"executed_lines": [568, 571, 572], "summary": {"covered_lines": 3, "num_statements": 5, "percent_covered": 57.142857142857146, "percent_covered_display": "57", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 60.0, "percent_statements_covered_display": "60", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [569, 570], "excluded_lines": [], "start_line": 547, "executed_branches": [[568, 571]], "missing_branches": [[568, 569]]}, "": {"executed_lines": [1, 3, 4, 6, 8, 10, 34, 54, 57, 65, 66, 100, 101, 102, 103, 105, 106, 148, 149, 176, 177, 204, 205, 234, 235, 264, 287, 304, 321, 338, 355, 356, 359, 360, 363, 364, 367, 368, 371, 372, 375, 376, 379, 380, 383, 384, 387, 390, 395, 405, 406, 407, 409, 410, 430, 431, 451, 452, 455, 456, 478, 479, 512, 537, 547], "summary": {"covered_lines": 65, "num_statements": 65, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"Color": {"executed_lines": [134, 135, 136, 137, 138, 139, 141, 142, 143, 145, 146, 171, 172, 173, 174, 199, 200, 201, 202, 227, 228, 229, 232, 257, 258, 259, 262, 283, 284, 285, 302, 319, 336, 353, 357, 361, 365, 369, 373, 377, 381, 385, 388, 391, 392, 393, 396], "summary": {"covered_lines": 47, "num_statements": 47, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 18, "num_partial_branches": 0, "covered_branches": 18, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 66, "executed_branches": [[136, 137], [136, 138], [138, 139], [138, 141], [141, 142], [141, 145], [172, 173], [172, 174], [200, 201], [200, 202], [228, 229], [228, 232], [258, 259], [258, 262], [283, 284], [283, 285], [391, 392], [391, 393]], "missing_branches": []}, "ColorPalette": {"executed_lines": [428, 475, 476, 532, 534, 535], "summary": {"covered_lines": 6, "num_statements": 15, "percent_covered": 36.8421052631579, "percent_covered_display": "37", "missing_lines": 9, "excluded_lines": 0, "percent_statements_covered": 40.0, "percent_statements_covered_display": "40", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 3, "percent_branches_covered": 25.0, "percent_branches_covered_display": "25"}, "missing_lines": [449, 453, 501, 503, 504, 506, 508, 533, 544], "excluded_lines": [], "start_line": 406, "executed_branches": [[532, 534]], "missing_branches": [[503, 504], [503, 506], [532, 533]]}, "": {"executed_lines": [1, 3, 4, 6, 8, 10, 34, 54, 57, 58, 59, 60, 61, 62, 65, 66, 100, 101, 102, 103, 105, 106, 148, 149, 176, 177, 204, 205, 234, 235, 264, 287, 304, 321, 338, 355, 356, 359, 360, 363, 364, 367, 368, 371, 372, 375, 376, 379, 380, 383, 384, 387, 390, 395, 405, 406, 407, 409, 410, 430, 431, 451, 452, 455, 456, 478, 479, 512, 537, 547, 568, 571, 572], "summary": {"covered_lines": 73, "num_statements": 75, "percent_covered": 96.29629629629629, "percent_covered_display": "96", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 97.33333333333333, "percent_statements_covered_display": "97", "num_branches": 6, "num_partial_branches": 1, "covered_branches": 5, "missing_branches": 1, "percent_branches_covered": 83.33333333333333, "percent_branches_covered_display": "83"}, "missing_lines": [569, 570], "excluded_lines": [], "start_line": 1, "executed_branches": [[59, 60], [59, 61], [61, -57], [61, 62], [568, 571]], "missing_branches": [[568, 569]]}}}, "src\\supervision\\draw\\utils.py": {"executed_lines": [1, 3, 4, 6, 7, 8, 10, 11, 14, 44, 62, 69, 72, 114, 166, 183, 186, 189, 206, 209, 210, 211, 215, 218, 267, 274, 276, 283, 288, 298, 301, 371, 396], "summary": {"covered_lines": 33, "num_statements": 78, "percent_covered": 35.714285714285715, "percent_covered_display": "36", "missing_lines": 45, "excluded_lines": 0, "percent_statements_covered": 42.30769230769231, "percent_statements_covered_display": "42", "num_branches": 20, "num_partial_branches": 2, "covered_branches": 2, "missing_branches": 18, "percent_branches_covered": 10.0, "percent_branches_covered_display": "10"}, "missing_lines": [34, 41, 90, 91, 99, 100, 107, 111, 132, 133, 134, 136, 140, 147, 148, 155, 156, 163, 207, 284, 325, 326, 327, 328, 331, 332, 334, 335, 336, 337, 339, 345, 348, 349, 350, 355, 358, 359, 360, 366, 368, 393, 418, 419, 420], "excluded_lines": [], "executed_branches": [[206, 209], [283, 288]], "missing_branches": [[90, 91], [90, 99], [147, 148], [147, 155], [155, 156], [155, 163], [206, 207], [283, 284], [325, 326], [325, 331], [326, 327], [326, 328], [331, 332], [331, 334], [339, 345], [339, 348], [418, 419], [418, 420]], "functions": {"draw_line": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 2, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [34, 41], "excluded_lines": [], "start_line": 14, "executed_branches": [], "missing_branches": []}, "draw_rectangle": {"executed_lines": [62, 69], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 44, "executed_branches": [], "missing_branches": []}, "draw_filled_rectangle": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 6, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 6, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 2, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [90, 91, 99, 100, 107, 111], "excluded_lines": [], "start_line": 72, "executed_branches": [], "missing_branches": [[90, 91], [90, 99]]}, "draw_rounded_rectangle": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 10, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 10, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 4, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [132, 133, 134, 136, 140, 147, 148, 155, 156, 163], "excluded_lines": [], "start_line": 114, "executed_branches": [], "missing_branches": [[147, 148], [147, 155], [155, 156], [155, 163]]}, "draw_polygon": {"executed_lines": [183, 186], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 166, "executed_branches": [], "missing_branches": []}, "draw_filled_polygon": {"executed_lines": [206, 209, 210, 211, 215], "summary": {"covered_lines": 5, "num_statements": 6, "percent_covered": 75.0, "percent_covered_display": "75", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 83.33333333333333, "percent_statements_covered_display": "83", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [207], "excluded_lines": [], "start_line": 189, "executed_branches": [[206, 209]], "missing_branches": [[206, 207]]}, "draw_text": {"executed_lines": [267, 274, 276, 283, 288, 298], "summary": {"covered_lines": 6, "num_statements": 7, "percent_covered": 77.77777777777777, "percent_covered_display": "78", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 85.71428571428571, "percent_statements_covered_display": "86", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [284], "excluded_lines": [], "start_line": 218, "executed_branches": [[283, 288]], "missing_branches": [[283, 284]]}, "draw_image": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 21, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 21, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 8, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 8, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [325, 326, 327, 328, 331, 332, 334, 335, 336, 337, 339, 345, 348, 349, 350, 355, 358, 359, 360, 366, 368], "excluded_lines": [], "start_line": 301, "executed_branches": [], "missing_branches": [[325, 326], [325, 331], [326, 327], [326, 328], [331, 332], [331, 334], [339, 345], [339, 348]]}, "calculate_optimal_text_scale": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [393], "excluded_lines": [], "start_line": 371, "executed_branches": [], "missing_branches": []}, "calculate_optimal_line_thickness": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 3, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 2, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [418, 419, 420], "excluded_lines": [], "start_line": 396, "executed_branches": [], "missing_branches": [[418, 419], [418, 420]]}, "": {"executed_lines": [1, 3, 4, 6, 7, 8, 10, 11, 14, 44, 72, 114, 166, 189, 218, 301, 371, 396], "summary": {"covered_lines": 18, "num_statements": 18, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 3, 4, 6, 7, 8, 10, 11, 14, 44, 62, 69, 72, 114, 166, 183, 186, 189, 206, 209, 210, 211, 215, 218, 267, 274, 276, 283, 288, 298, 301, 371, 396], "summary": {"covered_lines": 33, "num_statements": 78, "percent_covered": 35.714285714285715, "percent_covered_display": "36", "missing_lines": 45, "excluded_lines": 0, "percent_statements_covered": 42.30769230769231, "percent_statements_covered_display": "42", "num_branches": 20, "num_partial_branches": 2, "covered_branches": 2, "missing_branches": 18, "percent_branches_covered": 10.0, "percent_branches_covered_display": "10"}, "missing_lines": [34, 41, 90, 91, 99, 100, 107, 111, 132, 133, 134, 136, 140, 147, 148, 155, 156, 163, 207, 284, 325, 326, 327, 328, 331, 332, 334, 335, 336, 337, 339, 345, 348, 349, 350, 355, 358, 359, 360, 366, 368, 393, 418, 419, 420], "excluded_lines": [], "start_line": 1, "executed_branches": [[206, 209], [283, 288]], "missing_branches": [[90, 91], [90, 99], [147, 148], [147, 155], [155, 156], [155, 163], [206, 207], [283, 284], [325, 326], [325, 331], [326, 327], [326, 328], [331, 332], [331, 334], [339, 345], [339, 348], [418, 419], [418, 420]]}}}, "src\\supervision\\geometry\\__init__.py": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "src\\supervision\\geometry\\core.py": {"executed_lines": [1, 3, 4, 5, 8, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 24, 25, 29, 30, 50, 51, 53, 60, 62, 72, 73, 95, 96, 98, 99, 106, 107, 108, 110, 111, 118, 123, 138, 139, 140, 141, 142, 145, 146, 170, 171, 172, 173, 175, 176, 180, 181, 182, 184, 185, 186, 188, 189, 196], "summary": {"covered_lines": 59, "num_statements": 64, "percent_covered": 92.1875, "percent_covered_display": "92", "missing_lines": 5, "excluded_lines": 0, "percent_statements_covered": 92.1875, "percent_statements_covered_display": "92", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [26, 69, 177, 178, 197], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"Position.list": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [26], "excluded_lines": [], "start_line": 25, "executed_branches": [], "missing_branches": []}, "Point.as_xy_int_tuple": {"executed_lines": [60], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 53, "executed_branches": [], "missing_branches": []}, "Point.as_xy_float_tuple": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [69], "excluded_lines": [], "start_line": 62, "executed_branches": [], "missing_branches": []}, "Vector.magnitude": {"executed_lines": [106, 107, 108], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 99, "executed_branches": [], "missing_branches": []}, "Vector.center": {"executed_lines": [118], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 111, "executed_branches": [], "missing_branches": []}, "Vector.cross_product": {"executed_lines": [138, 139, 140, 141, 142], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 123, "executed_branches": [], "missing_branches": []}, "Rect.from_xyxy": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 2, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [177, 178], "excluded_lines": [], "start_line": 176, "executed_branches": [], "missing_branches": []}, "Rect.top_left": {"executed_lines": [182], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 181, "executed_branches": [], "missing_branches": []}, "Rect.bottom_right": {"executed_lines": [186], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 185, "executed_branches": [], "missing_branches": []}, "Rect.pad": {"executed_lines": [189], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 188, "executed_branches": [], "missing_branches": []}, "Rect.as_xyxy_int_tuple": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [197], "excluded_lines": [], "start_line": 196, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 5, 8, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 24, 25, 29, 30, 50, 51, 53, 62, 72, 73, 95, 96, 98, 99, 110, 111, 123, 145, 146, 170, 171, 172, 173, 175, 176, 180, 181, 184, 185, 188, 196], "summary": {"covered_lines": 46, "num_statements": 46, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"Position": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [26], "excluded_lines": [], "start_line": 8, "executed_branches": [], "missing_branches": []}, "Point": {"executed_lines": [60], "summary": {"covered_lines": 1, "num_statements": 2, "percent_covered": 50.0, "percent_covered_display": "50", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 50.0, "percent_statements_covered_display": "50", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [69], "excluded_lines": [], "start_line": 30, "executed_branches": [], "missing_branches": []}, "Vector": {"executed_lines": [106, 107, 108, 118, 138, 139, 140, 141, 142], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 73, "executed_branches": [], "missing_branches": []}, "Rect": {"executed_lines": [182, 186, 189], "summary": {"covered_lines": 3, "num_statements": 6, "percent_covered": 50.0, "percent_covered_display": "50", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 50.0, "percent_statements_covered_display": "50", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [177, 178, 197], "excluded_lines": [], "start_line": 146, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 5, 8, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 24, 25, 29, 30, 50, 51, 53, 62, 72, 73, 95, 96, 98, 99, 110, 111, 123, 145, 146, 170, 171, 172, 173, 175, 176, 180, 181, 184, 185, 188, 196], "summary": {"covered_lines": 46, "num_statements": 46, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "src\\supervision\\geometry\\utils.py": {"executed_lines": [1, 2, 4, 7, 40, 43, 44, 45, 48, 49, 51], "summary": {"covered_lines": 11, "num_statements": 14, "percent_covered": 72.22222222222223, "percent_covered_display": "72", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 78.57142857142857, "percent_statements_covered_display": "79", "num_branches": 4, "num_partial_branches": 2, "covered_branches": 2, "missing_branches": 2, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [41, 46, 47], "excluded_lines": [], "executed_branches": [[40, 43], [45, 48]], "missing_branches": [[40, 41], [45, 46]], "functions": {"get_polygon_center": {"executed_lines": [40, 43, 44, 45, 48, 49, 51], "summary": {"covered_lines": 7, "num_statements": 10, "percent_covered": 64.28571428571429, "percent_covered_display": "64", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 70.0, "percent_statements_covered_display": "70", "num_branches": 4, "num_partial_branches": 2, "covered_branches": 2, "missing_branches": 2, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [41, 46, 47], "excluded_lines": [], "start_line": 7, "executed_branches": [[40, 43], [45, 48]], "missing_branches": [[40, 41], [45, 46]]}, "": {"executed_lines": [1, 2, 4, 7], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 2, 4, 7, 40, 43, 44, 45, 48, 49, 51], "summary": {"covered_lines": 11, "num_statements": 14, "percent_covered": 72.22222222222223, "percent_covered_display": "72", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 78.57142857142857, "percent_statements_covered_display": "79", "num_branches": 4, "num_partial_branches": 2, "covered_branches": 2, "missing_branches": 2, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [41, 46, 47], "excluded_lines": [], "start_line": 1, "executed_branches": [[40, 43], [45, 48]], "missing_branches": [[40, 41], [45, 46]]}}}, "src\\supervision\\key_points\\__init__.py": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "src\\supervision\\key_points\\annotators.py": {"executed_lines": [1, 3, 4, 5, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19, 21, 24, 25, 26, 30, 37, 47, 48, 50, 51, 87, 88, 89, 91, 92, 93, 95, 99, 100, 108, 111, 117, 136, 137, 138, 140, 141, 208, 209, 210, 212, 213, 227, 228, 230, 231, 232, 233, 234, 236, 237, 238, 239, 240, 241, 243, 244, 248, 250, 258, 261, 268, 274, 277, 279, 280, 281, 282, 283, 284, 285, 291, 294, 295, 296, 298, 299, 300, 301, 304, 307, 308, 309, 313, 315, 319, 321, 322, 325, 327, 328, 330, 334, 335, 338, 339, 340, 342, 346, 347, 348, 349, 351, 352, 355, 356, 357, 358, 359, 360, 364, 367, 370, 383, 402, 403, 405, 406, 448, 449, 450, 452, 453, 454, 455, 467, 468, 471, 482, 500, 501, 503, 504, 547, 548, 549, 551, 552, 553, 565, 568, 581, 583, 602, 603, 605, 606, 648, 649, 650, 652, 653, 655, 656, 657, 658, 661, 662, 663, 664, 666, 667, 668, 669, 670, 673, 674, 675, 677, 678, 679, 680, 681, 683, 684, 686, 687, 689, 691, 692, 693, 694, 696, 697, 700, 703, 709, 740, 907, 908, 929, 930, 936, 937, 940, 941, 942, 946, 947, 948, 950, 952, 953, 957, 959, 960, 965, 966, 967, 971, 972], "summary": {"covered_lines": 217, "num_statements": 282, "percent_covered": 75.62814070351759, "percent_covered_display": "76", "missing_lines": 65, "excluded_lines": 0, "percent_statements_covered": 76.95035460992908, "percent_statements_covered_display": "77", "num_branches": 116, "num_partial_branches": 10, "covered_branches": 84, "missing_branches": 32, "percent_branches_covered": 72.41379310344827, "percent_branches_covered_display": "72"}, "missing_lines": [27, 94, 214, 219, 220, 224, 225, 226, 242, 286, 320, 323, 324, 326, 341, 350, 659, 671, 732, 733, 734, 735, 736, 737, 738, 827, 828, 830, 831, 832, 834, 835, 836, 837, 839, 840, 842, 845, 846, 847, 851, 852, 853, 854, 855, 856, 858, 859, 860, 861, 862, 864, 865, 867, 879, 881, 882, 883, 885, 888, 894, 905, 915, 921, 922], "excluded_lines": [], "executed_branches": [[88, 89], [88, 91], [91, 92], [91, 108], [92, 91], [92, 93], [93, 95], [95, 99], [95, 100], [209, 210], [209, 212], [212, 213], [212, 258], [213, 227], [227, 228], [227, 230], [231, 232], [231, 234], [236, 212], [236, 237], [241, 243], [243, 244], [243, 250], [244, 248], [244, 250], [279, 280], [279, 281], [281, 282], [281, 283], [283, 284], [283, 285], [285, 291], [300, 301], [300, 304], [308, 309], [308, 313], [319, 321], [325, 327], [338, 339], [338, 367], [339, 338], [339, 340], [340, 342], [342, 346], [342, 347], [349, 351], [356, 339], [356, 357], [358, 359], [358, 360], [449, 450], [449, 452], [453, 454], [453, 467], [454, 453], [454, 455], [548, 549], [548, 551], [551, 552], [551, 565], [552, 551], [552, 553], [649, 650], [649, 652], [655, 656], [655, 696], [656, 655], [656, 657], [658, 661], [670, 673], [936, 937], [936, 940], [940, 941], [940, 950], [941, 942], [941, 946], [946, 947], [946, 948], [952, 953], [952, 957], [965, 966], [965, 972], [966, 967], [966, 971]], "missing_branches": [[93, 94], [213, 214], [219, 220], [219, 224], [224, 225], [224, 226], [241, 242], [285, 286], [319, 320], [325, 326], [340, 341], [349, 350], [658, 659], [670, 671], [831, 832], [831, 834], [839, 840], [839, 864], [851, 839], [851, 852], [852, 853], [852, 855], [853, 854], [853, 858], [855, 856], [855, 858], [864, 865], [864, 867], [881, 882], [881, 885], [885, 888], [885, 905]], "functions": {"BaseKeyPointAnnotator.annotate": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [27], "excluded_lines": [], "start_line": 26, "executed_branches": [], "missing_branches": []}, "VertexAnnotator.__init__": {"executed_lines": [47, 48], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 37, "executed_branches": [], "missing_branches": []}, "VertexAnnotator.annotate": {"executed_lines": [87, 88, 89, 91, 92, 93, 95, 99, 100, 108], "summary": {"covered_lines": 10, "num_statements": 11, "percent_covered": 90.47619047619048, "percent_covered_display": "90", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 90.9090909090909, "percent_statements_covered_display": "91", "num_branches": 10, "num_partial_branches": 1, "covered_branches": 9, "missing_branches": 1, "percent_branches_covered": 90.0, "percent_branches_covered_display": "90"}, "missing_lines": [94], "excluded_lines": [], "start_line": 51, "executed_branches": [[88, 89], [88, 91], [91, 92], [91, 108], [92, 91], [92, 93], [93, 95], [95, 99], [95, 100]], "missing_branches": [[93, 94]]}, "EdgeAnnotator.__init__": {"executed_lines": [136, 137, 138], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 117, "executed_branches": [], "missing_branches": []}, "EdgeAnnotator.annotate": {"executed_lines": [208, 209, 210, 212, 213, 227, 228, 230, 231, 232, 233, 234, 236, 237, 238, 239, 240, 241, 243, 244, 248, 250, 258], "summary": {"covered_lines": 23, "num_statements": 30, "percent_covered": 75.0, "percent_covered_display": "75", "missing_lines": 7, "excluded_lines": 0, "percent_statements_covered": 76.66666666666667, "percent_statements_covered_display": "77", "num_branches": 22, "num_partial_branches": 2, "covered_branches": 16, "missing_branches": 6, "percent_branches_covered": 72.72727272727273, "percent_branches_covered_display": "73"}, "missing_lines": [214, 219, 220, 224, 225, 226, 242], "excluded_lines": [], "start_line": 141, "executed_branches": [[209, 210], [209, 212], [212, 213], [212, 258], [213, 227], [227, 228], [227, 230], [231, 232], [231, 234], [236, 212], [236, 237], [241, 243], [243, 244], [243, 250], [244, 248], [244, 250]], "missing_branches": [[213, 214], [219, 220], [219, 224], [224, 225], [224, 226], [241, 242]]}, "_BaseVertexEllipseAnnotator.__init__": {"executed_lines": [274, 277, 279, 280, 281, 282, 283, 284, 285, 291, 294, 295, 296], "summary": {"covered_lines": 13, "num_statements": 14, "percent_covered": 90.9090909090909, "percent_covered_display": "91", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 92.85714285714286, "percent_statements_covered_display": "93", "num_branches": 8, "num_partial_branches": 1, "covered_branches": 7, "missing_branches": 1, "percent_branches_covered": 87.5, "percent_branches_covered_display": "88"}, "missing_lines": [286], "excluded_lines": [], "start_line": 268, "executed_branches": [[279, 280], [279, 281], [281, 282], [281, 283], [283, 284], [283, 285], [285, 291]], "missing_branches": [[285, 286]]}, "_BaseVertexEllipseAnnotator._get_covariances": {"executed_lines": [299, 300, 301, 304, 307, 308, 309, 313], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 298, "executed_branches": [[300, 301], [300, 304], [308, 309], [308, 313]], "missing_branches": []}, "_BaseVertexEllipseAnnotator._decompose_covariance": {"executed_lines": [319, 321, 322, 325, 327, 328], "summary": {"covered_lines": 6, "num_statements": 10, "percent_covered": 57.142857142857146, "percent_covered_display": "57", "missing_lines": 4, "excluded_lines": 0, "percent_statements_covered": 60.0, "percent_statements_covered_display": "60", "num_branches": 4, "num_partial_branches": 2, "covered_branches": 2, "missing_branches": 2, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [320, 323, 324, 326], "excluded_lines": [], "start_line": 315, "executed_branches": [[319, 321], [325, 327]], "missing_branches": [[319, 320], [325, 326]]}, "_BaseVertexEllipseAnnotator._iter_ellipse_params": {"executed_lines": [334, 335, 338, 339, 340, 342, 346, 347, 348, 349, 351, 352, 355, 356, 357, 358, 359, 360, 364, 367], "summary": {"covered_lines": 20, "num_statements": 22, "percent_covered": 88.88888888888889, "percent_covered_display": "89", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 90.9090909090909, "percent_statements_covered_display": "91", "num_branches": 14, "num_partial_branches": 2, "covered_branches": 12, "missing_branches": 2, "percent_branches_covered": 85.71428571428571, "percent_branches_covered_display": "86"}, "missing_lines": [341, 350], "excluded_lines": [], "start_line": 330, "executed_branches": [[338, 339], [338, 367], [339, 338], [339, 340], [340, 342], [342, 346], [342, 347], [349, 351], [356, 339], [356, 357], [358, 359], [358, 360]], "missing_branches": [[340, 341], [349, 350]]}, "VertexEllipseAreaAnnotator.__init__": {"executed_lines": [402, 403], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 383, "executed_branches": [], "missing_branches": []}, "VertexEllipseAreaAnnotator.annotate": {"executed_lines": [448, 449, 450, 452, 453, 454, 455, 467, 468], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 6, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 406, "executed_branches": [[449, 450], [449, 452], [453, 454], [453, 467], [454, 453], [454, 455]], "missing_branches": []}, "VertexEllipseOutlineAnnotator.__init__": {"executed_lines": [500, 501], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 482, "executed_branches": [], "missing_branches": []}, "VertexEllipseOutlineAnnotator.annotate": {"executed_lines": [547, 548, 549, 551, 552, 553, 565], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 6, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 504, "executed_branches": [[548, 549], [548, 551], [551, 552], [551, 565], [552, 551], [552, 553]], "missing_branches": []}, "VertexEllipseHaloAnnotator.__init__": {"executed_lines": [602, 603], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 583, "executed_branches": [], "missing_branches": []}, "VertexEllipseHaloAnnotator.annotate": {"executed_lines": [648, 649, 650, 652, 653, 655, 656, 657, 658, 661, 662, 663, 664, 666, 667, 668, 669, 670, 673, 674, 675, 677, 678, 679, 680, 681, 683, 684, 686, 687, 689, 691, 692, 693, 694, 696, 697], "summary": {"covered_lines": 37, "num_statements": 39, "percent_covered": 91.83673469387755, "percent_covered_display": "92", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 94.87179487179488, "percent_statements_covered_display": "95", "num_branches": 10, "num_partial_branches": 2, "covered_branches": 8, "missing_branches": 2, "percent_branches_covered": 80.0, "percent_branches_covered_display": "80"}, "missing_lines": [659, 671], "excluded_lines": [], "start_line": 606, "executed_branches": [[649, 650], [649, 652], [655, 656], [655, 696], [656, 655], [656, 657], [658, 661], [670, 673]], "missing_branches": [[658, 659], [670, 671]]}, "VertexLabelAnnotator.__init__": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 7, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 7, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [732, 733, 734, 735, 736, 737, 738], "excluded_lines": [], "start_line": 709, "executed_branches": [], "missing_branches": []}, "VertexLabelAnnotator.annotate": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 37, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 37, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 18, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 18, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [827, 828, 830, 831, 832, 834, 835, 836, 837, 839, 840, 842, 845, 846, 847, 851, 852, 853, 854, 855, 856, 858, 859, 860, 861, 862, 864, 865, 867, 879, 881, 882, 883, 885, 888, 894, 905], "excluded_lines": [], "start_line": 740, "executed_branches": [], "missing_branches": [[831, 832], [831, 834], [839, 840], [839, 864], [851, 839], [851, 852], [852, 853], [852, 855], [853, 854], [853, 858], [855, 856], [855, 858], [864, 865], [864, 867], [881, 882], [881, 885], [885, 888], [885, 905]]}, "VertexLabelAnnotator.get_text_bounding_box": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 3, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [915, 921, 922], "excluded_lines": [], "start_line": 908, "executed_branches": [], "missing_branches": []}, "VertexLabelAnnotator._resolve_labels": {"executed_lines": [936, 937, 940, 941, 942, 946, 947, 948, 950, 952, 953, 957], "summary": {"covered_lines": 12, "num_statements": 12, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 10, "num_partial_branches": 0, "covered_branches": 10, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 930, "executed_branches": [[936, 937], [936, 940], [940, 941], [940, 950], [941, 942], [941, 946], [946, 947], [946, 948], [952, 953], [952, 957]], "missing_branches": []}, "VertexLabelAnnotator._resolve_color_list": {"executed_lines": [965, 966, 967, 971, 972], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 960, "executed_branches": [[965, 966], [965, 972], [966, 967], [966, 971]], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 5, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19, 21, 24, 25, 26, 30, 37, 50, 51, 111, 117, 140, 141, 261, 268, 298, 315, 330, 370, 383, 405, 406, 471, 482, 503, 504, 568, 581, 583, 605, 606, 700, 703, 709, 740, 907, 908, 929, 930, 959, 960], "summary": {"covered_lines": 56, "num_statements": 56, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"BaseKeyPointAnnotator": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [27], "excluded_lines": [], "start_line": 24, "executed_branches": [], "missing_branches": []}, "VertexAnnotator": {"executed_lines": [47, 48, 87, 88, 89, 91, 92, 93, 95, 99, 100, 108], "summary": {"covered_lines": 12, "num_statements": 13, "percent_covered": 91.30434782608695, "percent_covered_display": "91", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 92.3076923076923, "percent_statements_covered_display": "92", "num_branches": 10, "num_partial_branches": 1, "covered_branches": 9, "missing_branches": 1, "percent_branches_covered": 90.0, "percent_branches_covered_display": "90"}, "missing_lines": [94], "excluded_lines": [], "start_line": 30, "executed_branches": [[88, 89], [88, 91], [91, 92], [91, 108], [92, 91], [92, 93], [93, 95], [95, 99], [95, 100]], "missing_branches": [[93, 94]]}, "EdgeAnnotator": {"executed_lines": [136, 137, 138, 208, 209, 210, 212, 213, 227, 228, 230, 231, 232, 233, 234, 236, 237, 238, 239, 240, 241, 243, 244, 248, 250, 258], "summary": {"covered_lines": 26, "num_statements": 33, "percent_covered": 76.36363636363636, "percent_covered_display": "76", "missing_lines": 7, "excluded_lines": 0, "percent_statements_covered": 78.78787878787878, "percent_statements_covered_display": "79", "num_branches": 22, "num_partial_branches": 2, "covered_branches": 16, "missing_branches": 6, "percent_branches_covered": 72.72727272727273, "percent_branches_covered_display": "73"}, "missing_lines": [214, 219, 220, 224, 225, 226, 242], "excluded_lines": [], "start_line": 111, "executed_branches": [[209, 210], [209, 212], [212, 213], [212, 258], [213, 227], [227, 228], [227, 230], [231, 232], [231, 234], [236, 212], [236, 237], [241, 243], [243, 244], [243, 250], [244, 248], [244, 250]], "missing_branches": [[213, 214], [219, 220], [219, 224], [224, 225], [224, 226], [241, 242]]}, "_BaseVertexEllipseAnnotator": {"executed_lines": [274, 277, 279, 280, 281, 282, 283, 284, 285, 291, 294, 295, 296, 299, 300, 301, 304, 307, 308, 309, 313, 319, 321, 322, 325, 327, 328, 334, 335, 338, 339, 340, 342, 346, 347, 348, 349, 351, 352, 355, 356, 357, 358, 359, 360, 364, 367], "summary": {"covered_lines": 47, "num_statements": 54, "percent_covered": 85.71428571428571, "percent_covered_display": "86", "missing_lines": 7, "excluded_lines": 0, "percent_statements_covered": 87.03703703703704, "percent_statements_covered_display": "87", "num_branches": 30, "num_partial_branches": 5, "covered_branches": 25, "missing_branches": 5, "percent_branches_covered": 83.33333333333333, "percent_branches_covered_display": "83"}, "missing_lines": [286, 320, 323, 324, 326, 341, 350], "excluded_lines": [], "start_line": 261, "executed_branches": [[279, 280], [279, 281], [281, 282], [281, 283], [283, 284], [283, 285], [285, 291], [300, 301], [300, 304], [308, 309], [308, 313], [319, 321], [325, 327], [338, 339], [338, 367], [339, 338], [339, 340], [340, 342], [342, 346], [342, 347], [349, 351], [356, 339], [356, 357], [358, 359], [358, 360]], "missing_branches": [[285, 286], [319, 320], [325, 326], [340, 341], [349, 350]]}, "VertexEllipseAreaAnnotator": {"executed_lines": [402, 403, 448, 449, 450, 452, 453, 454, 455, 467, 468], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 6, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 370, "executed_branches": [[449, 450], [449, 452], [453, 454], [453, 467], [454, 453], [454, 455]], "missing_branches": []}, "VertexEllipseOutlineAnnotator": {"executed_lines": [500, 501, 547, 548, 549, 551, 552, 553, 565], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 6, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 471, "executed_branches": [[548, 549], [548, 551], [551, 552], [551, 565], [552, 551], [552, 553]], "missing_branches": []}, "VertexEllipseHaloAnnotator": {"executed_lines": [602, 603, 648, 649, 650, 652, 653, 655, 656, 657, 658, 661, 662, 663, 664, 666, 667, 668, 669, 670, 673, 674, 675, 677, 678, 679, 680, 681, 683, 684, 686, 687, 689, 691, 692, 693, 694, 696, 697], "summary": {"covered_lines": 39, "num_statements": 41, "percent_covered": 92.15686274509804, "percent_covered_display": "92", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 95.1219512195122, "percent_statements_covered_display": "95", "num_branches": 10, "num_partial_branches": 2, "covered_branches": 8, "missing_branches": 2, "percent_branches_covered": 80.0, "percent_branches_covered_display": "80"}, "missing_lines": [659, 671], "excluded_lines": [], "start_line": 568, "executed_branches": [[649, 650], [649, 652], [655, 656], [655, 696], [656, 655], [656, 657], [658, 661], [670, 673]], "missing_branches": [[658, 659], [670, 671]]}, "VertexLabelAnnotator": {"executed_lines": [936, 937, 940, 941, 942, 946, 947, 948, 950, 952, 953, 957, 965, 966, 967, 971, 972], "summary": {"covered_lines": 17, "num_statements": 64, "percent_covered": 32.291666666666664, "percent_covered_display": "32", "missing_lines": 47, "excluded_lines": 0, "percent_statements_covered": 26.5625, "percent_statements_covered_display": "27", "num_branches": 32, "num_partial_branches": 0, "covered_branches": 14, "missing_branches": 18, "percent_branches_covered": 43.75, "percent_branches_covered_display": "44"}, "missing_lines": [732, 733, 734, 735, 736, 737, 738, 827, 828, 830, 831, 832, 834, 835, 836, 837, 839, 840, 842, 845, 846, 847, 851, 852, 853, 854, 855, 856, 858, 859, 860, 861, 862, 864, 865, 867, 879, 881, 882, 883, 885, 888, 894, 905, 915, 921, 922], "excluded_lines": [], "start_line": 703, "executed_branches": [[936, 937], [936, 940], [940, 941], [940, 950], [941, 942], [941, 946], [946, 947], [946, 948], [952, 953], [952, 957], [965, 966], [965, 972], [966, 967], [966, 971]], "missing_branches": [[831, 832], [831, 834], [839, 840], [839, 864], [851, 839], [851, 852], [852, 853], [852, 855], [853, 854], [853, 858], [855, 856], [855, 858], [864, 865], [864, 867], [881, 882], [881, 885], [885, 888], [885, 905]]}, "": {"executed_lines": [1, 3, 4, 5, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19, 21, 24, 25, 26, 30, 37, 50, 51, 111, 117, 140, 141, 261, 268, 298, 315, 330, 370, 383, 405, 406, 471, 482, 503, 504, 568, 581, 583, 605, 606, 700, 703, 709, 740, 907, 908, 929, 930, 959, 960], "summary": {"covered_lines": 56, "num_statements": 56, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "src\\supervision\\key_points\\core.py": {"executed_lines": [1, 3, 4, 5, 6, 8, 9, 11, 12, 13, 14, 18, 19, 21, 23, 31, 32, 39, 42, 46, 47, 48, 51, 63, 65, 67, 68, 69, 71, 74, 75, 238, 239, 240, 241, 242, 243, 245, 277, 278, 279, 283, 288, 290, 291, 292, 293, 294, 295, 296, 298, 299, 308, 309, 317, 318, 325, 343, 345, 359, 360, 369, 370, 372, 387, 388, 430, 431, 436, 438, 440, 441, 443, 444, 445, 446, 448, 449, 450, 451, 452, 453, 454, 455, 457, 458, 460, 464, 471, 472, 550, 551, 552, 553, 556, 573, 576, 577, 578, 579, 580, 581, 582, 586, 587, 589, 590, 592, 597, 598, 636, 637, 666, 667, 669, 670, 674, 675, 679, 680, 687, 694, 695, 745, 746, 830, 864, 865, 866, 870, 871, 875, 876, 877, 883, 884, 885, 886, 887, 891, 892, 893, 894, 895, 896, 897, 901, 904, 905, 906, 907, 910, 911, 912, 914, 916, 925, 930, 931, 932, 934, 935, 937, 938, 939, 940, 942, 943, 944, 945, 947, 949, 959, 961, 971, 972, 977, 982, 985, 988, 989, 998, 1009, 1017, 1018, 1021, 1022, 1023, 1026, 1028, 1031, 1032, 1033, 1036, 1038, 1040, 1047, 1048, 1050, 1059, 1101, 1104, 1105, 1107, 1108, 1110, 1137, 1138, 1140, 1141, 1143, 1145, 1146, 1162, 1164, 1180, 1181, 1182, 1184, 1227, 1228, 1230, 1231, 1235, 1236, 1242, 1243, 1244, 1245, 1246, 1247, 1248, 1249, 1250, 1252, 1253, 1255, 1256, 1264, 1270, 1272, 1304, 1305, 1307, 1308, 1309, 1310, 1314, 1315, 1317, 1318, 1319, 1320, 1321, 1323, 1325, 1327, 1328, 1329, 1330, 1331, 1332, 1333, 1337, 1338, 1339, 1340, 1342], "summary": {"covered_lines": 268, "num_statements": 325, "percent_covered": 78.43551797040169, "percent_covered_display": "78", "missing_lines": 57, "excluded_lines": 0, "percent_statements_covered": 82.46153846153847, "percent_statements_covered_display": "82", "num_branches": 148, "num_partial_branches": 23, "covered_branches": 103, "missing_branches": 45, "percent_branches_covered": 69.5945945945946, "percent_branches_covered_display": "70"}, "missing_lines": [64, 66, 70, 311, 315, 319, 323, 371, 437, 439, 554, 562, 563, 564, 565, 566, 568, 574, 623, 624, 626, 627, 628, 630, 631, 634, 677, 681, 682, 683, 684, 685, 727, 728, 729, 730, 743, 808, 809, 810, 812, 820, 822, 828, 908, 955, 956, 957, 1010, 1011, 1012, 1015, 1016, 1027, 1037, 1102, 1335], "excluded_lines": [], "executed_branches": [[46, 47], [46, 48], [63, 65], [65, 67], [67, 68], [67, 69], [69, 71], [277, 278], [277, 290], [278, 279], [278, 283], [359, -345], [359, 360], [370, 372], [430, 431], [430, 436], [436, 438], [438, 440], [440, 441], [440, 443], [448, 449], [448, 460], [451, 452], [451, 454], [550, 551], [552, 553], [552, 573], [553, 556], [573, 576], [578, 579], [578, 592], [581, 582], [581, 589], [666, 667], [666, 669], [674, 675], [680, 687], [865, 866], [865, 870], [870, 871], [870, 875], [876, 877], [876, 883], [886, 887], [886, 891], [892, 893], [892, 894], [894, 895], [894, 906], [897, 901], [897, 904], [904, 894], [904, 905], [907, 910], [911, 912], [930, 931], [930, 932], [934, 935], [934, 937], [937, 938], [937, 939], [939, 940], [939, 942], [942, 943], [942, 944], [944, 945], [944, 947], [949, 959], [1009, 1017], [1017, 1018], [1017, 1038], [1018, 1021], [1018, 1028], [1022, 1023], [1026, 1038], [1028, 1031], [1032, 1033], [1036, 1038], [1101, 1104], [1104, 1105], [1104, 1107], [1137, 1138], [1137, 1140], [1140, 1141], [1227, 1228], [1227, 1230], [1230, 1231], [1230, 1235], [1235, 1236], [1235, 1242], [1244, 1245], [1244, 1246], [1252, 1253], [1252, 1255], [1304, 1305], [1304, 1307], [1308, 1309], [1308, 1314], [1327, 1328], [1327, 1329], [1329, 1330], [1331, 1332], [1331, 1333]], "missing_branches": [[63, 64], [65, 66], [69, 70], [370, 371], [436, 437], [438, 439], [550, 562], [553, 554], [562, 563], [562, 564], [564, 565], [564, 573], [565, 566], [565, 568], [573, 574], [623, 624], [623, 626], [674, 677], [680, 681], [682, 683], [682, 685], [727, 728], [727, 743], [728, 729], [728, 730], [808, 809], [808, 828], [809, 810], [809, 812], [907, 908], [911, 914], [949, 955], [1009, 1010], [1011, 1012], [1011, 1015], [1015, 1016], [1015, 1038], [1022, 1026], [1026, 1027], [1028, 1038], [1032, 1036], [1036, 1037], [1101, 1102], [1140, 1143], [1329, 1335]], "functions": {"_optional_array_equal": {"executed_lines": [46, 47, 48], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 42, "executed_branches": [[46, 47], [46, 48]], "missing_branches": []}, "_normalize_row_index": {"executed_lines": [63, 65, 67, 68, 69, 71], "summary": {"covered_lines": 6, "num_statements": 9, "percent_covered": 64.70588235294117, "percent_covered_display": "65", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 66.66666666666667, "percent_statements_covered_display": "67", "num_branches": 8, "num_partial_branches": 3, "covered_branches": 5, "missing_branches": 3, "percent_branches_covered": 62.5, "percent_branches_covered_display": "62"}, "missing_lines": [64, 66, 70], "excluded_lines": [], "start_line": 51, "executed_branches": [[63, 65], [65, 67], [67, 68], [67, 69], [69, 71]], "missing_branches": [[63, 64], [65, 66], [69, 70]]}, "KeyPoints.__init__": {"executed_lines": [277, 278, 279, 283, 288, 290, 291, 292, 293, 294, 295, 296], "summary": {"covered_lines": 12, "num_statements": 12, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 245, "executed_branches": [[277, 278], [277, 290], [278, 279], [278, 283]], "missing_branches": []}, "KeyPoints.__post_init__": {"executed_lines": [299], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 298, "executed_branches": [], "missing_branches": []}, "KeyPoints.confidence": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 2, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [319, 323], "excluded_lines": [], "start_line": 318, "executed_branches": [], "missing_branches": []}, "KeyPoints.__len__": {"executed_lines": [343], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 325, "executed_branches": [], "missing_branches": []}, "KeyPoints.__iter__": {"executed_lines": [359, 360], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 345, "executed_branches": [[359, -345], [359, 360]], "missing_branches": []}, "KeyPoints.__eq__": {"executed_lines": [370, 372], "summary": {"covered_lines": 2, "num_statements": 3, "percent_covered": 60.0, "percent_covered_display": "60", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 66.66666666666667, "percent_statements_covered_display": "67", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [371], "excluded_lines": [], "start_line": 369, "executed_branches": [[370, 372]], "missing_branches": [[370, 371]]}, "KeyPoints.from_inference": {"executed_lines": [430, 431, 436, 438, 440, 441, 443, 444, 445, 446, 448, 449, 450, 451, 452, 453, 454, 455, 457, 458, 460, 464], "summary": {"covered_lines": 22, "num_statements": 24, "percent_covered": 88.88888888888889, "percent_covered_display": "89", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 91.66666666666667, "percent_statements_covered_display": "92", "num_branches": 12, "num_partial_branches": 2, "covered_branches": 10, "missing_branches": 2, "percent_branches_covered": 83.33333333333333, "percent_branches_covered_display": "83"}, "missing_lines": [437, 439], "excluded_lines": [], "start_line": 388, "executed_branches": [[430, 431], [430, 436], [436, 438], [438, 440], [440, 441], [440, 443], [448, 449], [448, 460], [451, 452], [451, 454]], "missing_branches": [[436, 437], [438, 439]]}, "KeyPoints.from_mediapipe": {"executed_lines": [550, 551, 552, 553, 556, 573, 576, 577, 578, 579, 580, 581, 582, 586, 587, 589, 590, 592], "summary": {"covered_lines": 18, "num_statements": 26, "percent_covered": 61.36363636363637, "percent_covered_display": "61", "missing_lines": 8, "excluded_lines": 0, "percent_statements_covered": 69.23076923076923, "percent_statements_covered_display": "69", "num_branches": 18, "num_partial_branches": 3, "covered_branches": 9, "missing_branches": 9, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [554, 562, 563, 564, 565, 566, 568, 574], "excluded_lines": [], "start_line": 472, "executed_branches": [[550, 551], [552, 553], [552, 573], [553, 556], [573, 576], [578, 579], [578, 592], [581, 582], [581, 589]], "missing_branches": [[550, 562], [553, 554], [562, 563], [562, 564], [564, 565], [564, 573], [565, 566], [565, 568], [573, 574]]}, "KeyPoints.from_ultralytics": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 8, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 8, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 2, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [623, 624, 626, 627, 628, 630, 631, 634], "excluded_lines": [], "start_line": 598, "executed_branches": [], "missing_branches": [[623, 624], [623, 626]]}, "KeyPoints.from_yolo_nas": {"executed_lines": [666, 667, 669, 670, 674, 675, 679, 680, 687], "summary": {"covered_lines": 9, "num_statements": 15, "percent_covered": 56.52173913043478, "percent_covered_display": "57", "missing_lines": 6, "excluded_lines": 0, "percent_statements_covered": 60.0, "percent_statements_covered_display": "60", "num_branches": 8, "num_partial_branches": 2, "covered_branches": 4, "missing_branches": 4, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [677, 681, 682, 683, 684, 685], "excluded_lines": [], "start_line": 637, "executed_branches": [[666, 667], [666, 669], [674, 675], [680, 687]], "missing_branches": [[674, 677], [680, 681], [682, 683], [682, 685]]}, "KeyPoints.from_detectron2": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 5, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 5, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 4, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [727, 728, 729, 730, 743], "excluded_lines": [], "start_line": 695, "executed_branches": [], "missing_branches": [[727, 728], [727, 743], [728, 729], [728, 730]]}, "KeyPoints.from_transformers": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 7, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 7, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 4, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [808, 809, 810, 812, 820, 822, 828], "excluded_lines": [], "start_line": 746, "executed_branches": [], "missing_branches": [[808, 809], [808, 828], [809, 810], [809, 812]]}, "KeyPoints._get_by_2d_bool_mask": {"executed_lines": [864, 865, 866, 870, 871, 875, 876, 877, 883, 884, 885, 886, 887, 891, 892, 893, 894, 895, 896, 897, 901, 904, 905, 906, 907, 910, 911, 912, 914, 916], "summary": {"covered_lines": 30, "num_statements": 31, "percent_covered": 94.11764705882354, "percent_covered_display": "94", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 96.7741935483871, "percent_statements_covered_display": "97", "num_branches": 20, "num_partial_branches": 2, "covered_branches": 18, "missing_branches": 2, "percent_branches_covered": 90.0, "percent_branches_covered_display": "90"}, "missing_lines": [908], "excluded_lines": [], "start_line": 830, "executed_branches": [[865, 866], [865, 870], [870, 871], [870, 875], [876, 877], [876, 883], [886, 887], [886, 891], [892, 893], [892, 894], [894, 895], [894, 906], [897, 901], [897, 904], [904, 894], [904, 905], [907, 910], [911, 912]], "missing_branches": [[907, 908], [911, 914]]}, "KeyPoints._normalize_getitem_index": {"executed_lines": [930, 931, 932, 934, 935, 937, 938, 939, 940, 942, 943, 944, 945, 947, 949, 959], "summary": {"covered_lines": 16, "num_statements": 19, "percent_covered": 87.87878787878788, "percent_covered_display": "88", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 84.21052631578948, "percent_statements_covered_display": "84", "num_branches": 14, "num_partial_branches": 1, "covered_branches": 13, "missing_branches": 1, "percent_branches_covered": 92.85714285714286, "percent_branches_covered_display": "93"}, "missing_lines": [955, 956, 957], "excluded_lines": [], "start_line": 925, "executed_branches": [[930, 931], [930, 932], [934, 935], [934, 937], [937, 938], [937, 939], [939, 940], [939, 942], [942, 943], [942, 944], [944, 945], [944, 947], [949, 959]], "missing_branches": [[949, 955]]}, "KeyPoints._select_fields": {"executed_lines": [971, 972, 977, 982, 985, 988, 989], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 961, "executed_branches": [], "missing_branches": []}, "KeyPoints._reshape_selected": {"executed_lines": [1009, 1017, 1018, 1021, 1022, 1023, 1026, 1028, 1031, 1032, 1033, 1036, 1038], "summary": {"covered_lines": 13, "num_statements": 20, "percent_covered": 57.5, "percent_covered_display": "58", "missing_lines": 7, "excluded_lines": 0, "percent_statements_covered": 65.0, "percent_statements_covered_display": "65", "num_branches": 20, "num_partial_branches": 6, "covered_branches": 10, "missing_branches": 10, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [1010, 1011, 1012, 1015, 1016, 1027, 1037], "excluded_lines": [], "start_line": 998, "executed_branches": [[1009, 1017], [1017, 1018], [1017, 1038], [1018, 1021], [1018, 1028], [1022, 1023], [1026, 1038], [1028, 1031], [1032, 1033], [1036, 1038]], "missing_branches": [[1009, 1010], [1011, 1012], [1011, 1015], [1015, 1016], [1015, 1038], [1022, 1026], [1026, 1027], [1028, 1038], [1032, 1036], [1036, 1037]]}, "KeyPoints._getitem_by_normalized_index": {"executed_lines": [1047, 1048, 1050], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1040, "executed_branches": [], "missing_branches": []}, "KeyPoints.__getitem__": {"executed_lines": [1101, 1104, 1105, 1107, 1108], "summary": {"covered_lines": 5, "num_statements": 6, "percent_covered": 80.0, "percent_covered_display": "80", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 83.33333333333333, "percent_statements_covered_display": "83", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [1102], "excluded_lines": [], "start_line": 1059, "executed_branches": [[1101, 1104], [1104, 1105], [1104, 1107]], "missing_branches": [[1101, 1102]]}, "KeyPoints.__setitem__": {"executed_lines": [1137, 1138, 1140, 1141, 1143], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 88.88888888888889, "percent_covered_display": "89", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [], "excluded_lines": [], "start_line": 1110, "executed_branches": [[1137, 1138], [1137, 1140], [1140, 1141]], "missing_branches": [[1140, 1143]]}, "KeyPoints.empty": {"executed_lines": [1162], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1146, "executed_branches": [], "missing_branches": []}, "KeyPoints.is_empty": {"executed_lines": [1180, 1181, 1182], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1164, "executed_branches": [], "missing_branches": []}, "KeyPoints.with_nms": {"executed_lines": [1227, 1228, 1230, 1231, 1235, 1236, 1242, 1243, 1244, 1245, 1246, 1247, 1248, 1249, 1250, 1252, 1253, 1255, 1256, 1264, 1270], "summary": {"covered_lines": 21, "num_statements": 21, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 10, "num_partial_branches": 0, "covered_branches": 10, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1184, "executed_branches": [[1227, 1228], [1227, 1230], [1230, 1231], [1230, 1235], [1235, 1236], [1235, 1242], [1244, 1245], [1244, 1246], [1252, 1253], [1252, 1255]], "missing_branches": []}, "KeyPoints.as_detections": {"executed_lines": [1304, 1305, 1307, 1308, 1309, 1310, 1314, 1315, 1317, 1318, 1319, 1320, 1321, 1323, 1325, 1327, 1328, 1329, 1330, 1331, 1332, 1333, 1337, 1338, 1339, 1340, 1342], "summary": {"covered_lines": 27, "num_statements": 28, "percent_covered": 94.73684210526316, "percent_covered_display": "95", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 96.42857142857143, "percent_statements_covered_display": "96", "num_branches": 10, "num_partial_branches": 1, "covered_branches": 9, "missing_branches": 1, "percent_branches_covered": 90.0, "percent_branches_covered_display": "90"}, "missing_lines": [1335], "excluded_lines": [], "start_line": 1272, "executed_branches": [[1304, 1305], [1304, 1307], [1308, 1309], [1308, 1314], [1327, 1328], [1327, 1329], [1329, 1330], [1331, 1332], [1331, 1333]], "missing_branches": [[1329, 1335]]}, "": {"executed_lines": [1, 3, 4, 5, 6, 8, 9, 11, 12, 13, 14, 18, 19, 21, 23, 31, 32, 39, 42, 51, 74, 75, 238, 239, 240, 241, 242, 243, 245, 298, 308, 309, 317, 318, 325, 345, 369, 387, 388, 471, 472, 597, 598, 636, 637, 694, 695, 745, 746, 830, 925, 961, 998, 1040, 1059, 1110, 1145, 1146, 1164, 1184, 1272], "summary": {"covered_lines": 61, "num_statements": 61, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"KeyPoints": {"executed_lines": [277, 278, 279, 283, 288, 290, 291, 292, 293, 294, 295, 296, 299, 343, 359, 360, 370, 372, 430, 431, 436, 438, 440, 441, 443, 444, 445, 446, 448, 449, 450, 451, 452, 453, 454, 455, 457, 458, 460, 464, 550, 551, 552, 553, 556, 573, 576, 577, 578, 579, 580, 581, 582, 586, 587, 589, 590, 592, 666, 667, 669, 670, 674, 675, 679, 680, 687, 864, 865, 866, 870, 871, 875, 876, 877, 883, 884, 885, 886, 887, 891, 892, 893, 894, 895, 896, 897, 901, 904, 905, 906, 907, 910, 911, 912, 914, 916, 930, 931, 932, 934, 935, 937, 938, 939, 940, 942, 943, 944, 945, 947, 949, 959, 971, 972, 977, 982, 985, 988, 989, 1009, 1017, 1018, 1021, 1022, 1023, 1026, 1028, 1031, 1032, 1033, 1036, 1038, 1047, 1048, 1050, 1101, 1104, 1105, 1107, 1108, 1137, 1138, 1140, 1141, 1143, 1162, 1180, 1181, 1182, 1227, 1228, 1230, 1231, 1235, 1236, 1242, 1243, 1244, 1245, 1246, 1247, 1248, 1249, 1250, 1252, 1253, 1255, 1256, 1264, 1270, 1304, 1305, 1307, 1308, 1309, 1310, 1314, 1315, 1317, 1318, 1319, 1320, 1321, 1323, 1325, 1327, 1328, 1329, 1330, 1331, 1332, 1333, 1337, 1338, 1339, 1340, 1342], "summary": {"covered_lines": 198, "num_statements": 252, "percent_covered": 75.38461538461539, "percent_covered_display": "75", "missing_lines": 54, "excluded_lines": 0, "percent_statements_covered": 78.57142857142857, "percent_statements_covered_display": "79", "num_branches": 138, "num_partial_branches": 20, "covered_branches": 96, "missing_branches": 42, "percent_branches_covered": 69.56521739130434, "percent_branches_covered_display": "70"}, "missing_lines": [311, 315, 319, 323, 371, 437, 439, 554, 562, 563, 564, 565, 566, 568, 574, 623, 624, 626, 627, 628, 630, 631, 634, 677, 681, 682, 683, 684, 685, 727, 728, 729, 730, 743, 808, 809, 810, 812, 820, 822, 828, 908, 955, 956, 957, 1010, 1011, 1012, 1015, 1016, 1027, 1037, 1102, 1335], "excluded_lines": [], "start_line": 75, "executed_branches": [[277, 278], [277, 290], [278, 279], [278, 283], [359, -345], [359, 360], [370, 372], [430, 431], [430, 436], [436, 438], [438, 440], [440, 441], [440, 443], [448, 449], [448, 460], [451, 452], [451, 454], [550, 551], [552, 553], [552, 573], [553, 556], [573, 576], [578, 579], [578, 592], [581, 582], [581, 589], [666, 667], [666, 669], [674, 675], [680, 687], [865, 866], [865, 870], [870, 871], [870, 875], [876, 877], [876, 883], [886, 887], [886, 891], [892, 893], [892, 894], [894, 895], [894, 906], [897, 901], [897, 904], [904, 894], [904, 905], [907, 910], [911, 912], [930, 931], [930, 932], [934, 935], [934, 937], [937, 938], [937, 939], [939, 940], [939, 942], [942, 943], [942, 944], [944, 945], [944, 947], [949, 959], [1009, 1017], [1017, 1018], [1017, 1038], [1018, 1021], [1018, 1028], [1022, 1023], [1026, 1038], [1028, 1031], [1032, 1033], [1036, 1038], [1101, 1104], [1104, 1105], [1104, 1107], [1137, 1138], [1137, 1140], [1140, 1141], [1227, 1228], [1227, 1230], [1230, 1231], [1230, 1235], [1235, 1236], [1235, 1242], [1244, 1245], [1244, 1246], [1252, 1253], [1252, 1255], [1304, 1305], [1304, 1307], [1308, 1309], [1308, 1314], [1327, 1328], [1327, 1329], [1329, 1330], [1331, 1332], [1331, 1333]], "missing_branches": [[370, 371], [436, 437], [438, 439], [550, 562], [553, 554], [562, 563], [562, 564], [564, 565], [564, 573], [565, 566], [565, 568], [573, 574], [623, 624], [623, 626], [674, 677], [680, 681], [682, 683], [682, 685], [727, 728], [727, 743], [728, 729], [728, 730], [808, 809], [808, 828], [809, 810], [809, 812], [907, 908], [911, 914], [949, 955], [1009, 1010], [1011, 1012], [1011, 1015], [1015, 1016], [1015, 1038], [1022, 1026], [1026, 1027], [1028, 1038], [1032, 1036], [1036, 1037], [1101, 1102], [1140, 1143], [1329, 1335]]}, "": {"executed_lines": [1, 3, 4, 5, 6, 8, 9, 11, 12, 13, 14, 18, 19, 21, 23, 31, 32, 39, 42, 46, 47, 48, 51, 63, 65, 67, 68, 69, 71, 74, 75, 238, 239, 240, 241, 242, 243, 245, 298, 308, 309, 317, 318, 325, 345, 369, 387, 388, 471, 472, 597, 598, 636, 637, 694, 695, 745, 746, 830, 925, 961, 998, 1040, 1059, 1110, 1145, 1146, 1164, 1184, 1272], "summary": {"covered_lines": 70, "num_statements": 73, "percent_covered": 92.7710843373494, "percent_covered_display": "93", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 95.89041095890411, "percent_statements_covered_display": "96", "num_branches": 10, "num_partial_branches": 3, "covered_branches": 7, "missing_branches": 3, "percent_branches_covered": 70.0, "percent_branches_covered_display": "70"}, "missing_lines": [64, 66, 70], "excluded_lines": [], "start_line": 1, "executed_branches": [[46, 47], [46, 48], [63, 65], [65, 67], [67, 68], [67, 69], [69, 71]], "missing_branches": [[63, 64], [65, 66], [69, 70]]}}}, "src\\supervision\\key_points\\skeletons.py": {"executed_lines": [1, 3, 6, 7, 27, 65, 2624, 2639, 2640, 2642, 2643, 2645, 2646], "summary": {"covered_lines": 13, "num_statements": 13, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [[2642, -1], [2642, 2643]], "missing_branches": [], "functions": {"": {"executed_lines": [1, 3, 6, 7, 27, 65, 2624, 2639, 2640, 2642, 2643, 2645, 2646], "summary": {"covered_lines": 13, "num_statements": 13, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [[2642, -1], [2642, 2643]], "missing_branches": []}}, "classes": {"Skeleton": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 6, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 6, 7, 27, 65, 2624, 2639, 2640, 2642, 2643, 2645, 2646], "summary": {"covered_lines": 13, "num_statements": 13, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [[2642, -1], [2642, 2643]], "missing_branches": []}}}, "src\\supervision\\metrics\\__init__.py": {"executed_lines": [1, 6, 7, 11, 15, 16, 17, 23], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"": {"executed_lines": [1, 6, 7, 11, 15, 16, 17, 23], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 6, 7, 11, 15, 16, 17, 23], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "src\\supervision\\metrics\\core.py": {"executed_lines": [1, 3, 4, 5, 8, 13, 14, 21, 22, 28, 29, 36, 46, 47, 48, 51, 70, 71, 72], "summary": {"covered_lines": 19, "num_statements": 22, "percent_covered": 86.36363636363636, "percent_covered_display": "86", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 86.36363636363636, "percent_statements_covered_display": "86", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [19, 26, 33], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"Metric.update": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [19], "excluded_lines": [], "start_line": 14, "executed_branches": [], "missing_branches": []}, "Metric.reset": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [26], "excluded_lines": [], "start_line": 22, "executed_branches": [], "missing_branches": []}, "Metric.compute": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [33], "excluded_lines": [], "start_line": 29, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 5, 8, 13, 14, 21, 22, 28, 29, 36, 46, 47, 48, 51, 70, 71, 72], "summary": {"covered_lines": 19, "num_statements": 19, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"Metric": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 3, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [19, 26, 33], "excluded_lines": [], "start_line": 8, "executed_branches": [], "missing_branches": []}, "MetricTarget": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 36, "executed_branches": [], "missing_branches": []}, "AveragingMethod": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 51, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 5, 8, 13, 14, 21, 22, 28, 29, 36, 46, 47, 48, 51, 70, 71, 72], "summary": {"covered_lines": 19, "num_statements": 19, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "src\\supervision\\metrics\\detection.py": {"executed_lines": [1, 3, 4, 6, 7, 8, 9, 10, 12, 13, 14, 15, 19, 22, 23, 24, 29, 97, 99, 100, 104, 105, 106, 107, 108, 112, 114, 116, 117, 118, 119, 126, 128, 130, 135, 136, 137, 140, 142, 143, 146, 154, 159, 160, 168, 171, 175, 176, 180, 181, 187, 191, 192, 195, 201, 204, 207, 212, 219, 227, 228, 229, 230, 231, 232, 233, 236, 237, 238, 239, 242, 248, 249, 252, 255, 266, 267, 268, 270, 271, 273, 274, 275, 276, 277, 278, 288, 289, 291, 292, 293, 294, 295, 296, 297, 299, 300, 301, 303, 304, 305, 308, 313, 320, 321, 340, 341, 342, 343, 344, 346, 356, 358, 359, 420, 421, 422, 423, 428, 433, 442, 443, 512, 513, 515, 516, 517, 518, 526, 534, 535, 574, 575, 577, 578, 579, 581, 584, 585, 587, 588, 589, 590, 592, 602, 604, 605, 612, 613, 614, 615, 616, 617, 618, 620, 621, 688, 778, 783, 784, 809, 810, 811, 812, 814, 815, 867, 868, 914, 915, 1011, 1012, 1027, 1028, 1029, 1032, 1033, 1038, 1039, 1047, 1049, 1050, 1094, 1095], "summary": {"covered_lines": 184, "num_statements": 308, "percent_covered": 57.81990521327014, "percent_covered_display": "58", "missing_lines": 124, "excluded_lines": 0, "percent_statements_covered": 59.74025974025974, "percent_statements_covered_display": "60", "num_branches": 114, "num_partial_branches": 6, "covered_branches": 60, "missing_branches": 54, "percent_branches_covered": 52.63157894736842, "percent_branches_covered_display": "53"}, "missing_lines": [155, 163, 208, 213, 317, 347, 348, 349, 674, 675, 676, 677, 678, 679, 712, 714, 715, 716, 718, 720, 722, 723, 724, 725, 726, 727, 729, 730, 731, 732, 734, 735, 737, 738, 740, 741, 742, 744, 746, 747, 749, 750, 751, 752, 753, 754, 765, 766, 768, 769, 770, 771, 772, 775, 855, 856, 857, 858, 861, 862, 904, 905, 906, 907, 908, 909, 963, 964, 965, 968, 969, 970, 971, 978, 980, 981, 984, 994, 995, 996, 997, 998, 999, 1001, 1002, 1004, 1043, 1072, 1073, 1074, 1075, 1077, 1078, 1080, 1081, 1082, 1083, 1085, 1086, 1087, 1088, 1090, 1091, 1092, 1116, 1117, 1118, 1120, 1121, 1123, 1127, 1128, 1129, 1130, 1132, 1133, 1135, 1136, 1137, 1138, 1140, 1141, 1147, 1148], "excluded_lines": [], "executed_branches": [[23, -22], [23, 24], [99, 100], [99, 104], [104, 105], [104, 128], [106, 107], [106, 114], [107, 108], [107, 112], [116, 117], [116, 118], [118, 119], [118, 126], [135, 136], [135, 142], [136, 137], [136, 140], [154, 159], [159, -146], [159, 160], [160, 168], [175, 176], [175, 180], [180, -146], [180, 181], [207, 212], [212, -195], [227, 228], [227, 232], [229, 230], [229, 231], [232, 233], [232, 239], [236, 237], [236, 238], [248, 249], [248, 252], [270, 271], [270, 273], [291, 292], [291, 299], [292, 291], [292, 293], [299, 300], [299, 303], [300, 299], [300, 301], [303, -255], [303, 304], [304, 303], [304, 305], [422, 423], [422, 433], [517, 518], [517, 526], [584, 585], [584, 587], [612, 613], [1038, 1039]], "missing_branches": [[154, 155], [160, 163], [207, 208], [212, 213], [347, 348], [347, 349], [612, 617], [675, 676], [675, 679], [714, 715], [714, 718], [724, 725], [724, 729], [737, 738], [737, 740], [749, 750], [749, 765], [750, 751], [750, 765], [751, 750], [751, 752], [753, 751], [753, 754], [765, 766], [765, 768], [771, 772], [771, 775], [857, 858], [857, 862], [905, 906], [905, 909], [968, 969], [968, 994], [969, 970], [969, 980], [970, 971], [970, 978], [980, 968], [980, 981], [994, 995], [994, 1001], [1038, 1043], [1077, 1078], [1077, 1091], [1080, 1077], [1080, 1081], [1085, 1086], [1085, 1090], [1127, 1128], [1127, 1147], [1132, 1133], [1132, 1135], [1140, 1127], [1140, 1141]], "functions": {"_assert_supported_target": {"executed_lines": [23, 24], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 22, "executed_branches": [[23, -22], [23, 24]], "missing_branches": []}, "detections_to_tensor": {"executed_lines": [97, 99, 100, 104, 105, 106, 107, 108, 112, 114, 116, 117, 118, 119, 126, 128, 130, 135, 136, 137, 140, 142, 143], "summary": {"covered_lines": 23, "num_statements": 23, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 16, "num_partial_branches": 0, "covered_branches": 16, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 29, "executed_branches": [[99, 100], [99, 104], [104, 105], [104, 128], [106, 107], [106, 114], [107, 108], [107, 112], [116, 117], [116, 118], [118, 119], [118, 126], [135, 136], [135, 142], [136, 137], [136, 140]], "missing_branches": []}, "_validate_input_tensors": {"executed_lines": [154, 159, 160, 168, 171, 175, 176, 180, 181], "summary": {"covered_lines": 9, "num_statements": 11, "percent_covered": 80.95238095238095, "percent_covered_display": "81", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 81.81818181818181, "percent_statements_covered_display": "82", "num_branches": 10, "num_partial_branches": 2, "covered_branches": 8, "missing_branches": 2, "percent_branches_covered": 80.0, "percent_branches_covered_display": "80"}, "missing_lines": [155, 163], "excluded_lines": [], "start_line": 146, "executed_branches": [[154, 159], [159, -146], [159, 160], [160, 168], [175, 176], [175, 180], [180, -146], [180, 181]], "missing_branches": [[154, 155], [160, 163]]}, "_get_coordinate_metadata": {"executed_lines": [191, 192], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 187, "executed_branches": [], "missing_branches": []}, "_validate_detection_batch_shapes": {"executed_lines": [201, 204, 207, 212], "summary": {"covered_lines": 4, "num_statements": 6, "percent_covered": 60.0, "percent_covered_display": "60", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 66.66666666666667, "percent_statements_covered_display": "67", "num_branches": 4, "num_partial_branches": 2, "covered_branches": 2, "missing_branches": 2, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [208, 213], "excluded_lines": [], "start_line": 195, "executed_branches": [[207, 212], [212, -195]], "missing_branches": [[207, 208], [212, 213]]}, "_try_early_exit": {"executed_lines": [227, 228, 229, 230, 231, 232, 233, 236, 237, 238, 239], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 8, "num_partial_branches": 0, "covered_branches": 8, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 219, "executed_branches": [[227, 228], [227, 232], [229, 230], [229, 231], [232, 233], [232, 239], [236, 237], [236, 238]], "missing_branches": []}, "_get_iou_batch": {"executed_lines": [248, 249, 252], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 242, "executed_branches": [[248, 249], [248, 252]], "missing_branches": []}, "_fill_confusion_matrix_from_iou": {"executed_lines": [266, 267, 268, 270, 271, 273, 274, 275, 276, 277, 278, 288, 289, 291, 292, 293, 294, 295, 296, 297, 299, 300, 301, 303, 304, 305], "summary": {"covered_lines": 26, "num_statements": 26, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 14, "num_partial_branches": 0, "covered_branches": 14, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 255, "executed_branches": [[270, 271], [270, 273], [291, 292], [291, 299], [292, 291], [292, 293], [299, 300], [299, 303], [300, 299], [300, 301], [303, -255], [303, 304], [304, 303], [304, 305]], "missing_branches": []}, "validate_input_tensors": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [317], "excluded_lines": [], "start_line": 313, "executed_branches": [], "missing_branches": []}, "ConfusionMatrix.__eq__": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 3, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 2, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [347, 348, 349], "excluded_lines": [], "start_line": 346, "executed_branches": [], "missing_branches": [[347, 348], [347, 349]]}, "ConfusionMatrix.from_detections": {"executed_lines": [420, 421, 422, 423, 428, 433], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 359, "executed_branches": [[422, 423], [422, 433]], "missing_branches": []}, "ConfusionMatrix.from_tensors": {"executed_lines": [512, 513, 515, 516, 517, 518, 526], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 443, "executed_branches": [[517, 518], [517, 526]], "missing_branches": []}, "ConfusionMatrix.evaluate_detection_batch": {"executed_lines": [574, 575, 577, 578, 579, 581, 584, 585, 587, 588, 589, 590, 592, 602], "summary": {"covered_lines": 14, "num_statements": 14, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 535, "executed_branches": [[584, 585], [584, 587]], "missing_branches": []}, "ConfusionMatrix._drop_extra_matches": {"executed_lines": [612, 613, 614, 615, 616, 617, 618], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 88.88888888888889, "percent_covered_display": "89", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [], "excluded_lines": [], "start_line": 605, "executed_branches": [[612, 613]], "missing_branches": [[612, 617]]}, "ConfusionMatrix.benchmark": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 6, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 6, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 2, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [674, 675, 676, 677, 678, 679], "excluded_lines": [], "start_line": 621, "executed_branches": [], "missing_branches": [[675, 676], [675, 679]]}, "ConfusionMatrix.plot": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 40, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 40, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 18, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 18, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [712, 714, 715, 716, 718, 720, 722, 723, 724, 725, 726, 727, 729, 730, 731, 732, 734, 735, 737, 738, 740, 741, 742, 744, 746, 747, 749, 750, 751, 752, 753, 754, 765, 766, 768, 769, 770, 771, 772, 775], "excluded_lines": [], "start_line": 688, "executed_branches": [], "missing_branches": [[714, 715], [714, 718], [724, 725], [724, 729], [737, 738], [737, 740], [749, 750], [749, 765], [750, 751], [750, 765], [751, 750], [751, 752], [753, 751], [753, 754], [765, 766], [765, 768], [771, 772], [771, 775]]}, "MeanAveragePrecision.from_detections": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 6, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 6, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 2, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [855, 856, 857, 858, 861, 862], "excluded_lines": [], "start_line": 815, "executed_branches": [], "missing_branches": [[857, 858], [857, 862]]}, "MeanAveragePrecision.benchmark": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 6, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 6, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 2, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [904, 905, 906, 907, 908, 909], "excluded_lines": [], "start_line": 868, "executed_branches": [], "missing_branches": [[905, 906], [905, 909]]}, "MeanAveragePrecision.from_tensors": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 20, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 20, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 10, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 10, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [963, 964, 965, 968, 969, 970, 971, 978, 980, 981, 984, 994, 995, 996, 997, 998, 999, 1001, 1002, 1004], "excluded_lines": [], "start_line": 915, "executed_branches": [], "missing_branches": [[968, 969], [968, 994], [969, 970], [969, 980], [970, 971], [970, 978], [980, 968], [980, 981], [994, 995], [994, 1001]]}, "MeanAveragePrecision.compute_average_precision": {"executed_lines": [1027, 1028, 1029, 1032, 1033, 1038, 1039, 1047], "summary": {"covered_lines": 8, "num_statements": 9, "percent_covered": 81.81818181818181, "percent_covered_display": "82", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 88.88888888888889, "percent_statements_covered_display": "89", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [1043], "excluded_lines": [], "start_line": 1012, "executed_branches": [[1038, 1039]], "missing_branches": [[1038, 1043]]}, "MeanAveragePrecision._match_detection_batch": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 17, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 17, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 6, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [1072, 1073, 1074, 1075, 1077, 1078, 1080, 1081, 1082, 1083, 1085, 1086, 1087, 1088, 1090, 1091, 1092], "excluded_lines": [], "start_line": 1050, "executed_branches": [], "missing_branches": [[1077, 1078], [1077, 1091], [1080, 1077], [1080, 1081], [1085, 1086], [1085, 1090]]}, "MeanAveragePrecision._average_precisions_per_class": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 20, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 20, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 6, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [1116, 1117, 1118, 1120, 1121, 1123, 1127, 1128, 1129, 1130, 1132, 1133, 1135, 1136, 1137, 1138, 1140, 1141, 1147, 1148], "excluded_lines": [], "start_line": 1095, "executed_branches": [], "missing_branches": [[1127, 1128], [1127, 1147], [1132, 1133], [1132, 1135], [1140, 1127], [1140, 1141]]}, "": {"executed_lines": [1, 3, 4, 6, 7, 8, 9, 10, 12, 13, 14, 15, 19, 22, 29, 146, 187, 195, 219, 242, 255, 308, 313, 320, 321, 340, 341, 342, 343, 344, 346, 356, 358, 359, 442, 443, 534, 535, 604, 605, 620, 621, 688, 778, 783, 784, 809, 810, 811, 812, 814, 815, 867, 868, 914, 915, 1011, 1012, 1049, 1050, 1094, 1095], "summary": {"covered_lines": 62, "num_statements": 62, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"ConfusionMatrix": {"executed_lines": [420, 421, 422, 423, 428, 433, 512, 513, 515, 516, 517, 518, 526, 574, 575, 577, 578, 579, 581, 584, 585, 587, 588, 589, 590, 592, 602, 612, 613, 614, 615, 616, 617, 618], "summary": {"covered_lines": 34, "num_statements": 83, "percent_covered": 36.283185840707965, "percent_covered_display": "36", "missing_lines": 49, "excluded_lines": 0, "percent_statements_covered": 40.963855421686745, "percent_statements_covered_display": "41", "num_branches": 30, "num_partial_branches": 1, "covered_branches": 7, "missing_branches": 23, "percent_branches_covered": 23.333333333333332, "percent_branches_covered_display": "23"}, "missing_lines": [347, 348, 349, 674, 675, 676, 677, 678, 679, 712, 714, 715, 716, 718, 720, 722, 723, 724, 725, 726, 727, 729, 730, 731, 732, 734, 735, 737, 738, 740, 741, 742, 744, 746, 747, 749, 750, 751, 752, 753, 754, 765, 766, 768, 769, 770, 771, 772, 775], "excluded_lines": [], "start_line": 321, "executed_branches": [[422, 423], [422, 433], [517, 518], [517, 526], [584, 585], [584, 587], [612, 613]], "missing_branches": [[347, 348], [347, 349], [612, 617], [675, 676], [675, 679], [714, 715], [714, 718], [724, 725], [724, 729], [737, 738], [737, 740], [749, 750], [749, 765], [750, 751], [750, 765], [751, 750], [751, 752], [753, 751], [753, 754], [765, 766], [765, 768], [771, 772], [771, 775]]}, "MeanAveragePrecision": {"executed_lines": [1027, 1028, 1029, 1032, 1033, 1038, 1039, 1047], "summary": {"covered_lines": 8, "num_statements": 78, "percent_covered": 8.49056603773585, "percent_covered_display": "8", "missing_lines": 70, "excluded_lines": 0, "percent_statements_covered": 10.256410256410257, "percent_statements_covered_display": "10", "num_branches": 28, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 27, "percent_branches_covered": 3.5714285714285716, "percent_branches_covered_display": "4"}, "missing_lines": [855, 856, 857, 858, 861, 862, 904, 905, 906, 907, 908, 909, 963, 964, 965, 968, 969, 970, 971, 978, 980, 981, 984, 994, 995, 996, 997, 998, 999, 1001, 1002, 1004, 1043, 1072, 1073, 1074, 1075, 1077, 1078, 1080, 1081, 1082, 1083, 1085, 1086, 1087, 1088, 1090, 1091, 1092, 1116, 1117, 1118, 1120, 1121, 1123, 1127, 1128, 1129, 1130, 1132, 1133, 1135, 1136, 1137, 1138, 1140, 1141, 1147, 1148], "excluded_lines": [], "start_line": 784, "executed_branches": [[1038, 1039]], "missing_branches": [[857, 858], [857, 862], [905, 906], [905, 909], [968, 969], [968, 994], [969, 970], [969, 980], [970, 971], [970, 978], [980, 968], [980, 981], [994, 995], [994, 1001], [1038, 1043], [1077, 1078], [1077, 1091], [1080, 1077], [1080, 1081], [1085, 1086], [1085, 1090], [1127, 1128], [1127, 1147], [1132, 1133], [1132, 1135], [1140, 1127], [1140, 1141]]}, "": {"executed_lines": [1, 3, 4, 6, 7, 8, 9, 10, 12, 13, 14, 15, 19, 22, 23, 24, 29, 97, 99, 100, 104, 105, 106, 107, 108, 112, 114, 116, 117, 118, 119, 126, 128, 130, 135, 136, 137, 140, 142, 143, 146, 154, 159, 160, 168, 171, 175, 176, 180, 181, 187, 191, 192, 195, 201, 204, 207, 212, 219, 227, 228, 229, 230, 231, 232, 233, 236, 237, 238, 239, 242, 248, 249, 252, 255, 266, 267, 268, 270, 271, 273, 274, 275, 276, 277, 278, 288, 289, 291, 292, 293, 294, 295, 296, 297, 299, 300, 301, 303, 304, 305, 308, 313, 320, 321, 340, 341, 342, 343, 344, 346, 356, 358, 359, 442, 443, 534, 535, 604, 605, 620, 621, 688, 778, 783, 784, 809, 810, 811, 812, 814, 815, 867, 868, 914, 915, 1011, 1012, 1049, 1050, 1094, 1095], "summary": {"covered_lines": 142, "num_statements": 147, "percent_covered": 95.56650246305419, "percent_covered_display": "96", "missing_lines": 5, "excluded_lines": 0, "percent_statements_covered": 96.59863945578232, "percent_statements_covered_display": "97", "num_branches": 56, "num_partial_branches": 4, "covered_branches": 52, "missing_branches": 4, "percent_branches_covered": 92.85714285714286, "percent_branches_covered_display": "93"}, "missing_lines": [155, 163, 208, 213, 317], "excluded_lines": [], "start_line": 1, "executed_branches": [[23, -22], [23, 24], [99, 100], [99, 104], [104, 105], [104, 128], [106, 107], [106, 114], [107, 108], [107, 112], [116, 117], [116, 118], [118, 119], [118, 126], [135, 136], [135, 142], [136, 137], [136, 140], [154, 159], [159, -146], [159, 160], [160, 168], [175, 176], [175, 180], [180, -146], [180, 181], [207, 212], [212, -195], [227, 228], [227, 232], [229, 230], [229, 231], [232, 233], [232, 239], [236, 237], [236, 238], [248, 249], [248, 252], [270, 271], [270, 273], [291, 292], [291, 299], [292, 291], [292, 293], [299, 300], [299, 303], [300, 299], [300, 301], [303, -255], [303, 304], [304, 303], [304, 305]], "missing_branches": [[154, 155], [160, 163], [207, 208], [212, 213]]}}}, "src\\supervision\\metrics\\f1_score.py": {"executed_lines": [1, 3, 4, 5, 7, 8, 9, 11, 12, 13, 18, 19, 20, 24, 30, 66, 79, 80, 82, 83, 85, 89, 90, 92, 107, 108, 109, 110, 112, 113, 118, 119, 121, 123, 131, 133, 136, 138, 143, 145, 148, 150, 152, 163, 164, 166, 167, 168, 170, 173, 175, 185, 186, 187, 197, 198, 199, 201, 202, 210, 220, 229, 230, 239, 240, 244, 253, 269, 270, 271, 275, 278, 279, 280, 283, 288, 291, 292, 293, 294, 295, 296, 297, 298, 302, 304, 306, 308, 309, 315, 319, 320, 322, 323, 325, 326, 327, 328, 330, 331, 332, 333, 335, 337, 338, 340, 341, 368, 369, 371, 374, 375, 376, 377, 379, 380, 381, 382, 383, 384, 385, 386, 388, 389, 390, 391, 395, 396, 398, 399, 412, 417, 418, 419, 422, 423, 425, 426, 428, 430, 431, 432, 433, 438, 439, 440, 441, 442, 443, 446, 447, 450, 453, 454, 455, 458, 462, 463, 464, 466, 467, 469, 470, 472, 473, 474, 475, 476, 478, 479, 480, 482, 484, 493, 494, 495, 496, 499, 502, 505, 506, 509, 510, 511, 514, 515, 545, 546, 548, 549, 550, 552, 553, 554, 556, 557, 558, 559, 560, 562, 575, 576, 577, 578, 579, 580, 582, 584, 589, 595, 597, 598, 599, 601, 603, 604, 605, 607, 609, 610, 611, 613, 614, 615, 617, 619, 620, 621, 623, 624, 629, 630, 631, 633, 701, 731], "summary": {"covered_lines": 236, "num_statements": 324, "percent_covered": 68.69369369369369, "percent_covered_display": "69", "missing_lines": 88, "excluded_lines": 3, "percent_statements_covered": 72.8395061728395, "percent_statements_covered_display": "73", "num_branches": 120, "num_partial_branches": 17, "covered_branches": 69, "missing_branches": 51, "percent_branches_covered": 57.5, "percent_branches_covered_display": "58"}, "missing_lines": [174, 200, 206, 413, 434, 435, 436, 437, 444, 448, 449, 451, 452, 456, 471, 477, 583, 606, 616, 625, 626, 627, 673, 683, 684, 685, 686, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 699, 708, 709, 711, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 729, 740, 741, 742, 744, 745, 746, 747, 748, 750, 751, 752, 753, 754, 756, 757, 758, 759, 760, 762, 764, 765, 766, 767, 772, 774, 775, 777, 778, 780, 781, 782, 790, 792, 793], "excluded_lines": [26, 27, 634], "executed_branches": [[107, 108], [107, 109], [109, 110], [109, 112], [112, 113], [112, 118], [166, 167], [166, 229], [170, 173], [170, 185], [173, 175], [185, 166], [185, 186], [186, 187], [186, 197], [197, 198], [197, 199], [199, 201], [201, 202], [229, 230], [229, 239], [291, 292], [291, 293], [293, 294], [293, 296], [296, 297], [298, 302], [298, 304], [322, 323], [322, 337], [325, 322], [325, 326], [330, 331], [330, 335], [374, 375], [374, 395], [379, 380], [379, 383], [383, 384], [383, 388], [412, 417], [430, 431], [430, 433], [433, 438], [438, 439], [440, 441], [440, 443], [447, 450], [450, 453], [453, 454], [463, 464], [463, 466], [470, 472], [472, 473], [474, 475], [474, 476], [476, 478], [478, 479], [479, 480], [479, 482], [495, 496], [495, 502], [582, 584], [584, 589], [584, 595], [598, 599], [598, 601], [605, 607], [615, 617]], "missing_branches": [[173, 174], [199, 200], [201, 206], [296, 306], [412, 413], [433, 434], [434, 435], [434, 437], [438, 444], [447, 448], [450, 451], [453, 456], [470, 471], [472, 474], [476, 477], [478, 482], [582, 583], [605, 606], [615, 616], [625, 626], [625, 627], [683, 684], [683, 685], [685, 686], [685, 688], [689, 690], [689, 692], [692, 693], [692, 695], [695, 696], [695, 699], [716, 717], [716, 720], [718, 719], [718, 720], [720, 721], [720, 724], [722, 723], [722, 724], [724, 725], [724, 729], [726, 727], [726, 729], [744, 745], [744, 750], [750, 751], [750, 756], [756, 757], [756, 762], [780, 781], [780, 790]], "functions": {"F1Score.__init__": {"executed_lines": [79, 80, 82, 83], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 66, "executed_branches": [], "missing_branches": []}, "F1Score.reset": {"executed_lines": [89, 90], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 85, "executed_branches": [], "missing_branches": []}, "F1Score.update": {"executed_lines": [107, 108, 109, 110, 112, 113, 118, 119, 121], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 6, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 92, "executed_branches": [[107, 108], [107, 109], [109, 110], [109, 112], [112, 113], [112, 118]], "missing_branches": []}, "F1Score.compute": {"executed_lines": [131, 133, 136, 138, 143, 145, 148, 150], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 123, "executed_branches": [], "missing_branches": []}, "F1Score._compute": {"executed_lines": [163, 164, 166, 167, 168, 170, 173, 175, 185, 186, 187, 197, 198, 199, 201, 202, 210, 220, 229, 230, 239, 240, 244], "summary": {"covered_lines": 23, "num_statements": 26, "percent_covered": 86.36363636363636, "percent_covered_display": "86", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 88.46153846153847, "percent_statements_covered_display": "88", "num_branches": 18, "num_partial_branches": 3, "covered_branches": 15, "missing_branches": 3, "percent_branches_covered": 83.33333333333333, "percent_branches_covered_display": "83"}, "missing_lines": [174, 200, 206], "excluded_lines": [], "start_line": 152, "executed_branches": [[166, 167], [166, 229], [170, 173], [170, 185], [173, 175], [185, 166], [185, 186], [186, 187], [186, 197], [197, 198], [197, 199], [199, 201], [201, 202], [229, 230], [229, 239]], "missing_branches": [[173, 174], [199, 200], [201, 206]]}, "F1Score._compute_f1_for_classes": {"executed_lines": [269, 270, 271, 275, 278, 279, 280, 283, 288, 291, 292, 293, 294, 295, 296, 297, 298, 302, 304, 306], "summary": {"covered_lines": 20, "num_statements": 20, "percent_covered": 96.42857142857143, "percent_covered_display": "96", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 8, "num_partial_branches": 1, "covered_branches": 7, "missing_branches": 1, "percent_branches_covered": 87.5, "percent_branches_covered_display": "88"}, "missing_lines": [], "excluded_lines": [], "start_line": 253, "executed_branches": [[291, 292], [291, 293], [293, 294], [293, 296], [296, 297], [298, 302], [298, 304]], "missing_branches": [[296, 306]]}, "F1Score._match_detection_batch": {"executed_lines": [315, 319, 320, 322, 323, 325, 326, 327, 328, 330, 331, 332, 333, 335, 337, 338], "summary": {"covered_lines": 16, "num_statements": 16, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 6, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 309, "executed_branches": [[322, 323], [322, 337], [325, 322], [325, 326], [330, 331], [330, 335]], "missing_branches": []}, "F1Score._compute_confusion_matrix": {"executed_lines": [368, 369, 371, 374, 375, 376, 377, 379, 380, 381, 382, 383, 384, 385, 386, 388, 389, 390, 391, 395, 396], "summary": {"covered_lines": 21, "num_statements": 21, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 6, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 341, "executed_branches": [[374, 375], [374, 395], [379, 380], [379, 383], [383, 384], [383, 388]], "missing_branches": []}, "F1Score._compute_f1": {"executed_lines": [412, 417, 418, 419, 422, 423, 425, 426], "summary": {"covered_lines": 8, "num_statements": 9, "percent_covered": 81.81818181818181, "percent_covered_display": "82", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 88.88888888888889, "percent_statements_covered_display": "89", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [413], "excluded_lines": [], "start_line": 399, "executed_branches": [[412, 417]], "missing_branches": [[412, 413]]}, "F1Score._detections_content": {"executed_lines": [430, 431, 432, 433, 438, 439, 440, 441, 442, 443], "summary": {"covered_lines": 10, "num_statements": 15, "percent_covered": 64.0, "percent_covered_display": "64", "missing_lines": 5, "excluded_lines": 0, "percent_statements_covered": 66.66666666666667, "percent_statements_covered_display": "67", "num_branches": 10, "num_partial_branches": 2, "covered_branches": 6, "missing_branches": 4, "percent_branches_covered": 60.0, "percent_branches_covered_display": "60"}, "missing_lines": [434, 435, 436, 437, 444], "excluded_lines": [], "start_line": 428, "executed_branches": [[430, 431], [430, 433], [433, 438], [438, 439], [440, 441], [440, 443]], "missing_branches": [[433, 434], [434, 435], [434, 437], [438, 444]]}, "F1Score._make_empty_content": {"executed_lines": [447, 450, 453, 454, 455], "summary": {"covered_lines": 5, "num_statements": 10, "percent_covered": 50.0, "percent_covered_display": "50", "missing_lines": 5, "excluded_lines": 0, "percent_statements_covered": 50.0, "percent_statements_covered_display": "50", "num_branches": 6, "num_partial_branches": 3, "covered_branches": 3, "missing_branches": 3, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [448, 449, 451, 452, 456], "excluded_lines": [], "start_line": 446, "executed_branches": [[447, 450], [450, 453], [453, 454]], "missing_branches": [[447, 448], [450, 451], [453, 456]]}, "F1Score._filter_detections_by_size": {"executed_lines": [462, 463, 464, 466, 467, 469, 470, 472, 473, 474, 475, 476, 478, 479, 480, 482], "summary": {"covered_lines": 16, "num_statements": 18, "percent_covered": 81.25, "percent_covered_display": "81", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 88.88888888888889, "percent_statements_covered_display": "89", "num_branches": 14, "num_partial_branches": 4, "covered_branches": 10, "missing_branches": 4, "percent_branches_covered": 71.42857142857143, "percent_branches_covered_display": "71"}, "missing_lines": [471, 477], "excluded_lines": [], "start_line": 458, "executed_branches": [[463, 464], [463, 466], [470, 472], [472, 473], [474, 475], [474, 476], [476, 478], [478, 479], [479, 480], [479, 482]], "missing_branches": [[470, 471], [472, 474], [476, 477], [478, 482]]}, "F1Score._filter_predictions_and_targets_by_size": {"executed_lines": [493, 494, 495, 496, 499, 502], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 484, "executed_branches": [[495, 496], [495, 502]], "missing_branches": []}, "F1ScoreResult.f1_50": {"executed_lines": [550], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 549, "executed_branches": [], "missing_branches": []}, "F1ScoreResult.f1_75": {"executed_lines": [554], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 553, "executed_branches": [], "missing_branches": []}, "F1ScoreResult.__init__": {"executed_lines": [575, 576, 577, 578, 579, 580, 582, 584, 589, 595], "summary": {"covered_lines": 10, "num_statements": 11, "percent_covered": 86.66666666666667, "percent_covered_display": "87", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 90.9090909090909, "percent_statements_covered_display": "91", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [583], "excluded_lines": [], "start_line": 562, "executed_branches": [[582, 584], [584, 589], [584, 595]], "missing_branches": [[582, 583]]}, "F1ScoreResult._ensure_size_results": {"executed_lines": [598, 599, 601], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 597, "executed_branches": [[598, 599], [598, 601]], "missing_branches": []}, "F1ScoreResult.small_objects": {"executed_lines": [611], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 610, "executed_branches": [], "missing_branches": []}, "F1ScoreResult.medium_objects": {"executed_lines": [621], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 620, "executed_branches": [], "missing_branches": []}, "F1ScoreResult.large_objects": {"executed_lines": [631], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 630, "executed_branches": [], "missing_branches": []}, "F1ScoreResult.__str__": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 16, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 16, "excluded_lines": 1, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 10, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 10, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [673, 683, 684, 685, 686, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 699], "excluded_lines": [634], "start_line": 633, "executed_branches": [], "missing_branches": [[683, 684], [683, 685], [685, 686], [685, 688], [689, 690], [689, 692], [692, 693], [692, 695], [695, 696], [695, 699]]}, "F1ScoreResult.to_pandas": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 16, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 16, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 12, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 12, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [708, 709, 711, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 729], "excluded_lines": [], "start_line": 701, "executed_branches": [], "missing_branches": [[716, 717], [716, 720], [718, 719], [718, 720], [720, 721], [720, 724], [722, 723], [722, 724], [724, 725], [724, 729], [726, 727], [726, 729]]}, "F1ScoreResult.plot": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 34, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 34, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 8, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 8, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [740, 741, 742, 744, 745, 746, 747, 748, 750, 751, 752, 753, 754, 756, 757, 758, 759, 760, 762, 764, 765, 766, 767, 772, 774, 775, 777, 778, 780, 781, 782, 790, 792, 793], "excluded_lines": [], "start_line": 731, "executed_branches": [], "missing_branches": [[744, 745], [744, 750], [750, 751], [750, 756], [756, 757], [756, 762], [780, 781], [780, 790]]}, "": {"executed_lines": [1, 3, 4, 5, 7, 8, 9, 11, 12, 13, 18, 19, 20, 24, 30, 66, 85, 92, 123, 152, 253, 308, 309, 340, 341, 398, 399, 428, 446, 458, 484, 505, 506, 509, 510, 511, 514, 515, 545, 546, 548, 549, 552, 553, 556, 557, 558, 559, 560, 562, 597, 603, 604, 609, 610, 613, 614, 619, 620, 623, 624, 629, 630, 633, 701, 731], "summary": {"covered_lines": 66, "num_statements": 66, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 2, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [26, 27], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"F1Score": {"executed_lines": [79, 80, 82, 83, 89, 90, 107, 108, 109, 110, 112, 113, 118, 119, 121, 131, 133, 136, 138, 143, 145, 148, 150, 163, 164, 166, 167, 168, 170, 173, 175, 185, 186, 187, 197, 198, 199, 201, 202, 210, 220, 229, 230, 239, 240, 244, 269, 270, 271, 275, 278, 279, 280, 283, 288, 291, 292, 293, 294, 295, 296, 297, 298, 302, 304, 306, 315, 319, 320, 322, 323, 325, 326, 327, 328, 330, 331, 332, 333, 335, 337, 338, 368, 369, 371, 374, 375, 376, 377, 379, 380, 381, 382, 383, 384, 385, 386, 388, 389, 390, 391, 395, 396, 412, 417, 418, 419, 422, 423, 425, 426, 430, 431, 432, 433, 438, 439, 440, 441, 442, 443, 447, 450, 453, 454, 455, 462, 463, 464, 466, 467, 469, 470, 472, 473, 474, 475, 476, 478, 479, 480, 482, 493, 494, 495, 496, 499, 502], "summary": {"covered_lines": 148, "num_statements": 164, "percent_covered": 86.77685950413223, "percent_covered_display": "87", "missing_lines": 16, "excluded_lines": 0, "percent_statements_covered": 90.2439024390244, "percent_statements_covered_display": "90", "num_branches": 78, "num_partial_branches": 14, "covered_branches": 62, "missing_branches": 16, "percent_branches_covered": 79.48717948717949, "percent_branches_covered_display": "79"}, "missing_lines": [174, 200, 206, 413, 434, 435, 436, 437, 444, 448, 449, 451, 452, 456, 471, 477], "excluded_lines": [], "start_line": 30, "executed_branches": [[107, 108], [107, 109], [109, 110], [109, 112], [112, 113], [112, 118], [166, 167], [166, 229], [170, 173], [170, 185], [173, 175], [185, 166], [185, 186], [186, 187], [186, 197], [197, 198], [197, 199], [199, 201], [201, 202], [229, 230], [229, 239], [291, 292], [291, 293], [293, 294], [293, 296], [296, 297], [298, 302], [298, 304], [322, 323], [322, 337], [325, 322], [325, 326], [330, 331], [330, 335], [374, 375], [374, 395], [379, 380], [379, 383], [383, 384], [383, 388], [412, 417], [430, 431], [430, 433], [433, 438], [438, 439], [440, 441], [440, 443], [447, 450], [450, 453], [453, 454], [463, 464], [463, 466], [470, 472], [472, 473], [474, 475], [474, 476], [476, 478], [478, 479], [479, 480], [479, 482], [495, 496], [495, 502]], "missing_branches": [[173, 174], [199, 200], [201, 206], [296, 306], [412, 413], [433, 434], [434, 435], [434, 437], [438, 444], [447, 448], [450, 451], [453, 456], [470, 471], [472, 474], [476, 477], [478, 482]]}, "F1ScoreSizeResults": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 506, "executed_branches": [], "missing_branches": []}, "F1ScoreResult": {"executed_lines": [550, 554, 575, 576, 577, 578, 579, 580, 582, 584, 589, 595, 598, 599, 601, 605, 607, 611, 615, 617, 621, 631], "summary": {"covered_lines": 22, "num_statements": 94, "percent_covered": 21.323529411764707, "percent_covered_display": "21", "missing_lines": 72, "excluded_lines": 1, "percent_statements_covered": 23.404255319148938, "percent_statements_covered_display": "23", "num_branches": 42, "num_partial_branches": 3, "covered_branches": 7, "missing_branches": 35, "percent_branches_covered": 16.666666666666668, "percent_branches_covered_display": "17"}, "missing_lines": [583, 606, 616, 625, 626, 627, 673, 683, 684, 685, 686, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 699, 708, 709, 711, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 729, 740, 741, 742, 744, 745, 746, 747, 748, 750, 751, 752, 753, 754, 756, 757, 758, 759, 760, 762, 764, 765, 766, 767, 772, 774, 775, 777, 778, 780, 781, 782, 790, 792, 793], "excluded_lines": [634], "start_line": 515, "executed_branches": [[582, 584], [584, 589], [584, 595], [598, 599], [598, 601], [605, 607], [615, 617]], "missing_branches": [[582, 583], [605, 606], [615, 616], [625, 626], [625, 627], [683, 684], [683, 685], [685, 686], [685, 688], [689, 690], [689, 692], [692, 693], [692, 695], [695, 696], [695, 699], [716, 717], [716, 720], [718, 719], [718, 720], [720, 721], [720, 724], [722, 723], [722, 724], [724, 725], [724, 729], [726, 727], [726, 729], [744, 745], [744, 750], [750, 751], [750, 756], [756, 757], [756, 762], [780, 781], [780, 790]]}, "": {"executed_lines": [1, 3, 4, 5, 7, 8, 9, 11, 12, 13, 18, 19, 20, 24, 30, 66, 85, 92, 123, 152, 253, 308, 309, 340, 341, 398, 399, 428, 446, 458, 484, 505, 506, 509, 510, 511, 514, 515, 545, 546, 548, 549, 552, 553, 556, 557, 558, 559, 560, 562, 597, 603, 604, 609, 610, 613, 614, 619, 620, 623, 624, 629, 630, 633, 701, 731], "summary": {"covered_lines": 66, "num_statements": 66, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 2, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [26, 27], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "src\\supervision\\metrics\\mean_average_precision.py": {"executed_lines": [1, 3, 4, 5, 6, 7, 8, 9, 10, 12, 13, 14, 16, 17, 18, 19, 20, 21, 23, 29, 30, 33, 34, 35, 38, 39, 62, 63, 64, 65, 66, 67, 68, 72, 84, 85, 86, 87, 88, 89, 90, 92, 97, 103, 104, 112, 113, 117, 118, 122, 123, 125, 128, 130, 131, 140, 141, 143, 146, 148, 149, 150, 153, 156, 158, 159, 161, 164, 166, 167, 176, 235, 270, 339, 345, 356, 357, 358, 359, 360, 361, 363, 364, 367, 368, 370, 371, 372, 374, 378, 379, 380, 381, 382, 383, 385, 386, 387, 389, 390, 391, 393, 394, 395, 398, 399, 400, 401, 402, 404, 422, 425, 426, 431, 436, 443, 452, 455, 456, 458, 476, 477, 501, 502, 504, 520, 521, 522, 535, 545, 547, 549, 560, 561, 563, 567, 568, 569, 571, 574, 579, 583, 587, 592, 593, 598, 599, 600, 603, 604, 606, 608, 610, 611, 612, 613, 617, 618, 619, 622, 625, 630, 631, 632, 633, 636, 641, 644, 645, 648, 656, 664, 666, 674, 675, 678, 679, 680, 683, 686, 687, 690, 695, 705, 707, 710, 711, 713, 714, 716, 717, 719, 720, 724, 725, 729, 730, 734, 735, 739, 740, 743, 744, 747, 752, 755, 757, 760, 763, 764, 765, 768, 769, 770, 773, 774, 775, 778, 779, 781, 794, 795, 798, 799, 800, 803, 804, 808, 811, 812, 815, 817, 820, 822, 841, 842, 845, 846, 848, 852, 853, 854, 856, 859, 860, 863, 864, 867, 874, 875, 876, 879, 880, 882, 883, 884, 886, 888, 890, 892, 894, 897, 898, 899, 901, 910, 911, 912, 915, 916, 917, 918, 921, 926, 933, 947, 960, 961, 962, 963, 964, 965, 967, 977, 981, 992, 1004, 1007, 1008, 1011, 1012, 1014, 1017, 1020, 1025, 1029, 1036, 1049, 1050, 1052, 1053, 1055, 1056, 1060, 1062, 1065, 1068, 1069, 1071, 1074, 1078, 1081, 1083, 1084, 1086, 1089, 1093, 1096, 1100, 1101, 1102, 1103, 1104, 1105, 1106, 1107, 1109, 1113, 1114, 1115, 1117, 1120, 1121, 1122, 1123, 1126, 1127, 1129, 1132, 1136, 1137, 1140, 1141, 1143, 1156, 1174, 1178, 1180, 1181, 1184, 1223, 1224, 1236, 1243, 1256, 1274, 1369, 1375, 1376, 1377, 1379, 1382, 1389, 1392, 1400, 1403, 1441, 1457, 1458, 1460, 1461, 1462, 1463, 1465, 1472, 1487, 1489, 1492, 1498, 1509, 1510, 1512, 1514, 1518, 1519, 1522, 1523, 1524, 1528, 1531, 1532, 1535, 1537, 1538, 1539, 1542, 1545, 1546, 1547, 1549, 1550, 1552, 1553, 1556, 1565, 1567, 1568, 1570, 1576, 1581, 1582, 1583, 1586, 1589, 1590, 1592, 1593, 1595, 1596, 1597, 1600, 1602, 1603, 1606, 1607, 1611, 1613, 1614, 1616, 1624, 1625, 1627, 1636, 1637, 1639, 1645, 1646, 1648, 1650, 1652, 1655], "summary": {"covered_lines": 441, "num_statements": 628, "percent_covered": 66.27358490566037, "percent_covered_display": "66", "missing_lines": 187, "excluded_lines": 2, "percent_statements_covered": 70.22292993630573, "percent_statements_covered_display": "70", "num_branches": 220, "num_partial_branches": 43, "covered_branches": 121, "missing_branches": 99, "percent_branches_covered": 55.0, "percent_branches_covered_display": "55"}, "missing_lines": [106, 107, 108, 110, 115, 120, 126, 132, 133, 135, 136, 138, 144, 151, 154, 162, 168, 169, 171, 172, 174, 206, 211, 220, 242, 243, 245, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 265, 279, 280, 281, 283, 284, 285, 290, 292, 293, 294, 299, 301, 302, 303, 308, 310, 312, 313, 314, 315, 317, 318, 320, 321, 323, 324, 325, 333, 335, 336, 423, 433, 453, 479, 482, 489, 498, 524, 526, 527, 528, 529, 531, 533, 546, 564, 580, 584, 588, 607, 706, 708, 722, 727, 732, 737, 741, 745, 809, 907, 1063, 1146, 1147, 1148, 1154, 1170, 1171, 1172, 1188, 1189, 1192, 1196, 1197, 1200, 1204, 1205, 1208, 1212, 1258, 1279, 1285, 1286, 1287, 1288, 1293, 1294, 1295, 1296, 1299, 1301, 1302, 1303, 1304, 1308, 1309, 1310, 1311, 1312, 1313, 1314, 1316, 1317, 1320, 1322, 1323, 1324, 1325, 1328, 1331, 1336, 1341, 1346, 1347, 1348, 1349, 1354, 1359, 1364, 1366, 1367, 1469, 1470, 1488, 1490, 1493, 1499, 1500, 1502, 1503, 1504, 1505, 1506, 1507, 1520, 1525, 1529, 1540, 1554, 1584, 1587, 1598, 1640, 1658, 1667, 1676, 1686, 1697], "excluded_lines": [25, 26], "executed_branches": [[92, -72], [92, 97], [125, 128], [143, 146], [150, 153], [153, 156], [161, 164], [363, 364], [363, 367], [380, 381], [381, 382], [381, 385], [385, 386], [386, 387], [386, 389], [389, 390], [390, 391], [390, 393], [393, 394], [394, 395], [394, 398], [422, 425], [425, 426], [452, 455], [476, 477], [520, 521], [545, 547], [563, 567], [567, 568], [567, 571], [579, 583], [583, 587], [587, 592], [592, 593], [598, 599], [598, 611], [603, 604], [606, 608], [705, 707], [707, 710], [763, 764], [763, 768], [769, 770], [769, 773], [774, 775], [774, 778], [798, 799], [798, 803], [808, 811], [845, 846], [845, 848], [852, 853], [852, 859], [853, 854], [853, 856], [884, 886], [884, 921], [886, 888], [886, 921], [888, 886], [888, 890], [894, 897], [894, 915], [898, 899], [898, 901], [901, 910], [910, 894], [910, 911], [915, 888], [915, 916], [1049, -1036], [1049, 1050], [1052, 1049], [1052, 1053], [1055, 1052], [1055, 1056], [1062, 1065], [1083, 1084], [1083, 1086], [1100, 1055], [1100, 1101], [1113, 1114], [1113, 1117], [1114, 1113], [1114, 1115], [1121, 1122], [1121, 1129], [1123, 1121], [1123, 1126], [1487, 1489], [1489, 1492], [1492, 1498], [1498, 1509], [1519, 1522], [1523, 1524], [1523, 1567], [1524, 1528], [1528, 1531], [1531, 1523], [1531, 1532], [1537, 1538], [1539, 1542], [1546, 1547], [1546, 1549], [1549, 1550], [1549, 1552], [1553, 1556], [1582, 1583], [1582, 1625], [1583, 1586], [1586, 1589], [1589, 1582], [1589, 1590], [1595, 1596], [1597, 1600], [1602, 1603], [1607, 1611], [1607, 1613], [1613, 1614], [1613, 1616], [1639, 1645]], "missing_branches": [[107, 108], [107, 110], [125, 126], [132, 133], [132, 135], [135, 136], [135, 138], [143, 144], [150, 151], [153, 154], [161, 162], [168, 169], [168, 171], [171, 172], [171, 174], [206, 211], [206, 220], [251, 252], [251, 255], [253, 254], [253, 255], [255, 256], [255, 259], [257, 258], [257, 259], [259, 260], [259, 265], [261, 262], [261, 265], [283, 284], [283, 292], [292, 293], [292, 301], [301, 302], [301, 310], [323, 324], [323, 333], [380, 385], [385, 389], [389, 393], [393, 398], [422, 423], [425, 433], [452, 453], [476, 479], [520, 524], [526, 527], [526, 533], [527, 528], [527, 533], [528, 529], [528, 531], [545, 546], [563, 564], [579, 580], [583, 584], [587, 588], [592, 611], [603, 606], [606, 607], [705, 706], [707, 708], [808, 809], [901, 907], [1062, 1063], [1296, 1299], [1296, 1308], [1301, 1302], [1301, 1304], [1309, 1310], [1309, 1312], [1313, 1314], [1313, 1316], [1366, -1274], [1366, 1367], [1487, 1488], [1489, 1490], [1492, 1493], [1498, 1499], [1502, 1503], [1502, 1505], [1503, 1502], [1503, 1504], [1505, 1506], [1505, 1509], [1506, 1505], [1506, 1507], [1519, 1520], [1524, 1525], [1528, 1529], [1537, 1545], [1539, 1540], [1553, 1554], [1583, 1584], [1586, 1587], [1595, 1602], [1597, 1598], [1602, 1606], [1639, 1640]], "functions": {"MeanAveragePrecisionResult.__init__": {"executed_lines": [84, 85, 86, 87, 88, 89, 90, 92, 97], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 72, "executed_branches": [[92, -72], [92, 97]], "missing_branches": []}, "MeanAveragePrecisionResult.map50_95": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 4, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 4, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 2, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [106, 107, 108, 110], "excluded_lines": [], "start_line": 104, "executed_branches": [], "missing_branches": [[107, 108], [107, 110]]}, "MeanAveragePrecisionResult.map50": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [115], "excluded_lines": [], "start_line": 113, "executed_branches": [], "missing_branches": []}, "MeanAveragePrecisionResult.map75": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [120], "excluded_lines": [], "start_line": 118, "executed_branches": [], "missing_branches": []}, "MeanAveragePrecisionResult.small_objects": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 5, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 5, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 4, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [132, 133, 135, 136, 138], "excluded_lines": [], "start_line": 131, "executed_branches": [], "missing_branches": [[132, 133], [132, 135], [135, 136], [135, 138]]}, "MeanAveragePrecisionResult.medium_objects": {"executed_lines": [150, 153, 156], "summary": {"covered_lines": 3, "num_statements": 5, "percent_covered": 55.55555555555556, "percent_covered_display": "56", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 60.0, "percent_statements_covered_display": "60", "num_branches": 4, "num_partial_branches": 2, "covered_branches": 2, "missing_branches": 2, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [151, 154], "excluded_lines": [], "start_line": 149, "executed_branches": [[150, 153], [153, 156]], "missing_branches": [[150, 151], [153, 154]]}, "MeanAveragePrecisionResult.large_objects": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 5, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 5, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 4, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [168, 169, 171, 172, 174], "excluded_lines": [], "start_line": 167, "executed_branches": [], "missing_branches": [[168, 169], [168, 171], [171, 172], [171, 174]]}, "MeanAveragePrecisionResult.__str__": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 3, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 2, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [206, 211, 220], "excluded_lines": [], "start_line": 176, "executed_branches": [], "missing_branches": [[206, 211], [206, 220]]}, "MeanAveragePrecisionResult.to_pandas": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 16, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 16, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 12, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 12, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [242, 243, 245, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 265], "excluded_lines": [], "start_line": 235, "executed_branches": [], "missing_branches": [[251, 252], [251, 255], [253, 254], [253, 255], [255, 256], [255, 259], [257, 258], [257, 259], [259, 260], [259, 265], [261, 262], [261, 265]]}, "MeanAveragePrecisionResult.plot": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 30, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 30, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 8, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 8, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [279, 280, 281, 283, 284, 285, 290, 292, 293, 294, 299, 301, 302, 303, 308, 310, 312, 313, 314, 315, 317, 318, 320, 321, 323, 324, 325, 333, 335, 336], "excluded_lines": [], "start_line": 270, "executed_branches": [], "missing_branches": [[283, 284], [283, 292], [292, 293], [292, 301], [301, 302], [301, 310], [323, 324], [323, 333]]}, "EvaluationDataset.__init__": {"executed_lines": [356, 357, 358, 359, 360, 361, 363, 364, 367, 368], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 345, "executed_branches": [[363, 364], [363, 367]], "missing_branches": []}, "EvaluationDataset.empty": {"executed_lines": [372], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 371, "executed_branches": [], "missing_branches": []}, "EvaluationDataset.create_class_members": {"executed_lines": [378, 379, 380, 381, 382, 383, 385, 386, 387, 389, 390, 391, 393, 394, 395, 398, 399, 400, 401, 402], "summary": {"covered_lines": 20, "num_statements": 20, "percent_covered": 88.88888888888889, "percent_covered_display": "89", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 16, "num_partial_branches": 4, "covered_branches": 12, "missing_branches": 4, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [], "excluded_lines": [], "start_line": 374, "executed_branches": [[380, 381], [381, 382], [381, 385], [385, 386], [386, 387], [386, 389], [389, 390], [390, 391], [390, 393], [393, 394], [394, 395], [394, 398]], "missing_branches": [[380, 385], [385, 389], [389, 393], [393, 398]]}, "EvaluationDataset.get_annotation_ids": {"executed_lines": [422, 425, 426, 431, 436, 443, 452, 455, 456], "summary": {"covered_lines": 9, "num_statements": 12, "percent_covered": 66.66666666666667, "percent_covered_display": "67", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 75.0, "percent_statements_covered_display": "75", "num_branches": 6, "num_partial_branches": 3, "covered_branches": 3, "missing_branches": 3, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [423, 433, 453], "excluded_lines": [], "start_line": 404, "executed_branches": [[422, 425], [425, 426], [452, 455]], "missing_branches": [[422, 423], [425, 433], [452, 453]]}, "EvaluationDataset.get_category_ids": {"executed_lines": [476, 477, 501, 502], "summary": {"covered_lines": 4, "num_statements": 8, "percent_covered": 50.0, "percent_covered_display": "50", "missing_lines": 4, "excluded_lines": 0, "percent_statements_covered": 50.0, "percent_statements_covered_display": "50", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [479, 482, 489, 498], "excluded_lines": [], "start_line": 458, "executed_branches": [[476, 477]], "missing_branches": [[476, 479]]}, "EvaluationDataset.get_image_ids": {"executed_lines": [520, 521, 522], "summary": {"covered_lines": 3, "num_statements": 10, "percent_covered": 22.22222222222222, "percent_covered_display": "22", "missing_lines": 7, "excluded_lines": 0, "percent_statements_covered": 30.0, "percent_statements_covered_display": "30", "num_branches": 8, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 7, "percent_branches_covered": 12.5, "percent_branches_covered_display": "12"}, "missing_lines": [524, 526, 527, 528, 529, 531, 533], "excluded_lines": [], "start_line": 504, "executed_branches": [[520, 521]], "missing_branches": [[520, 524], [526, 527], [526, 533], [527, 528], [527, 533], [528, 529], [528, 531]]}, "EvaluationDataset.get_annotations": {"executed_lines": [545, 547], "summary": {"covered_lines": 2, "num_statements": 3, "percent_covered": 60.0, "percent_covered_display": "60", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 66.66666666666667, "percent_statements_covered_display": "67", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [546], "excluded_lines": [], "start_line": 535, "executed_branches": [[545, 547]], "missing_branches": [[545, 546]]}, "EvaluationDataset.load_predictions": {"executed_lines": [560, 561, 563, 567, 568, 569, 571, 574, 579, 583, 587, 592, 593, 598, 599, 600, 603, 604, 606, 608, 610, 611, 612, 613], "summary": {"covered_lines": 24, "num_statements": 29, "percent_covered": 74.46808510638297, "percent_covered_display": "74", "missing_lines": 5, "excluded_lines": 0, "percent_statements_covered": 82.75862068965517, "percent_statements_covered_display": "83", "num_branches": 18, "num_partial_branches": 7, "covered_branches": 11, "missing_branches": 7, "percent_branches_covered": 61.111111111111114, "percent_branches_covered_display": "61"}, "missing_lines": [564, 580, 584, 588, 607], "excluded_lines": [], "start_line": 549, "executed_branches": [[563, 567], [567, 568], [567, 571], [579, 583], [583, 587], [587, 592], [592, 593], [598, 599], [598, 611], [603, 604], [606, 608]], "missing_branches": [[563, 564], [579, 580], [583, 584], [587, 588], [592, 611], [603, 606], [606, 607]]}, "COCOEvaluatorParameters.__init__": {"executed_lines": [644, 645, 648, 656, 664, 666], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 641, "executed_branches": [], "missing_branches": []}, "COCOEvaluator.__init__": {"executed_lines": [705, 707, 710, 711, 713, 714, 716, 717], "summary": {"covered_lines": 8, "num_statements": 10, "percent_covered": 71.42857142857143, "percent_covered_display": "71", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 80.0, "percent_statements_covered_display": "80", "num_branches": 4, "num_partial_branches": 2, "covered_branches": 2, "missing_branches": 2, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [706, 708], "excluded_lines": [], "start_line": 695, "executed_branches": [[705, 707], [707, 710]], "missing_branches": [[705, 706], [707, 708]]}, "COCOEvaluator.eval_imgs": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [722], "excluded_lines": [], "start_line": 720, "executed_branches": [], "missing_branches": []}, "COCOEvaluator.results": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [727], "excluded_lines": [], "start_line": 725, "executed_branches": [], "missing_branches": []}, "COCOEvaluator.stats": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [732], "excluded_lines": [], "start_line": 730, "executed_branches": [], "missing_branches": []}, "COCOEvaluator.ious": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [737], "excluded_lines": [], "start_line": 735, "executed_branches": [], "missing_branches": []}, "COCOEvaluator._targets": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [741], "excluded_lines": [], "start_line": 740, "executed_branches": [], "missing_branches": []}, "COCOEvaluator._predictions": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [745], "excluded_lines": [], "start_line": 744, "executed_branches": [], "missing_branches": []}, "COCOEvaluator._prepare_targets_and_predictions": {"executed_lines": [752, 755, 757, 760, 763, 764, 765, 768, 769, 770, 773, 774, 775, 778, 779], "summary": {"covered_lines": 15, "num_statements": 15, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 6, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 747, "executed_branches": [[763, 764], [763, 768], [769, 770], [769, 773], [774, 775], [774, 778]], "missing_branches": []}, "COCOEvaluator._compute_iou": {"executed_lines": [794, 795, 798, 799, 800, 803, 804, 808, 811, 812, 815, 817, 820], "summary": {"covered_lines": 13, "num_statements": 14, "percent_covered": 88.88888888888889, "percent_covered_display": "89", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 92.85714285714286, "percent_statements_covered_display": "93", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [809], "excluded_lines": [], "start_line": 781, "executed_branches": [[798, 799], [798, 803], [808, 811]], "missing_branches": [[808, 809]]}, "COCOEvaluator._evaluate_image": {"executed_lines": [841, 842, 845, 846, 848, 852, 853, 854, 856, 859, 860, 863, 864, 867, 874, 875, 876, 879, 880, 882, 883, 884, 886, 888, 890, 892, 894, 897, 898, 899, 901, 910, 911, 912, 915, 916, 917, 918, 921, 926, 933], "summary": {"covered_lines": 41, "num_statements": 42, "percent_covered": 96.875, "percent_covered_display": "97", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 97.61904761904762, "percent_statements_covered_display": "98", "num_branches": 22, "num_partial_branches": 1, "covered_branches": 21, "missing_branches": 1, "percent_branches_covered": 95.45454545454545, "percent_branches_covered_display": "95"}, "missing_lines": [907], "excluded_lines": [], "start_line": 822, "executed_branches": [[845, 846], [845, 848], [852, 853], [852, 859], [853, 854], [853, 856], [884, 886], [884, 921], [886, 888], [886, 921], [888, 886], [888, 890], [894, 897], [894, 915], [898, 899], [898, 901], [901, 910], [910, 894], [910, 911], [915, 888], [915, 916]], "missing_branches": [[901, 907]]}, "COCOEvaluator._initialize_accumulation": {"executed_lines": [960, 961, 962, 963, 964, 965, 967, 977, 981, 992], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 947, "executed_branches": [], "missing_branches": []}, "COCOEvaluator._select_evaluation_indices": {"executed_lines": [1007, 1008, 1011, 1012, 1014, 1017, 1020, 1025, 1029], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1004, "executed_branches": [], "missing_branches": []}, "COCOEvaluator._compute_raw_metrics": {"executed_lines": [1049, 1050, 1052, 1053, 1055, 1056, 1060, 1062, 1065, 1068, 1069, 1071, 1074, 1078, 1081, 1083, 1084, 1086, 1089, 1093, 1096, 1100, 1101, 1102, 1103, 1104, 1105, 1106, 1107, 1109, 1113, 1114, 1115, 1117, 1120, 1121, 1122, 1123, 1126, 1127, 1129, 1132], "summary": {"covered_lines": 42, "num_statements": 43, "percent_covered": 96.82539682539682, "percent_covered_display": "97", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 97.67441860465117, "percent_statements_covered_display": "98", "num_branches": 20, "num_partial_branches": 1, "covered_branches": 19, "missing_branches": 1, "percent_branches_covered": 95.0, "percent_branches_covered_display": "95"}, "missing_lines": [1063], "excluded_lines": [], "start_line": 1036, "executed_branches": [[1049, -1036], [1049, 1050], [1052, 1049], [1052, 1053], [1055, 1052], [1055, 1056], [1062, 1065], [1083, 1084], [1083, 1086], [1100, 1055], [1100, 1101], [1113, 1114], [1113, 1117], [1114, 1113], [1114, 1115], [1121, 1122], [1121, 1129], [1123, 1121], [1123, 1126]], "missing_branches": [[1062, 1063]]}, "COCOEvaluator._compute_average_precision": {"executed_lines": [1140, 1141, 1143, 1156], "summary": {"covered_lines": 4, "num_statements": 7, "percent_covered": 57.142857142857146, "percent_covered_display": "57", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 57.142857142857146, "percent_statements_covered_display": "57", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [1170, 1171, 1172], "excluded_lines": [], "start_line": 1137, "executed_branches": [], "missing_branches": []}, "COCOEvaluator._compute_average_precision.mean_with_mask": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 4, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 4, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [1146, 1147, 1148, 1154], "excluded_lines": [], "start_line": 1143, "executed_branches": [], "missing_branches": []}, "COCOEvaluator._compute_average_precision_by_size": {"executed_lines": [1178, 1180, 1181, 1184], "summary": {"covered_lines": 4, "num_statements": 14, "percent_covered": 28.571428571428573, "percent_covered_display": "29", "missing_lines": 10, "excluded_lines": 0, "percent_statements_covered": 28.571428571428573, "percent_statements_covered_display": "29", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [1188, 1189, 1192, 1196, 1197, 1200, 1204, 1205, 1208, 1212], "excluded_lines": [], "start_line": 1174, "executed_branches": [], "missing_branches": []}, "COCOEvaluator._accumulate": {"executed_lines": [1224, 1236, 1243, 1256], "summary": {"covered_lines": 4, "num_statements": 5, "percent_covered": 80.0, "percent_covered_display": "80", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 80.0, "percent_statements_covered_display": "80", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [1258], "excluded_lines": [], "start_line": 1223, "executed_branches": [], "missing_branches": []}, "COCOEvaluator._pycocotools_summarize": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 4, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 4, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 2, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [1279, 1322, 1366, 1367], "excluded_lines": [], "start_line": 1274, "executed_branches": [], "missing_branches": [[1366, -1274], [1366, 1367]]}, "COCOEvaluator._pycocotools_summarize._summarize": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 23, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 23, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 8, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 8, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [1285, 1286, 1287, 1288, 1293, 1294, 1295, 1296, 1299, 1301, 1302, 1303, 1304, 1308, 1309, 1310, 1311, 1312, 1313, 1314, 1316, 1317, 1320], "excluded_lines": [], "start_line": 1279, "executed_branches": [], "missing_branches": [[1296, 1299], [1296, 1308], [1301, 1302], [1301, 1304], [1309, 1310], [1309, 1312], [1313, 1314], [1313, 1316]]}, "COCOEvaluator._pycocotools_summarize._summarize_predictions": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 14, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 14, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [1323, 1324, 1325, 1328, 1331, 1336, 1341, 1346, 1347, 1348, 1349, 1354, 1359, 1364], "excluded_lines": [], "start_line": 1322, "executed_branches": [], "missing_branches": []}, "COCOEvaluator.evaluate": {"executed_lines": [1375, 1376, 1377, 1379, 1382, 1389, 1392, 1400], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1369, "executed_branches": [], "missing_branches": []}, "MeanAveragePrecision.__init__": {"executed_lines": [1457, 1458, 1460, 1461, 1462, 1463], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1441, "executed_branches": [], "missing_branches": []}, "MeanAveragePrecision.reset": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 2, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [1469, 1470], "excluded_lines": [], "start_line": 1465, "executed_branches": [], "missing_branches": []}, "MeanAveragePrecision.update": {"executed_lines": [1487, 1489, 1492, 1498, 1509, 1510, 1512], "summary": {"covered_lines": 7, "num_statements": 18, "percent_covered": 32.35294117647059, "percent_covered_display": "32", "missing_lines": 11, "excluded_lines": 0, "percent_statements_covered": 38.888888888888886, "percent_statements_covered_display": "39", "num_branches": 16, "num_partial_branches": 4, "covered_branches": 4, "missing_branches": 12, "percent_branches_covered": 25.0, "percent_branches_covered_display": "25"}, "missing_lines": [1488, 1490, 1493, 1499, 1500, 1502, 1503, 1504, 1505, 1506, 1507], "excluded_lines": [], "start_line": 1472, "executed_branches": [[1487, 1489], [1489, 1492], [1492, 1498], [1498, 1509]], "missing_branches": [[1487, 1488], [1489, 1490], [1492, 1493], [1498, 1499], [1502, 1503], [1502, 1505], [1503, 1502], [1503, 1504], [1505, 1506], [1505, 1509], [1506, 1505], [1506, 1507]]}, "MeanAveragePrecision._prepare_targets": {"executed_lines": [1518, 1519, 1522, 1523, 1524, 1528, 1531, 1532, 1535, 1537, 1538, 1539, 1542, 1545, 1546, 1547, 1549, 1550, 1552, 1553, 1556, 1565, 1567, 1568, 1570], "summary": {"covered_lines": 25, "num_statements": 30, "percent_covered": 78.0, "percent_covered_display": "78", "missing_lines": 5, "excluded_lines": 0, "percent_statements_covered": 83.33333333333333, "percent_statements_covered_display": "83", "num_branches": 20, "num_partial_branches": 6, "covered_branches": 14, "missing_branches": 6, "percent_branches_covered": 70.0, "percent_branches_covered_display": "70"}, "missing_lines": [1520, 1525, 1529, 1540, 1554], "excluded_lines": [], "start_line": 1514, "executed_branches": [[1519, 1522], [1523, 1524], [1523, 1567], [1524, 1528], [1528, 1531], [1531, 1523], [1531, 1532], [1537, 1538], [1539, 1542], [1546, 1547], [1546, 1549], [1549, 1550], [1549, 1552], [1553, 1556]], "missing_branches": [[1519, 1520], [1524, 1525], [1528, 1529], [1537, 1545], [1539, 1540], [1553, 1554]]}, "MeanAveragePrecision._prepare_predictions": {"executed_lines": [1581, 1582, 1583, 1586, 1589, 1590, 1592, 1593, 1595, 1596, 1597, 1600, 1602, 1603, 1606, 1607, 1611, 1613, 1614, 1616, 1624, 1625], "summary": {"covered_lines": 22, "num_statements": 25, "percent_covered": 81.3953488372093, "percent_covered_display": "81", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 88.0, "percent_statements_covered_display": "88", "num_branches": 18, "num_partial_branches": 5, "covered_branches": 13, "missing_branches": 5, "percent_branches_covered": 72.22222222222223, "percent_branches_covered_display": "72"}, "missing_lines": [1584, 1587, 1598], "excluded_lines": [], "start_line": 1576, "executed_branches": [[1582, 1583], [1582, 1625], [1583, 1586], [1586, 1589], [1589, 1582], [1589, 1590], [1595, 1596], [1597, 1600], [1602, 1603], [1607, 1611], [1607, 1613], [1613, 1614], [1613, 1616]], "missing_branches": [[1583, 1584], [1586, 1587], [1595, 1602], [1597, 1598], [1602, 1606]]}, "MeanAveragePrecision.compute": {"executed_lines": [1636, 1637, 1639, 1645, 1646, 1648, 1650, 1652, 1655], "summary": {"covered_lines": 9, "num_statements": 15, "percent_covered": 58.8235294117647, "percent_covered_display": "59", "missing_lines": 6, "excluded_lines": 0, "percent_statements_covered": 60.0, "percent_statements_covered_display": "60", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [1640, 1658, 1667, 1676, 1686, 1697], "excluded_lines": [], "start_line": 1627, "executed_branches": [[1639, 1645]], "missing_branches": [[1639, 1640]]}, "": {"executed_lines": [1, 3, 4, 5, 6, 7, 8, 9, 10, 12, 13, 14, 16, 17, 18, 19, 20, 21, 23, 29, 30, 33, 34, 35, 38, 39, 62, 63, 64, 65, 66, 67, 68, 72, 103, 104, 112, 113, 117, 118, 122, 123, 130, 131, 140, 141, 148, 149, 158, 159, 166, 167, 176, 235, 270, 339, 345, 370, 371, 374, 404, 458, 504, 535, 549, 617, 618, 619, 622, 625, 630, 631, 632, 633, 636, 641, 674, 675, 678, 679, 680, 683, 686, 687, 690, 695, 719, 720, 724, 725, 729, 730, 734, 735, 739, 740, 743, 744, 747, 781, 822, 947, 1004, 1036, 1136, 1137, 1174, 1223, 1274, 1369, 1403, 1441, 1465, 1472, 1514, 1576, 1627], "summary": {"covered_lines": 117, "num_statements": 117, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 2, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [25, 26], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"MeanAveragePrecisionSizeResults": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 30, "executed_branches": [], "missing_branches": []}, "MeanAveragePrecisionResult": {"executed_lines": [84, 85, 86, 87, 88, 89, 90, 92, 97, 125, 128, 143, 146, 150, 153, 156, 161, 164], "summary": {"covered_lines": 18, "num_statements": 88, "percent_covered": 18.939393939393938, "percent_covered_display": "19", "missing_lines": 70, "excluded_lines": 0, "percent_statements_covered": 20.454545454545453, "percent_statements_covered_display": "20", "num_branches": 44, "num_partial_branches": 5, "covered_branches": 7, "missing_branches": 37, "percent_branches_covered": 15.909090909090908, "percent_branches_covered_display": "16"}, "missing_lines": [106, 107, 108, 110, 115, 120, 126, 132, 133, 135, 136, 138, 144, 151, 154, 162, 168, 169, 171, 172, 174, 206, 211, 220, 242, 243, 245, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 265, 279, 280, 281, 283, 284, 285, 290, 292, 293, 294, 299, 301, 302, 303, 308, 310, 312, 313, 314, 315, 317, 318, 320, 321, 323, 324, 325, 333, 335, 336], "excluded_lines": [], "start_line": 39, "executed_branches": [[92, -72], [92, 97], [125, 128], [143, 146], [150, 153], [153, 156], [161, 164]], "missing_branches": [[107, 108], [107, 110], [125, 126], [132, 133], [132, 135], [135, 136], [135, 138], [143, 144], [150, 151], [153, 154], [161, 162], [168, 169], [168, 171], [171, 172], [171, 174], [206, 211], [206, 220], [251, 252], [251, 255], [253, 254], [253, 255], [255, 256], [255, 259], [257, 258], [257, 259], [259, 260], [259, 265], [261, 262], [261, 265], [283, 284], [283, 292], [292, 293], [292, 301], [301, 302], [301, 310], [323, 324], [323, 333]]}, "EvaluationDataset": {"executed_lines": [356, 357, 358, 359, 360, 361, 363, 364, 367, 368, 372, 378, 379, 380, 381, 382, 383, 385, 386, 387, 389, 390, 391, 393, 394, 395, 398, 399, 400, 401, 402, 422, 425, 426, 431, 436, 443, 452, 455, 456, 476, 477, 501, 502, 520, 521, 522, 545, 547, 560, 561, 563, 567, 568, 569, 571, 574, 579, 583, 587, 592, 593, 598, 599, 600, 603, 604, 606, 608, 610, 611, 612, 613], "summary": {"covered_lines": 73, "num_statements": 93, "percent_covered": 70.74829931972789, "percent_covered_display": "71", "missing_lines": 20, "excluded_lines": 0, "percent_statements_covered": 78.49462365591398, "percent_statements_covered_display": "78", "num_branches": 54, "num_partial_branches": 17, "covered_branches": 31, "missing_branches": 23, "percent_branches_covered": 57.407407407407405, "percent_branches_covered_display": "57"}, "missing_lines": [423, 433, 453, 479, 482, 489, 498, 524, 526, 527, 528, 529, 531, 533, 546, 564, 580, 584, 588, 607], "excluded_lines": [], "start_line": 339, "executed_branches": [[363, 364], [363, 367], [380, 381], [381, 382], [381, 385], [385, 386], [386, 387], [386, 389], [389, 390], [390, 391], [390, 393], [393, 394], [394, 395], [394, 398], [422, 425], [425, 426], [452, 455], [476, 477], [520, 521], [545, 547], [563, 567], [567, 568], [567, 571], [579, 583], [583, 587], [587, 592], [592, 593], [598, 599], [598, 611], [603, 604], [606, 608]], "missing_branches": [[380, 385], [385, 389], [389, 393], [393, 398], [422, 423], [425, 433], [452, 453], [476, 479], [520, 524], [526, 527], [526, 533], [527, 528], [527, 533], [528, 529], [528, 531], [545, 546], [563, 564], [579, 580], [583, 584], [587, 588], [592, 611], [603, 606], [606, 607]]}, "ObjectSize": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 625, "executed_branches": [], "missing_branches": []}, "COCOEvaluatorParameters": {"executed_lines": [644, 645, 648, 656, 664, 666], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 636, "executed_branches": [], "missing_branches": []}, "COCOEvaluatorState": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 675, "executed_branches": [], "missing_branches": []}, "COCOEvaluator": {"executed_lines": [705, 707, 710, 711, 713, 714, 716, 717, 752, 755, 757, 760, 763, 764, 765, 768, 769, 770, 773, 774, 775, 778, 779, 794, 795, 798, 799, 800, 803, 804, 808, 811, 812, 815, 817, 820, 841, 842, 845, 846, 848, 852, 853, 854, 856, 859, 860, 863, 864, 867, 874, 875, 876, 879, 880, 882, 883, 884, 886, 888, 890, 892, 894, 897, 898, 899, 901, 910, 911, 912, 915, 916, 917, 918, 921, 926, 933, 960, 961, 962, 963, 964, 965, 967, 977, 981, 992, 1007, 1008, 1011, 1012, 1014, 1017, 1020, 1025, 1029, 1049, 1050, 1052, 1053, 1055, 1056, 1060, 1062, 1065, 1068, 1069, 1071, 1074, 1078, 1081, 1083, 1084, 1086, 1089, 1093, 1096, 1100, 1101, 1102, 1103, 1104, 1105, 1106, 1107, 1109, 1113, 1114, 1115, 1117, 1120, 1121, 1122, 1123, 1126, 1127, 1129, 1132, 1140, 1141, 1143, 1156, 1178, 1180, 1181, 1184, 1224, 1236, 1243, 1256, 1375, 1376, 1377, 1379, 1382, 1389, 1392, 1400], "summary": {"covered_lines": 158, "num_statements": 228, "percent_covered": 71.08843537414965, "percent_covered_display": "71", "missing_lines": 70, "excluded_lines": 0, "percent_statements_covered": 69.29824561403508, "percent_statements_covered_display": "69", "num_branches": 66, "num_partial_branches": 5, "covered_branches": 51, "missing_branches": 15, "percent_branches_covered": 77.27272727272727, "percent_branches_covered_display": "77"}, "missing_lines": [706, 708, 722, 727, 732, 737, 741, 745, 809, 907, 1063, 1146, 1147, 1148, 1154, 1170, 1171, 1172, 1188, 1189, 1192, 1196, 1197, 1200, 1204, 1205, 1208, 1212, 1258, 1279, 1285, 1286, 1287, 1288, 1293, 1294, 1295, 1296, 1299, 1301, 1302, 1303, 1304, 1308, 1309, 1310, 1311, 1312, 1313, 1314, 1316, 1317, 1320, 1322, 1323, 1324, 1325, 1328, 1331, 1336, 1341, 1346, 1347, 1348, 1349, 1354, 1359, 1364, 1366, 1367], "excluded_lines": [], "start_line": 690, "executed_branches": [[705, 707], [707, 710], [763, 764], [763, 768], [769, 770], [769, 773], [774, 775], [774, 778], [798, 799], [798, 803], [808, 811], [845, 846], [845, 848], [852, 853], [852, 859], [853, 854], [853, 856], [884, 886], [884, 921], [886, 888], [886, 921], [888, 886], [888, 890], [894, 897], [894, 915], [898, 899], [898, 901], [901, 910], [910, 894], [910, 911], [915, 888], [915, 916], [1049, -1036], [1049, 1050], [1052, 1049], [1052, 1053], [1055, 1052], [1055, 1056], [1062, 1065], [1083, 1084], [1083, 1086], [1100, 1055], [1100, 1101], [1113, 1114], [1113, 1117], [1114, 1113], [1114, 1115], [1121, 1122], [1121, 1129], [1123, 1121], [1123, 1126]], "missing_branches": [[705, 706], [707, 708], [808, 809], [901, 907], [1062, 1063], [1296, 1299], [1296, 1308], [1301, 1302], [1301, 1304], [1309, 1310], [1309, 1312], [1313, 1314], [1313, 1316], [1366, -1274], [1366, 1367]]}, "MeanAveragePrecision": {"executed_lines": [1457, 1458, 1460, 1461, 1462, 1463, 1487, 1489, 1492, 1498, 1509, 1510, 1512, 1518, 1519, 1522, 1523, 1524, 1528, 1531, 1532, 1535, 1537, 1538, 1539, 1542, 1545, 1546, 1547, 1549, 1550, 1552, 1553, 1556, 1565, 1567, 1568, 1570, 1581, 1582, 1583, 1586, 1589, 1590, 1592, 1593, 1595, 1596, 1597, 1600, 1602, 1603, 1606, 1607, 1611, 1613, 1614, 1616, 1624, 1625, 1636, 1637, 1639, 1645, 1646, 1648, 1650, 1652, 1655], "summary": {"covered_lines": 69, "num_statements": 96, "percent_covered": 66.44736842105263, "percent_covered_display": "66", "missing_lines": 27, "excluded_lines": 0, "percent_statements_covered": 71.875, "percent_statements_covered_display": "72", "num_branches": 56, "num_partial_branches": 16, "covered_branches": 32, "missing_branches": 24, "percent_branches_covered": 57.142857142857146, "percent_branches_covered_display": "57"}, "missing_lines": [1469, 1470, 1488, 1490, 1493, 1499, 1500, 1502, 1503, 1504, 1505, 1506, 1507, 1520, 1525, 1529, 1540, 1554, 1584, 1587, 1598, 1640, 1658, 1667, 1676, 1686, 1697], "excluded_lines": [], "start_line": 1403, "executed_branches": [[1487, 1489], [1489, 1492], [1492, 1498], [1498, 1509], [1519, 1522], [1523, 1524], [1523, 1567], [1524, 1528], [1528, 1531], [1531, 1523], [1531, 1532], [1537, 1538], [1539, 1542], [1546, 1547], [1546, 1549], [1549, 1550], [1549, 1552], [1553, 1556], [1582, 1583], [1582, 1625], [1583, 1586], [1586, 1589], [1589, 1582], [1589, 1590], [1595, 1596], [1597, 1600], [1602, 1603], [1607, 1611], [1607, 1613], [1613, 1614], [1613, 1616], [1639, 1645]], "missing_branches": [[1487, 1488], [1489, 1490], [1492, 1493], [1498, 1499], [1502, 1503], [1502, 1505], [1503, 1502], [1503, 1504], [1505, 1506], [1505, 1509], [1506, 1505], [1506, 1507], [1519, 1520], [1524, 1525], [1528, 1529], [1537, 1545], [1539, 1540], [1553, 1554], [1583, 1584], [1586, 1587], [1595, 1602], [1597, 1598], [1602, 1606], [1639, 1640]]}, "": {"executed_lines": [1, 3, 4, 5, 6, 7, 8, 9, 10, 12, 13, 14, 16, 17, 18, 19, 20, 21, 23, 29, 30, 33, 34, 35, 38, 39, 62, 63, 64, 65, 66, 67, 68, 72, 103, 104, 112, 113, 117, 118, 122, 123, 130, 131, 140, 141, 148, 149, 158, 159, 166, 167, 176, 235, 270, 339, 345, 370, 371, 374, 404, 458, 504, 535, 549, 617, 618, 619, 622, 625, 630, 631, 632, 633, 636, 641, 674, 675, 678, 679, 680, 683, 686, 687, 690, 695, 719, 720, 724, 725, 729, 730, 734, 735, 739, 740, 743, 744, 747, 781, 822, 947, 1004, 1036, 1136, 1137, 1174, 1223, 1274, 1369, 1403, 1441, 1465, 1472, 1514, 1576, 1627], "summary": {"covered_lines": 117, "num_statements": 117, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 2, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [25, 26], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "src\\supervision\\metrics\\mean_average_recall.py": {"executed_lines": [1, 3, 4, 5, 7, 8, 9, 11, 12, 13, 18, 19, 20, 24, 30, 31, 34, 35, 36, 39, 42, 44, 45, 46, 48, 50, 51, 52, 55, 57, 58, 59, 61, 62, 63, 66, 68, 69, 70, 72, 73, 74, 77, 79, 80, 81, 84, 85, 115, 116, 117, 118, 119, 120, 121, 125, 138, 139, 140, 141, 142, 143, 145, 147, 152, 158, 160, 161, 162, 164, 165, 166, 168, 169, 170, 172, 241, 272, 346, 384, 394, 396, 397, 399, 401, 408, 423, 425, 428, 434, 435, 437, 439, 447, 449, 452, 454, 459, 461, 464, 466, 468, 471, 472, 474, 475, 476, 478, 479, 480, 490, 491, 492, 494, 495, 503, 514, 517, 528, 529, 541, 542, 546, 558, 569, 571, 572, 574, 582, 583, 586, 587, 590, 592, 594, 595, 601, 605, 606, 608, 609, 611, 612, 613, 614, 616, 617, 618, 619, 621, 622, 623, 625, 626, 655, 656, 658, 661, 662, 663, 664, 666, 667, 668, 669, 670, 675, 676, 678, 679, 681, 685, 686, 688, 689, 702, 707, 708, 710, 711, 713, 714, 716, 718, 719, 720, 721, 726, 727, 728, 729, 730, 731, 734, 735, 739, 743, 744, 745, 749, 753, 754, 755, 757, 758, 760, 761, 763, 764, 765, 766, 767, 769, 770, 771, 773, 775, 784, 785, 786, 787, 790, 793], "summary": {"covered_lines": 223, "num_statements": 316, "percent_covered": 65.96244131455398, "percent_covered_display": "66", "missing_lines": 93, "excluded_lines": 3, "percent_statements_covered": 70.56962025316456, "percent_statements_covered_display": "71", "num_branches": 110, "num_partial_branches": 20, "covered_branches": 58, "missing_branches": 52, "percent_branches_covered": 52.72727272727273, "percent_branches_covered_display": "53"}, "missing_lines": [53, 64, 75, 146, 211, 221, 222, 223, 226, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 239, 248, 249, 251, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 270, 280, 281, 282, 284, 285, 286, 287, 292, 294, 295, 296, 297, 302, 304, 305, 306, 307, 312, 314, 316, 317, 318, 319, 322, 324, 325, 327, 328, 330, 331, 332, 340, 342, 343, 405, 406, 424, 426, 429, 493, 499, 671, 672, 673, 703, 722, 723, 724, 725, 732, 736, 737, 740, 741, 747, 762, 768], "excluded_lines": [26, 27, 173], "executed_branches": [[45, 46], [45, 48], [52, 55], [63, 66], [74, 77], [145, 147], [147, 152], [147, 158], [423, 425], [425, 428], [428, 434], [474, 475], [474, 528], [478, 474], [478, 479], [479, 480], [479, 490], [490, 491], [490, 492], [492, 494], [494, 495], [528, 529], [528, 541], [572, 574], [572, 586], [608, 609], [608, 622], [611, 608], [611, 612], [616, 617], [616, 621], [661, 662], [661, 685], [666, 667], [666, 670], [670, 675], [702, 707], [718, 719], [718, 721], [721, 726], [726, 727], [728, 729], [728, 731], [735, 739], [739, 743], [743, 744], [754, 755], [754, 757], [761, 763], [763, 764], [765, 766], [765, 767], [767, 769], [769, 770], [770, 771], [770, 773], [786, 787], [786, 793]], "missing_branches": [[52, 53], [63, 64], [74, 75], [145, 146], [221, 222], [221, 223], [223, 226], [223, 228], [229, 230], [229, 232], [232, 233], [232, 235], [235, 236], [235, 239], [257, 258], [257, 261], [259, 260], [259, 261], [261, 262], [261, 265], [263, 264], [263, 265], [265, 266], [265, 270], [267, 268], [267, 270], [284, 285], [284, 294], [294, 295], [294, 304], [304, 305], [304, 314], [330, 331], [330, 340], [423, 424], [425, 426], [428, 429], [492, 493], [494, 499], [670, 671], [702, 703], [721, 722], [722, 723], [722, 725], [726, 732], [735, 736], [739, 740], [743, 747], [761, 762], [763, 765], [767, 768], [769, 773]], "functions": {"_MeanAverageRecallSizeResultsMixin._ensure_size_results": {"executed_lines": [45, 46, 48], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 44, "executed_branches": [[45, 46], [45, 48]], "missing_branches": []}, "_MeanAverageRecallSizeResultsMixin.small_objects": {"executed_lines": [59], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 58, "executed_branches": [], "missing_branches": []}, "_MeanAverageRecallSizeResultsMixin.medium_objects": {"executed_lines": [70], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 69, "executed_branches": [], "missing_branches": []}, "_MeanAverageRecallSizeResultsMixin.large_objects": {"executed_lines": [81], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 80, "executed_branches": [], "missing_branches": []}, "MeanAverageRecallResult.__init__": {"executed_lines": [138, 139, 140, 141, 142, 143, 145, 147, 152, 158], "summary": {"covered_lines": 10, "num_statements": 11, "percent_covered": 86.66666666666667, "percent_covered_display": "87", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 90.9090909090909, "percent_statements_covered_display": "91", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [146], "excluded_lines": [], "start_line": 125, "executed_branches": [[145, 147], [147, 152], [147, 158]], "missing_branches": [[145, 146]]}, "MeanAverageRecallResult.mAR_at_1": {"executed_lines": [162], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 161, "executed_branches": [], "missing_branches": []}, "MeanAverageRecallResult.mAR_at_10": {"executed_lines": [166], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 165, "executed_branches": [], "missing_branches": []}, "MeanAverageRecallResult.mAR_at_100": {"executed_lines": [170], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 169, "executed_branches": [], "missing_branches": []}, "MeanAverageRecallResult.__str__": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 16, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 16, "excluded_lines": 1, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 10, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 10, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [211, 221, 222, 223, 226, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 239], "excluded_lines": [173], "start_line": 172, "executed_branches": [], "missing_branches": [[221, 222], [221, 223], [223, 226], [223, 228], [229, 230], [229, 232], [232, 233], [232, 235], [235, 236], [235, 239]]}, "MeanAverageRecallResult.to_pandas": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 16, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 16, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 12, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 12, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [248, 249, 251, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 270], "excluded_lines": [], "start_line": 241, "executed_branches": [], "missing_branches": [[257, 258], [257, 261], [259, 260], [259, 261], [261, 262], [261, 265], [263, 264], [263, 265], [265, 266], [265, 270], [267, 268], [267, 270]]}, "MeanAverageRecallResult.plot": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 34, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 34, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 8, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 8, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [280, 281, 282, 284, 285, 286, 287, 292, 294, 295, 296, 297, 302, 304, 305, 306, 307, 312, 314, 316, 317, 318, 319, 322, 324, 325, 327, 328, 330, 331, 332, 340, 342, 343], "excluded_lines": [], "start_line": 272, "executed_branches": [], "missing_branches": [[284, 285], [284, 294], [294, 295], [294, 304], [304, 305], [304, 314], [330, 331], [330, 340]]}, "MeanAverageRecall.__init__": {"executed_lines": [394, 396, 397, 399], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 384, "executed_branches": [], "missing_branches": []}, "MeanAverageRecall.reset": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 2, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [405, 406], "excluded_lines": [], "start_line": 401, "executed_branches": [], "missing_branches": []}, "MeanAverageRecall.update": {"executed_lines": [423, 425, 428, 434, 435, 437], "summary": {"covered_lines": 6, "num_statements": 9, "percent_covered": 60.0, "percent_covered_display": "60", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 66.66666666666667, "percent_statements_covered_display": "67", "num_branches": 6, "num_partial_branches": 3, "covered_branches": 3, "missing_branches": 3, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [424, 426, 429], "excluded_lines": [], "start_line": 408, "executed_branches": [[423, 425], [425, 428], [428, 434]], "missing_branches": [[423, 424], [425, 426], [428, 429]]}, "MeanAverageRecall.compute": {"executed_lines": [447, 449, 452, 454, 459, 461, 464, 466], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 439, "executed_branches": [], "missing_branches": []}, "MeanAverageRecall._compute": {"executed_lines": [471, 472, 474, 475, 476, 478, 479, 480, 490, 491, 492, 494, 495, 503, 514, 517, 528, 529, 541, 542, 546], "summary": {"covered_lines": 21, "num_statements": 23, "percent_covered": 89.1891891891892, "percent_covered_display": "89", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 91.30434782608695, "percent_statements_covered_display": "91", "num_branches": 14, "num_partial_branches": 2, "covered_branches": 12, "missing_branches": 2, "percent_branches_covered": 85.71428571428571, "percent_branches_covered_display": "86"}, "missing_lines": [493, 499], "excluded_lines": [], "start_line": 468, "executed_branches": [[474, 475], [474, 528], [478, 474], [478, 479], [479, 480], [479, 490], [490, 491], [490, 492], [492, 494], [494, 495], [528, 529], [528, 541]], "missing_branches": [[492, 493], [494, 499]]}, "MeanAverageRecall._compute_average_recall_for_classes": {"executed_lines": [569, 571, 572, 574, 582, 583, 586, 587, 590, 592], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 558, "executed_branches": [[572, 574], [572, 586]], "missing_branches": []}, "MeanAverageRecall._match_detection_batch": {"executed_lines": [601, 605, 606, 608, 609, 611, 612, 613, 614, 616, 617, 618, 619, 621, 622, 623], "summary": {"covered_lines": 16, "num_statements": 16, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 6, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 595, "executed_branches": [[608, 609], [608, 622], [611, 608], [611, 612], [616, 617], [616, 621]], "missing_branches": []}, "MeanAverageRecall._compute_confusion_matrix": {"executed_lines": [655, 656, 658, 661, 662, 663, 664, 666, 667, 668, 669, 670, 675, 676, 678, 679, 681, 685, 686], "summary": {"covered_lines": 19, "num_statements": 22, "percent_covered": 85.71428571428571, "percent_covered_display": "86", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 86.36363636363636, "percent_statements_covered_display": "86", "num_branches": 6, "num_partial_branches": 1, "covered_branches": 5, "missing_branches": 1, "percent_branches_covered": 83.33333333333333, "percent_branches_covered_display": "83"}, "missing_lines": [671, 672, 673], "excluded_lines": [], "start_line": 626, "executed_branches": [[661, 662], [661, 685], [666, 667], [666, 670], [670, 675]], "missing_branches": [[670, 671]]}, "MeanAverageRecall._compute_recall": {"executed_lines": [702, 707, 708, 710, 711, 713, 714], "summary": {"covered_lines": 7, "num_statements": 8, "percent_covered": 80.0, "percent_covered_display": "80", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 87.5, "percent_statements_covered_display": "88", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [703], "excluded_lines": [], "start_line": 689, "executed_branches": [[702, 707]], "missing_branches": [[702, 703]]}, "MeanAverageRecall._detections_content": {"executed_lines": [718, 719, 720, 721, 726, 727, 728, 729, 730, 731], "summary": {"covered_lines": 10, "num_statements": 15, "percent_covered": 64.0, "percent_covered_display": "64", "missing_lines": 5, "excluded_lines": 0, "percent_statements_covered": 66.66666666666667, "percent_statements_covered_display": "67", "num_branches": 10, "num_partial_branches": 2, "covered_branches": 6, "missing_branches": 4, "percent_branches_covered": 60.0, "percent_branches_covered_display": "60"}, "missing_lines": [722, 723, 724, 725, 732], "excluded_lines": [], "start_line": 716, "executed_branches": [[718, 719], [718, 721], [721, 726], [726, 727], [728, 729], [728, 731]], "missing_branches": [[721, 722], [722, 723], [722, 725], [726, 732]]}, "MeanAverageRecall._make_empty_content": {"executed_lines": [735, 739, 743, 744, 745], "summary": {"covered_lines": 5, "num_statements": 10, "percent_covered": 50.0, "percent_covered_display": "50", "missing_lines": 5, "excluded_lines": 0, "percent_statements_covered": 50.0, "percent_statements_covered_display": "50", "num_branches": 6, "num_partial_branches": 3, "covered_branches": 3, "missing_branches": 3, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [736, 737, 740, 741, 747], "excluded_lines": [], "start_line": 734, "executed_branches": [[735, 739], [739, 743], [743, 744]], "missing_branches": [[735, 736], [739, 740], [743, 747]]}, "MeanAverageRecall._filter_detections_by_size": {"executed_lines": [753, 754, 755, 757, 758, 760, 761, 763, 764, 765, 766, 767, 769, 770, 771, 773], "summary": {"covered_lines": 16, "num_statements": 18, "percent_covered": 81.25, "percent_covered_display": "81", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 88.88888888888889, "percent_statements_covered_display": "89", "num_branches": 14, "num_partial_branches": 4, "covered_branches": 10, "missing_branches": 4, "percent_branches_covered": 71.42857142857143, "percent_branches_covered_display": "71"}, "missing_lines": [762, 768], "excluded_lines": [], "start_line": 749, "executed_branches": [[754, 755], [754, 757], [761, 763], [763, 764], [765, 766], [765, 767], [767, 769], [769, 770], [770, 771], [770, 773]], "missing_branches": [[761, 762], [763, 765], [767, 768], [769, 773]]}, "MeanAverageRecall._filter_predictions_and_targets_by_size": {"executed_lines": [784, 785, 786, 787, 790, 793], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 775, "executed_branches": [[786, 787], [786, 793]], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 5, 7, 8, 9, 11, 12, 13, 18, 19, 20, 24, 30, 31, 34, 35, 36, 39, 42, 44, 50, 51, 57, 58, 61, 62, 68, 69, 72, 73, 79, 80, 84, 85, 115, 116, 117, 118, 119, 120, 121, 125, 160, 161, 164, 165, 168, 169, 172, 241, 272, 346, 384, 401, 408, 439, 468, 558, 594, 595, 625, 626, 688, 689, 716, 734, 749, 775], "summary": {"covered_lines": 70, "num_statements": 70, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 2, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [26, 27], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"MeanAverageRecallSizeResults": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 31, "executed_branches": [], "missing_branches": []}, "_MeanAverageRecallSizeResultsMixin": {"executed_lines": [45, 46, 48, 52, 55, 59, 63, 66, 70, 74, 77, 81], "summary": {"covered_lines": 12, "num_statements": 15, "percent_covered": 73.91304347826087, "percent_covered_display": "74", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 80.0, "percent_statements_covered_display": "80", "num_branches": 8, "num_partial_branches": 3, "covered_branches": 5, "missing_branches": 3, "percent_branches_covered": 62.5, "percent_branches_covered_display": "62"}, "missing_lines": [53, 64, 75], "excluded_lines": [], "start_line": 39, "executed_branches": [[45, 46], [45, 48], [52, 55], [63, 66], [74, 77]], "missing_branches": [[52, 53], [63, 64], [74, 75]]}, "MeanAverageRecallResult": {"executed_lines": [138, 139, 140, 141, 142, 143, 145, 147, 152, 158, 162, 166, 170], "summary": {"covered_lines": 13, "num_statements": 80, "percent_covered": 14.035087719298245, "percent_covered_display": "14", "missing_lines": 67, "excluded_lines": 1, "percent_statements_covered": 16.25, "percent_statements_covered_display": "16", "num_branches": 34, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 31, "percent_branches_covered": 8.823529411764707, "percent_branches_covered_display": "9"}, "missing_lines": [146, 211, 221, 222, 223, 226, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 239, 248, 249, 251, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 270, 280, 281, 282, 284, 285, 286, 287, 292, 294, 295, 296, 297, 302, 304, 305, 306, 307, 312, 314, 316, 317, 318, 319, 322, 324, 325, 327, 328, 330, 331, 332, 340, 342, 343], "excluded_lines": [173], "start_line": 85, "executed_branches": [[145, 147], [147, 152], [147, 158]], "missing_branches": [[145, 146], [221, 222], [221, 223], [223, 226], [223, 228], [229, 230], [229, 232], [232, 233], [232, 235], [235, 236], [235, 239], [257, 258], [257, 261], [259, 260], [259, 261], [261, 262], [261, 265], [263, 264], [263, 265], [265, 266], [265, 270], [267, 268], [267, 270], [284, 285], [284, 294], [294, 295], [294, 304], [304, 305], [304, 314], [330, 331], [330, 340]]}, "MeanAverageRecall": {"executed_lines": [394, 396, 397, 399, 423, 425, 428, 434, 435, 437, 447, 449, 452, 454, 459, 461, 464, 466, 471, 472, 474, 475, 476, 478, 479, 480, 490, 491, 492, 494, 495, 503, 514, 517, 528, 529, 541, 542, 546, 569, 571, 572, 574, 582, 583, 586, 587, 590, 592, 601, 605, 606, 608, 609, 611, 612, 613, 614, 616, 617, 618, 619, 621, 622, 623, 655, 656, 658, 661, 662, 663, 664, 666, 667, 668, 669, 670, 675, 676, 678, 679, 681, 685, 686, 702, 707, 708, 710, 711, 713, 714, 718, 719, 720, 721, 726, 727, 728, 729, 730, 731, 735, 739, 743, 744, 745, 753, 754, 755, 757, 758, 760, 761, 763, 764, 765, 766, 767, 769, 770, 771, 773, 784, 785, 786, 787, 790, 793], "summary": {"covered_lines": 128, "num_statements": 151, "percent_covered": 81.27853881278538, "percent_covered_display": "81", "missing_lines": 23, "excluded_lines": 0, "percent_statements_covered": 84.76821192052981, "percent_statements_covered_display": "85", "num_branches": 68, "num_partial_branches": 16, "covered_branches": 50, "missing_branches": 18, "percent_branches_covered": 73.52941176470588, "percent_branches_covered_display": "74"}, "missing_lines": [405, 406, 424, 426, 429, 493, 499, 671, 672, 673, 703, 722, 723, 724, 725, 732, 736, 737, 740, 741, 747, 762, 768], "excluded_lines": [], "start_line": 346, "executed_branches": [[423, 425], [425, 428], [428, 434], [474, 475], [474, 528], [478, 474], [478, 479], [479, 480], [479, 490], [490, 491], [490, 492], [492, 494], [494, 495], [528, 529], [528, 541], [572, 574], [572, 586], [608, 609], [608, 622], [611, 608], [611, 612], [616, 617], [616, 621], [661, 662], [661, 685], [666, 667], [666, 670], [670, 675], [702, 707], [718, 719], [718, 721], [721, 726], [726, 727], [728, 729], [728, 731], [735, 739], [739, 743], [743, 744], [754, 755], [754, 757], [761, 763], [763, 764], [765, 766], [765, 767], [767, 769], [769, 770], [770, 771], [770, 773], [786, 787], [786, 793]], "missing_branches": [[423, 424], [425, 426], [428, 429], [492, 493], [494, 499], [670, 671], [702, 703], [721, 722], [722, 723], [722, 725], [726, 732], [735, 736], [739, 740], [743, 747], [761, 762], [763, 765], [767, 768], [769, 773]]}, "": {"executed_lines": [1, 3, 4, 5, 7, 8, 9, 11, 12, 13, 18, 19, 20, 24, 30, 31, 34, 35, 36, 39, 42, 44, 50, 51, 57, 58, 61, 62, 68, 69, 72, 73, 79, 80, 84, 85, 115, 116, 117, 118, 119, 120, 121, 125, 160, 161, 164, 165, 168, 169, 172, 241, 272, 346, 384, 401, 408, 439, 468, 558, 594, 595, 625, 626, 688, 689, 716, 734, 749, 775], "summary": {"covered_lines": 70, "num_statements": 70, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 2, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [26, 27], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "src\\supervision\\metrics\\precision.py": {"executed_lines": [1, 3, 4, 5, 7, 8, 9, 11, 12, 13, 18, 19, 20, 24, 30, 31, 34, 35, 36, 39, 40, 70, 71, 73, 74, 75, 76, 77, 81, 93, 94, 95, 96, 97, 98, 99, 101, 106, 112, 113, 114, 116, 117, 118, 120, 121, 123, 126, 128, 129, 130, 133, 134, 136, 138, 139, 141, 144, 146, 147, 148, 151, 154, 156, 157, 159, 162, 164, 165, 166, 169, 172, 174, 244, 274, 338, 377, 390, 391, 393, 394, 396, 400, 401, 403, 418, 419, 420, 421, 423, 424, 429, 430, 432, 434, 442, 444, 447, 449, 454, 456, 459, 461, 463, 474, 475, 477, 478, 479, 481, 484, 486, 496, 497, 498, 508, 509, 510, 512, 513, 521, 531, 540, 541, 553, 554, 558, 570, 586, 587, 588, 592, 595, 596, 597, 600, 605, 608, 609, 610, 611, 612, 613, 614, 615, 619, 621, 625, 627, 628, 634, 638, 639, 641, 642, 644, 645, 646, 647, 649, 650, 651, 652, 654, 655, 656, 658, 659, 686, 687, 689, 692, 693, 694, 695, 697, 698, 699, 700, 701, 702, 703, 704, 706, 707, 708, 709, 712, 713, 715, 716, 729, 734, 735, 737, 738, 745, 746, 748, 750, 751, 752, 753, 758, 759, 760, 761, 762, 763, 766, 767, 771, 775, 776, 777, 781, 785, 786, 787, 789, 790, 792, 793, 795, 796, 797, 798, 799, 801, 802, 803, 805, 807, 816, 817, 818, 819, 822, 825], "summary": {"covered_lines": 239, "num_statements": 329, "percent_covered": 68.27133479212254, "percent_covered_display": "68", "missing_lines": 90, "excluded_lines": 3, "percent_statements_covered": 72.64437689969606, "percent_statements_covered_display": "73", "num_branches": 128, "num_partial_branches": 23, "covered_branches": 73, "missing_branches": 55, "percent_branches_covered": 57.03125, "percent_branches_covered_display": "57"}, "missing_lines": [124, 131, 142, 149, 152, 160, 167, 170, 214, 224, 225, 226, 229, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 242, 251, 252, 254, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 272, 282, 283, 284, 286, 287, 288, 289, 290, 292, 293, 294, 295, 296, 298, 299, 300, 301, 302, 304, 306, 307, 308, 309, 314, 316, 317, 319, 320, 322, 323, 324, 332, 334, 335, 485, 511, 517, 730, 754, 755, 756, 757, 764, 768, 769, 772, 773, 779, 794, 800], "excluded_lines": [26, 27, 175], "executed_branches": [[101, -81], [101, 106], [123, 126], [130, 133], [133, 134], [141, 144], [148, 151], [151, 154], [159, 162], [166, 169], [169, 172], [418, 419], [418, 420], [420, 421], [420, 423], [423, 424], [423, 429], [477, 478], [477, 540], [481, 484], [481, 496], [484, 486], [496, 477], [496, 497], [497, 498], [497, 508], [508, 509], [508, 510], [510, 512], [512, 513], [540, 541], [540, 553], [608, 609], [608, 610], [610, 611], [610, 613], [613, 614], [615, 619], [615, 621], [641, 642], [641, 655], [644, 641], [644, 645], [649, 650], [649, 654], [692, 693], [692, 712], [697, 698], [697, 701], [701, 702], [701, 706], [729, 734], [750, 751], [750, 753], [753, 758], [758, 759], [760, 761], [760, 763], [767, 771], [771, 775], [775, 776], [786, 787], [786, 789], [793, 795], [795, 796], [797, 798], [797, 799], [799, 801], [801, 802], [802, 803], [802, 805], [818, 819], [818, 825]], "missing_branches": [[123, 124], [130, 131], [133, 136], [141, 142], [148, 149], [151, 152], [159, 160], [166, 167], [169, 170], [224, 225], [224, 226], [226, 229], [226, 231], [232, 233], [232, 235], [235, 236], [235, 238], [238, 239], [238, 242], [259, 260], [259, 263], [261, 262], [261, 263], [263, 264], [263, 267], [265, 266], [265, 267], [267, 268], [267, 272], [269, 270], [269, 272], [286, 287], [286, 292], [292, 293], [292, 298], [298, 299], [298, 304], [322, 323], [322, 332], [484, 485], [510, 511], [512, 517], [613, 625], [729, 730], [753, 754], [754, 755], [754, 757], [758, 764], [767, 768], [771, 772], [775, 779], [793, 794], [795, 797], [799, 800], [801, 805]], "functions": {"PrecisionResult.__init__": {"executed_lines": [93, 94, 95, 96, 97, 98, 99, 101, 106], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 81, "executed_branches": [[101, -81], [101, 106]], "missing_branches": []}, "PrecisionResult.precision_at_50": {"executed_lines": [114], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 113, "executed_branches": [], "missing_branches": []}, "PrecisionResult.precision_at_75": {"executed_lines": [118], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 117, "executed_branches": [], "missing_branches": []}, "PrecisionResult.small_objects": {"executed_lines": [130, 133, 134, 136], "summary": {"covered_lines": 4, "num_statements": 5, "percent_covered": 66.66666666666667, "percent_covered_display": "67", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 80.0, "percent_statements_covered_display": "80", "num_branches": 4, "num_partial_branches": 2, "covered_branches": 2, "missing_branches": 2, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [131], "excluded_lines": [], "start_line": 129, "executed_branches": [[130, 133], [133, 134]], "missing_branches": [[130, 131], [133, 136]]}, "PrecisionResult.medium_objects": {"executed_lines": [148, 151, 154], "summary": {"covered_lines": 3, "num_statements": 5, "percent_covered": 55.55555555555556, "percent_covered_display": "56", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 60.0, "percent_statements_covered_display": "60", "num_branches": 4, "num_partial_branches": 2, "covered_branches": 2, "missing_branches": 2, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [149, 152], "excluded_lines": [], "start_line": 147, "executed_branches": [[148, 151], [151, 154]], "missing_branches": [[148, 149], [151, 152]]}, "PrecisionResult.large_objects": {"executed_lines": [166, 169, 172], "summary": {"covered_lines": 3, "num_statements": 5, "percent_covered": 55.55555555555556, "percent_covered_display": "56", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 60.0, "percent_statements_covered_display": "60", "num_branches": 4, "num_partial_branches": 2, "covered_branches": 2, "missing_branches": 2, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [167, 170], "excluded_lines": [], "start_line": 165, "executed_branches": [[166, 169], [169, 172]], "missing_branches": [[166, 167], [169, 170]]}, "PrecisionResult.__str__": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 16, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 16, "excluded_lines": 1, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 10, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 10, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [214, 224, 225, 226, 229, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 242], "excluded_lines": [175], "start_line": 174, "executed_branches": [], "missing_branches": [[224, 225], [224, 226], [226, 229], [226, 231], [232, 233], [232, 235], [235, 236], [235, 238], [238, 239], [238, 242]]}, "PrecisionResult.to_pandas": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 16, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 16, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 12, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 12, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [251, 252, 254, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 272], "excluded_lines": [], "start_line": 244, "executed_branches": [], "missing_branches": [[259, 260], [259, 263], [261, 262], [261, 263], [263, 264], [263, 267], [265, 266], [265, 267], [267, 268], [267, 272], [269, 270], [269, 272]]}, "PrecisionResult.plot": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 34, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 34, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 8, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 8, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [282, 283, 284, 286, 287, 288, 289, 290, 292, 293, 294, 295, 296, 298, 299, 300, 301, 302, 304, 306, 307, 308, 309, 314, 316, 317, 319, 320, 322, 323, 324, 332, 334, 335], "excluded_lines": [], "start_line": 274, "executed_branches": [], "missing_branches": [[286, 287], [286, 292], [292, 293], [292, 298], [298, 299], [298, 304], [322, 323], [322, 332]]}, "Precision.__init__": {"executed_lines": [390, 391, 393, 394], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 377, "executed_branches": [], "missing_branches": []}, "Precision.reset": {"executed_lines": [400, 401], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 396, "executed_branches": [], "missing_branches": []}, "Precision.update": {"executed_lines": [418, 419, 420, 421, 423, 424, 429, 430, 432], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 6, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 403, "executed_branches": [[418, 419], [418, 420], [420, 421], [420, 423], [423, 424], [423, 429]], "missing_branches": []}, "Precision.compute": {"executed_lines": [442, 444, 447, 449, 454, 456, 459, 461], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 434, "executed_branches": [], "missing_branches": []}, "Precision._compute": {"executed_lines": [474, 475, 477, 478, 479, 481, 484, 486, 496, 497, 498, 508, 509, 510, 512, 513, 521, 531, 540, 541, 553, 554, 558], "summary": {"covered_lines": 23, "num_statements": 26, "percent_covered": 86.36363636363636, "percent_covered_display": "86", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 88.46153846153847, "percent_statements_covered_display": "88", "num_branches": 18, "num_partial_branches": 3, "covered_branches": 15, "missing_branches": 3, "percent_branches_covered": 83.33333333333333, "percent_branches_covered_display": "83"}, "missing_lines": [485, 511, 517], "excluded_lines": [], "start_line": 463, "executed_branches": [[477, 478], [477, 540], [481, 484], [481, 496], [484, 486], [496, 477], [496, 497], [497, 498], [497, 508], [508, 509], [508, 510], [510, 512], [512, 513], [540, 541], [540, 553]], "missing_branches": [[484, 485], [510, 511], [512, 517]]}, "Precision._compute_precision_for_classes": {"executed_lines": [586, 587, 588, 592, 595, 596, 597, 600, 605, 608, 609, 610, 611, 612, 613, 614, 615, 619, 621, 625], "summary": {"covered_lines": 20, "num_statements": 20, "percent_covered": 96.42857142857143, "percent_covered_display": "96", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 8, "num_partial_branches": 1, "covered_branches": 7, "missing_branches": 1, "percent_branches_covered": 87.5, "percent_branches_covered_display": "88"}, "missing_lines": [], "excluded_lines": [], "start_line": 570, "executed_branches": [[608, 609], [608, 610], [610, 611], [610, 613], [613, 614], [615, 619], [615, 621]], "missing_branches": [[613, 625]]}, "Precision._match_detection_batch": {"executed_lines": [634, 638, 639, 641, 642, 644, 645, 646, 647, 649, 650, 651, 652, 654, 655, 656], "summary": {"covered_lines": 16, "num_statements": 16, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 6, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 628, "executed_branches": [[641, 642], [641, 655], [644, 641], [644, 645], [649, 650], [649, 654]], "missing_branches": []}, "Precision._compute_confusion_matrix": {"executed_lines": [686, 687, 689, 692, 693, 694, 695, 697, 698, 699, 700, 701, 702, 703, 704, 706, 707, 708, 709, 712, 713], "summary": {"covered_lines": 21, "num_statements": 21, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 6, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 659, "executed_branches": [[692, 693], [692, 712], [697, 698], [697, 701], [701, 702], [701, 706]], "missing_branches": []}, "Precision._compute_precision": {"executed_lines": [729, 734, 735, 737, 738, 745, 746], "summary": {"covered_lines": 7, "num_statements": 8, "percent_covered": 80.0, "percent_covered_display": "80", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 87.5, "percent_statements_covered_display": "88", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [730], "excluded_lines": [], "start_line": 716, "executed_branches": [[729, 734]], "missing_branches": [[729, 730]]}, "Precision._detections_content": {"executed_lines": [750, 751, 752, 753, 758, 759, 760, 761, 762, 763], "summary": {"covered_lines": 10, "num_statements": 15, "percent_covered": 64.0, "percent_covered_display": "64", "missing_lines": 5, "excluded_lines": 0, "percent_statements_covered": 66.66666666666667, "percent_statements_covered_display": "67", "num_branches": 10, "num_partial_branches": 2, "covered_branches": 6, "missing_branches": 4, "percent_branches_covered": 60.0, "percent_branches_covered_display": "60"}, "missing_lines": [754, 755, 756, 757, 764], "excluded_lines": [], "start_line": 748, "executed_branches": [[750, 751], [750, 753], [753, 758], [758, 759], [760, 761], [760, 763]], "missing_branches": [[753, 754], [754, 755], [754, 757], [758, 764]]}, "Precision._make_empty_content": {"executed_lines": [767, 771, 775, 776, 777], "summary": {"covered_lines": 5, "num_statements": 10, "percent_covered": 50.0, "percent_covered_display": "50", "missing_lines": 5, "excluded_lines": 0, "percent_statements_covered": 50.0, "percent_statements_covered_display": "50", "num_branches": 6, "num_partial_branches": 3, "covered_branches": 3, "missing_branches": 3, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [768, 769, 772, 773, 779], "excluded_lines": [], "start_line": 766, "executed_branches": [[767, 771], [771, 775], [775, 776]], "missing_branches": [[767, 768], [771, 772], [775, 779]]}, "Precision._filter_detections_by_size": {"executed_lines": [785, 786, 787, 789, 790, 792, 793, 795, 796, 797, 798, 799, 801, 802, 803, 805], "summary": {"covered_lines": 16, "num_statements": 18, "percent_covered": 81.25, "percent_covered_display": "81", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 88.88888888888889, "percent_statements_covered_display": "89", "num_branches": 14, "num_partial_branches": 4, "covered_branches": 10, "missing_branches": 4, "percent_branches_covered": 71.42857142857143, "percent_branches_covered_display": "71"}, "missing_lines": [794, 800], "excluded_lines": [], "start_line": 781, "executed_branches": [[786, 787], [786, 789], [793, 795], [795, 796], [797, 798], [797, 799], [799, 801], [801, 802], [802, 803], [802, 805]], "missing_branches": [[793, 794], [795, 797], [799, 800], [801, 805]]}, "Precision._filter_predictions_and_targets_by_size": {"executed_lines": [816, 817, 818, 819, 822, 825], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 807, "executed_branches": [[818, 819], [818, 825]], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 5, 7, 8, 9, 11, 12, 13, 18, 19, 20, 24, 30, 31, 34, 35, 36, 39, 40, 70, 71, 73, 74, 75, 76, 77, 81, 112, 113, 116, 117, 120, 121, 128, 129, 138, 139, 146, 147, 156, 157, 164, 165, 174, 244, 274, 338, 377, 396, 403, 434, 463, 570, 627, 628, 658, 659, 715, 716, 748, 766, 781, 807], "summary": {"covered_lines": 65, "num_statements": 65, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 2, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [26, 27], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"PrecisionSizeResults": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 31, "executed_branches": [], "missing_branches": []}, "PrecisionResult": {"executed_lines": [93, 94, 95, 96, 97, 98, 99, 101, 106, 114, 118, 123, 126, 130, 133, 134, 136, 141, 144, 148, 151, 154, 159, 162, 166, 169, 172], "summary": {"covered_lines": 27, "num_statements": 101, "percent_covered": 25.165562913907284, "percent_covered_display": "25", "missing_lines": 74, "excluded_lines": 1, "percent_statements_covered": 26.73267326732673, "percent_statements_covered_display": "27", "num_branches": 50, "num_partial_branches": 9, "covered_branches": 11, "missing_branches": 39, "percent_branches_covered": 22.0, "percent_branches_covered_display": "22"}, "missing_lines": [124, 131, 142, 149, 152, 160, 167, 170, 214, 224, 225, 226, 229, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 242, 251, 252, 254, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 272, 282, 283, 284, 286, 287, 288, 289, 290, 292, 293, 294, 295, 296, 298, 299, 300, 301, 302, 304, 306, 307, 308, 309, 314, 316, 317, 319, 320, 322, 323, 324, 332, 334, 335], "excluded_lines": [175], "start_line": 40, "executed_branches": [[101, -81], [101, 106], [123, 126], [130, 133], [133, 134], [141, 144], [148, 151], [151, 154], [159, 162], [166, 169], [169, 172]], "missing_branches": [[123, 124], [130, 131], [133, 136], [141, 142], [148, 149], [151, 152], [159, 160], [166, 167], [169, 170], [224, 225], [224, 226], [226, 229], [226, 231], [232, 233], [232, 235], [235, 236], [235, 238], [238, 239], [238, 242], [259, 260], [259, 263], [261, 262], [261, 263], [263, 264], [263, 267], [265, 266], [265, 267], [267, 268], [267, 272], [269, 270], [269, 272], [286, 287], [286, 292], [292, 293], [292, 298], [298, 299], [298, 304], [322, 323], [322, 332]]}, "Precision": {"executed_lines": [390, 391, 393, 394, 400, 401, 418, 419, 420, 421, 423, 424, 429, 430, 432, 442, 444, 447, 449, 454, 456, 459, 461, 474, 475, 477, 478, 479, 481, 484, 486, 496, 497, 498, 508, 509, 510, 512, 513, 521, 531, 540, 541, 553, 554, 558, 586, 587, 588, 592, 595, 596, 597, 600, 605, 608, 609, 610, 611, 612, 613, 614, 615, 619, 621, 625, 634, 638, 639, 641, 642, 644, 645, 646, 647, 649, 650, 651, 652, 654, 655, 656, 686, 687, 689, 692, 693, 694, 695, 697, 698, 699, 700, 701, 702, 703, 704, 706, 707, 708, 709, 712, 713, 729, 734, 735, 737, 738, 745, 746, 750, 751, 752, 753, 758, 759, 760, 761, 762, 763, 767, 771, 775, 776, 777, 785, 786, 787, 789, 790, 792, 793, 795, 796, 797, 798, 799, 801, 802, 803, 805, 816, 817, 818, 819, 822, 825], "summary": {"covered_lines": 147, "num_statements": 163, "percent_covered": 86.72199170124482, "percent_covered_display": "87", "missing_lines": 16, "excluded_lines": 0, "percent_statements_covered": 90.1840490797546, "percent_statements_covered_display": "90", "num_branches": 78, "num_partial_branches": 14, "covered_branches": 62, "missing_branches": 16, "percent_branches_covered": 79.48717948717949, "percent_branches_covered_display": "79"}, "missing_lines": [485, 511, 517, 730, 754, 755, 756, 757, 764, 768, 769, 772, 773, 779, 794, 800], "excluded_lines": [], "start_line": 338, "executed_branches": [[418, 419], [418, 420], [420, 421], [420, 423], [423, 424], [423, 429], [477, 478], [477, 540], [481, 484], [481, 496], [484, 486], [496, 477], [496, 497], [497, 498], [497, 508], [508, 509], [508, 510], [510, 512], [512, 513], [540, 541], [540, 553], [608, 609], [608, 610], [610, 611], [610, 613], [613, 614], [615, 619], [615, 621], [641, 642], [641, 655], [644, 641], [644, 645], [649, 650], [649, 654], [692, 693], [692, 712], [697, 698], [697, 701], [701, 702], [701, 706], [729, 734], [750, 751], [750, 753], [753, 758], [758, 759], [760, 761], [760, 763], [767, 771], [771, 775], [775, 776], [786, 787], [786, 789], [793, 795], [795, 796], [797, 798], [797, 799], [799, 801], [801, 802], [802, 803], [802, 805], [818, 819], [818, 825]], "missing_branches": [[484, 485], [510, 511], [512, 517], [613, 625], [729, 730], [753, 754], [754, 755], [754, 757], [758, 764], [767, 768], [771, 772], [775, 779], [793, 794], [795, 797], [799, 800], [801, 805]]}, "": {"executed_lines": [1, 3, 4, 5, 7, 8, 9, 11, 12, 13, 18, 19, 20, 24, 30, 31, 34, 35, 36, 39, 40, 70, 71, 73, 74, 75, 76, 77, 81, 112, 113, 116, 117, 120, 121, 128, 129, 138, 139, 146, 147, 156, 157, 164, 165, 174, 244, 274, 338, 377, 396, 403, 434, 463, 570, 627, 628, 658, 659, 715, 716, 748, 766, 781, 807], "summary": {"covered_lines": 65, "num_statements": 65, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 2, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [26, 27], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "src\\supervision\\metrics\\recall.py": {"executed_lines": [1, 3, 4, 5, 7, 8, 9, 11, 12, 13, 18, 19, 20, 24, 30, 31, 34, 35, 36, 39, 40, 68, 69, 71, 72, 73, 75, 76, 77, 79, 80, 81, 82, 83, 85, 98, 99, 100, 101, 102, 103, 105, 107, 112, 118, 120, 121, 122, 124, 126, 127, 128, 131, 133, 134, 135, 137, 138, 139, 142, 144, 145, 146, 148, 149, 150, 153, 155, 156, 157, 160, 199, 212, 213, 215, 216, 218, 222, 223, 225, 240, 241, 242, 243, 245, 246, 251, 252, 254, 256, 264, 266, 269, 271, 276, 278, 281, 283, 285, 288, 289, 291, 292, 293, 295, 296, 297, 307, 308, 309, 311, 312, 320, 330, 339, 340, 352, 353, 357, 369, 380, 381, 382, 383, 386, 391, 394, 395, 396, 397, 398, 399, 400, 401, 403, 405, 406, 412, 416, 417, 419, 420, 422, 423, 424, 425, 427, 428, 429, 430, 432, 433, 434, 436, 437, 464, 465, 467, 470, 471, 472, 473, 475, 476, 477, 478, 479, 484, 485, 486, 487, 490, 491, 493, 494, 507, 512, 513, 515, 516, 523, 524, 526, 528, 529, 530, 531, 536, 537, 538, 539, 540, 541, 544, 545, 549, 553, 554, 555, 561, 565, 566, 567, 569, 570, 572, 573, 575, 576, 577, 578, 579, 581, 582, 583, 585, 587, 596, 597, 598, 599, 602, 605, 606, 676, 706], "summary": {"covered_lines": 226, "num_statements": 314, "percent_covered": 67.75700934579439, "percent_covered_display": "68", "missing_lines": 88, "excluded_lines": 3, "percent_statements_covered": 71.97452229299363, "percent_statements_covered_display": "72", "num_branches": 114, "num_partial_branches": 18, "covered_branches": 64, "missing_branches": 50, "percent_branches_covered": 56.14035087719298, "percent_branches_covered_display": "56"}, "missing_lines": [106, 129, 140, 151, 310, 316, 480, 481, 482, 508, 532, 533, 534, 535, 542, 546, 547, 550, 551, 557, 574, 580, 646, 656, 657, 658, 661, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 674, 683, 684, 686, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 704, 715, 716, 717, 719, 720, 721, 722, 723, 725, 726, 727, 728, 729, 731, 732, 733, 734, 735, 737, 739, 740, 741, 742, 747, 749, 750, 752, 753, 755, 756, 757, 765, 767, 768], "excluded_lines": [26, 27, 607], "executed_branches": [[105, 107], [107, 112], [107, 118], [121, 122], [121, 124], [128, 131], [139, 142], [150, 153], [240, 241], [240, 242], [242, 243], [242, 245], [245, 246], [245, 251], [291, 292], [291, 339], [295, 291], [295, 296], [296, 297], [296, 307], [307, 308], [307, 309], [309, 311], [311, 312], [339, 340], [339, 352], [394, 395], [394, 396], [396, 397], [396, 399], [399, 400], [419, 420], [419, 433], [422, 419], [422, 423], [427, 428], [427, 432], [470, 471], [470, 490], [475, 476], [475, 479], [479, 484], [507, 512], [528, 529], [528, 531], [531, 536], [536, 537], [538, 539], [538, 541], [545, 549], [549, 553], [553, 554], [566, 567], [566, 569], [573, 575], [575, 576], [577, 578], [577, 579], [579, 581], [581, 582], [582, 583], [582, 585], [598, 599], [598, 605]], "missing_branches": [[105, 106], [128, 129], [139, 140], [150, 151], [309, 310], [311, 316], [399, 403], [479, 480], [507, 508], [531, 532], [532, 533], [532, 535], [536, 542], [545, 546], [549, 550], [553, 557], [573, 574], [575, 577], [579, 580], [581, 585], [656, 657], [656, 658], [658, 661], [658, 663], [664, 665], [664, 667], [667, 668], [667, 670], [670, 671], [670, 674], [691, 692], [691, 695], [693, 694], [693, 695], [695, 696], [695, 699], [697, 698], [697, 699], [699, 700], [699, 704], [701, 702], [701, 704], [719, 720], [719, 725], [725, 726], [725, 731], [731, 732], [731, 737], [755, 756], [755, 765]], "functions": {"RecallResult.recall_at_50": {"executed_lines": [73], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 72, "executed_branches": [], "missing_branches": []}, "RecallResult.recall_at_75": {"executed_lines": [77], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 76, "executed_branches": [], "missing_branches": []}, "RecallResult.__init__": {"executed_lines": [98, 99, 100, 101, 102, 103, 105, 107, 112, 118], "summary": {"covered_lines": 10, "num_statements": 11, "percent_covered": 86.66666666666667, "percent_covered_display": "87", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 90.9090909090909, "percent_statements_covered_display": "91", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [106], "excluded_lines": [], "start_line": 85, "executed_branches": [[105, 107], [107, 112], [107, 118]], "missing_branches": [[105, 106]]}, "RecallResult._ensure_size_results": {"executed_lines": [121, 122, 124], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 120, "executed_branches": [[121, 122], [121, 124]], "missing_branches": []}, "RecallResult.small_objects": {"executed_lines": [135], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 134, "executed_branches": [], "missing_branches": []}, "RecallResult.medium_objects": {"executed_lines": [146], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 145, "executed_branches": [], "missing_branches": []}, "RecallResult.large_objects": {"executed_lines": [157], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 156, "executed_branches": [], "missing_branches": []}, "Recall.__init__": {"executed_lines": [212, 213, 215, 216], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 199, "executed_branches": [], "missing_branches": []}, "Recall.reset": {"executed_lines": [222, 223], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 218, "executed_branches": [], "missing_branches": []}, "Recall.update": {"executed_lines": [240, 241, 242, 243, 245, 246, 251, 252, 254], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 6, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 225, "executed_branches": [[240, 241], [240, 242], [242, 243], [242, 245], [245, 246], [245, 251]], "missing_branches": []}, "Recall.compute": {"executed_lines": [264, 266, 269, 271, 276, 278, 281, 283], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 256, "executed_branches": [], "missing_branches": []}, "Recall._compute": {"executed_lines": [288, 289, 291, 292, 293, 295, 296, 297, 307, 308, 309, 311, 312, 320, 330, 339, 340, 352, 353, 357], "summary": {"covered_lines": 20, "num_statements": 22, "percent_covered": 88.88888888888889, "percent_covered_display": "89", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 90.9090909090909, "percent_statements_covered_display": "91", "num_branches": 14, "num_partial_branches": 2, "covered_branches": 12, "missing_branches": 2, "percent_branches_covered": 85.71428571428571, "percent_branches_covered_display": "86"}, "missing_lines": [310, 316], "excluded_lines": [], "start_line": 285, "executed_branches": [[291, 292], [291, 339], [295, 291], [295, 296], [296, 297], [296, 307], [307, 308], [307, 309], [309, 311], [311, 312], [339, 340], [339, 352]], "missing_branches": [[309, 310], [311, 316]]}, "Recall._compute_recall_for_classes": {"executed_lines": [380, 381, 382, 383, 386, 391, 394, 395, 396, 397, 398, 399, 400, 401, 403], "summary": {"covered_lines": 15, "num_statements": 15, "percent_covered": 95.23809523809524, "percent_covered_display": "95", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 1, "covered_branches": 5, "missing_branches": 1, "percent_branches_covered": 83.33333333333333, "percent_branches_covered_display": "83"}, "missing_lines": [], "excluded_lines": [], "start_line": 369, "executed_branches": [[394, 395], [394, 396], [396, 397], [396, 399], [399, 400]], "missing_branches": [[399, 403]]}, "Recall._match_detection_batch": {"executed_lines": [412, 416, 417, 419, 420, 422, 423, 424, 425, 427, 428, 429, 430, 432, 433, 434], "summary": {"covered_lines": 16, "num_statements": 16, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 6, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 406, "executed_branches": [[419, 420], [419, 433], [422, 419], [422, 423], [427, 428], [427, 432]], "missing_branches": []}, "Recall._compute_confusion_matrix": {"executed_lines": [464, 465, 467, 470, 471, 472, 473, 475, 476, 477, 478, 479, 484, 485, 486, 487, 490, 491], "summary": {"covered_lines": 18, "num_statements": 21, "percent_covered": 85.18518518518519, "percent_covered_display": "85", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 85.71428571428571, "percent_statements_covered_display": "86", "num_branches": 6, "num_partial_branches": 1, "covered_branches": 5, "missing_branches": 1, "percent_branches_covered": 83.33333333333333, "percent_branches_covered_display": "83"}, "missing_lines": [480, 481, 482], "excluded_lines": [], "start_line": 437, "executed_branches": [[470, 471], [470, 490], [475, 476], [475, 479], [479, 484]], "missing_branches": [[479, 480]]}, "Recall._compute_recall": {"executed_lines": [507, 512, 513, 515, 516, 523, 524], "summary": {"covered_lines": 7, "num_statements": 8, "percent_covered": 80.0, "percent_covered_display": "80", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 87.5, "percent_statements_covered_display": "88", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [508], "excluded_lines": [], "start_line": 494, "executed_branches": [[507, 512]], "missing_branches": [[507, 508]]}, "Recall._detections_content": {"executed_lines": [528, 529, 530, 531, 536, 537, 538, 539, 540, 541], "summary": {"covered_lines": 10, "num_statements": 15, "percent_covered": 64.0, "percent_covered_display": "64", "missing_lines": 5, "excluded_lines": 0, "percent_statements_covered": 66.66666666666667, "percent_statements_covered_display": "67", "num_branches": 10, "num_partial_branches": 2, "covered_branches": 6, "missing_branches": 4, "percent_branches_covered": 60.0, "percent_branches_covered_display": "60"}, "missing_lines": [532, 533, 534, 535, 542], "excluded_lines": [], "start_line": 526, "executed_branches": [[528, 529], [528, 531], [531, 536], [536, 537], [538, 539], [538, 541]], "missing_branches": [[531, 532], [532, 533], [532, 535], [536, 542]]}, "Recall._make_empty_content": {"executed_lines": [545, 549, 553, 554, 555], "summary": {"covered_lines": 5, "num_statements": 10, "percent_covered": 50.0, "percent_covered_display": "50", "missing_lines": 5, "excluded_lines": 0, "percent_statements_covered": 50.0, "percent_statements_covered_display": "50", "num_branches": 6, "num_partial_branches": 3, "covered_branches": 3, "missing_branches": 3, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [546, 547, 550, 551, 557], "excluded_lines": [], "start_line": 544, "executed_branches": [[545, 549], [549, 553], [553, 554]], "missing_branches": [[545, 546], [549, 550], [553, 557]]}, "Recall._filter_detections_by_size": {"executed_lines": [565, 566, 567, 569, 570, 572, 573, 575, 576, 577, 578, 579, 581, 582, 583, 585], "summary": {"covered_lines": 16, "num_statements": 18, "percent_covered": 81.25, "percent_covered_display": "81", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 88.88888888888889, "percent_statements_covered_display": "89", "num_branches": 14, "num_partial_branches": 4, "covered_branches": 10, "missing_branches": 4, "percent_branches_covered": 71.42857142857143, "percent_branches_covered_display": "71"}, "missing_lines": [574, 580], "excluded_lines": [], "start_line": 561, "executed_branches": [[566, 567], [566, 569], [573, 575], [575, 576], [577, 578], [577, 579], [579, 581], [581, 582], [582, 583], [582, 585]], "missing_branches": [[573, 574], [575, 577], [579, 580], [581, 585]]}, "Recall._filter_predictions_and_targets_by_size": {"executed_lines": [596, 597, 598, 599, 602, 605], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 587, "executed_branches": [[598, 599], [598, 605]], "missing_branches": []}, "Recall.__str__": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 16, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 16, "excluded_lines": 1, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 10, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 10, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [646, 656, 657, 658, 661, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 674], "excluded_lines": [607], "start_line": 606, "executed_branches": [], "missing_branches": [[656, 657], [656, 658], [658, 661], [658, 663], [664, 665], [664, 667], [667, 668], [667, 670], [670, 671], [670, 674]]}, "Recall.to_pandas": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 16, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 16, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 12, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 12, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [683, 684, 686, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 704], "excluded_lines": [], "start_line": 676, "executed_branches": [], "missing_branches": [[691, 692], [691, 695], [693, 694], [693, 695], [695, 696], [695, 699], [697, 698], [697, 699], [699, 700], [699, 704], [701, 702], [701, 704]]}, "Recall.plot": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 34, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 34, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 8, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 8, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [715, 716, 717, 719, 720, 721, 722, 723, 725, 726, 727, 728, 729, 731, 732, 733, 734, 735, 737, 739, 740, 741, 742, 747, 749, 750, 752, 753, 755, 756, 757, 765, 767, 768], "excluded_lines": [], "start_line": 706, "executed_branches": [], "missing_branches": [[719, 720], [719, 725], [725, 726], [725, 731], [731, 732], [731, 737], [755, 756], [755, 765]]}, "": {"executed_lines": [1, 3, 4, 5, 7, 8, 9, 11, 12, 13, 18, 19, 20, 24, 30, 31, 34, 35, 36, 39, 40, 68, 69, 71, 72, 75, 76, 79, 80, 81, 82, 83, 85, 120, 126, 127, 133, 134, 137, 138, 144, 145, 148, 149, 155, 156, 160, 199, 218, 225, 256, 285, 369, 405, 406, 436, 437, 493, 494, 526, 544, 561, 587, 606, 676, 706], "summary": {"covered_lines": 66, "num_statements": 66, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 2, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [26, 27], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"RecallSizeResults": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 31, "executed_branches": [], "missing_branches": []}, "RecallResult": {"executed_lines": [73, 77, 98, 99, 100, 101, 102, 103, 105, 107, 112, 118, 121, 122, 124, 128, 131, 135, 139, 142, 146, 150, 153, 157], "summary": {"covered_lines": 24, "num_statements": 28, "percent_covered": 80.0, "percent_covered_display": "80", "missing_lines": 4, "excluded_lines": 0, "percent_statements_covered": 85.71428571428571, "percent_statements_covered_display": "86", "num_branches": 12, "num_partial_branches": 4, "covered_branches": 8, "missing_branches": 4, "percent_branches_covered": 66.66666666666667, "percent_branches_covered_display": "67"}, "missing_lines": [106, 129, 140, 151], "excluded_lines": [], "start_line": 40, "executed_branches": [[105, 107], [107, 112], [107, 118], [121, 122], [121, 124], [128, 131], [139, 142], [150, 153]], "missing_branches": [[105, 106], [128, 129], [139, 140], [150, 151]]}, "Recall": {"executed_lines": [212, 213, 215, 216, 222, 223, 240, 241, 242, 243, 245, 246, 251, 252, 254, 264, 266, 269, 271, 276, 278, 281, 283, 288, 289, 291, 292, 293, 295, 296, 297, 307, 308, 309, 311, 312, 320, 330, 339, 340, 352, 353, 357, 380, 381, 382, 383, 386, 391, 394, 395, 396, 397, 398, 399, 400, 401, 403, 412, 416, 417, 419, 420, 422, 423, 424, 425, 427, 428, 429, 430, 432, 433, 434, 464, 465, 467, 470, 471, 472, 473, 475, 476, 477, 478, 479, 484, 485, 486, 487, 490, 491, 507, 512, 513, 515, 516, 523, 524, 528, 529, 530, 531, 536, 537, 538, 539, 540, 541, 545, 549, 553, 554, 555, 565, 566, 567, 569, 570, 572, 573, 575, 576, 577, 578, 579, 581, 582, 583, 585, 596, 597, 598, 599, 602, 605], "summary": {"covered_lines": 136, "num_statements": 220, "percent_covered": 59.62732919254658, "percent_covered_display": "60", "missing_lines": 84, "excluded_lines": 1, "percent_statements_covered": 61.81818181818182, "percent_statements_covered_display": "62", "num_branches": 102, "num_partial_branches": 14, "covered_branches": 56, "missing_branches": 46, "percent_branches_covered": 54.90196078431372, "percent_branches_covered_display": "55"}, "missing_lines": [310, 316, 480, 481, 482, 508, 532, 533, 534, 535, 542, 546, 547, 550, 551, 557, 574, 580, 646, 656, 657, 658, 661, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 674, 683, 684, 686, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 704, 715, 716, 717, 719, 720, 721, 722, 723, 725, 726, 727, 728, 729, 731, 732, 733, 734, 735, 737, 739, 740, 741, 742, 747, 749, 750, 752, 753, 755, 756, 757, 765, 767, 768], "excluded_lines": [607], "start_line": 160, "executed_branches": [[240, 241], [240, 242], [242, 243], [242, 245], [245, 246], [245, 251], [291, 292], [291, 339], [295, 291], [295, 296], [296, 297], [296, 307], [307, 308], [307, 309], [309, 311], [311, 312], [339, 340], [339, 352], [394, 395], [394, 396], [396, 397], [396, 399], [399, 400], [419, 420], [419, 433], [422, 419], [422, 423], [427, 428], [427, 432], [470, 471], [470, 490], [475, 476], [475, 479], [479, 484], [507, 512], [528, 529], [528, 531], [531, 536], [536, 537], [538, 539], [538, 541], [545, 549], [549, 553], [553, 554], [566, 567], [566, 569], [573, 575], [575, 576], [577, 578], [577, 579], [579, 581], [581, 582], [582, 583], [582, 585], [598, 599], [598, 605]], "missing_branches": [[309, 310], [311, 316], [399, 403], [479, 480], [507, 508], [531, 532], [532, 533], [532, 535], [536, 542], [545, 546], [549, 550], [553, 557], [573, 574], [575, 577], [579, 580], [581, 585], [656, 657], [656, 658], [658, 661], [658, 663], [664, 665], [664, 667], [667, 668], [667, 670], [670, 671], [670, 674], [691, 692], [691, 695], [693, 694], [693, 695], [695, 696], [695, 699], [697, 698], [697, 699], [699, 700], [699, 704], [701, 702], [701, 704], [719, 720], [719, 725], [725, 726], [725, 731], [731, 732], [731, 737], [755, 756], [755, 765]]}, "": {"executed_lines": [1, 3, 4, 5, 7, 8, 9, 11, 12, 13, 18, 19, 20, 24, 30, 31, 34, 35, 36, 39, 40, 68, 69, 71, 72, 75, 76, 79, 80, 81, 82, 83, 85, 120, 126, 127, 133, 134, 137, 138, 144, 145, 148, 149, 155, 156, 160, 199, 218, 225, 256, 285, 369, 405, 406, 436, 437, 493, 494, 526, 544, 561, 587, 606, 676, 706], "summary": {"covered_lines": 66, "num_statements": 66, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 2, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [26, 27], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "src\\supervision\\metrics\\utils\\__init__.py": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "src\\supervision\\metrics\\utils\\object_size.py": {"executed_lines": [1, 3, 4, 6, 7, 9, 10, 11, 16, 19, 40, 41, 42, 43, 46, 85, 111, 114, 115, 116, 118, 119, 120, 121, 122, 123, 126, 168, 193, 197, 198, 199, 200, 201, 206, 207, 208, 209, 210, 211, 214, 229, 230, 231, 235, 236, 238], "summary": {"covered_lines": 47, "num_statements": 72, "percent_covered": 56.25, "percent_covered_display": "56", "missing_lines": 25, "excluded_lines": 2, "percent_statements_covered": 65.27777777777777, "percent_statements_covered_display": "65", "num_branches": 24, "num_partial_branches": 5, "covered_branches": 7, "missing_branches": 17, "percent_branches_covered": 29.166666666666668, "percent_branches_covered_display": "29"}, "missing_lines": [76, 77, 78, 79, 80, 81, 82, 112, 153, 154, 156, 157, 158, 160, 161, 162, 163, 164, 165, 194, 232, 233, 234, 237, 241], "excluded_lines": [13, 14], "executed_branches": [[111, 114], [193, 197], [229, 230], [229, 231], [231, 235], [235, 236], [236, 238]], "missing_branches": [[76, 77], [76, 78], [78, 79], [78, 80], [80, 81], [80, 82], [111, 112], [153, 154], [153, 156], [156, 157], [156, 158], [193, 194], [231, 232], [232, 233], [232, 234], [235, 241], [236, 237]], "functions": {"get_object_size_category": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 7, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 7, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 6, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [76, 77, 78, 79, 80, 81, 82], "excluded_lines": [], "start_line": 46, "executed_branches": [], "missing_branches": [[76, 77], [76, 78], [78, 79], [78, 80], [80, 81], [80, 82]]}, "get_bbox_size_category": {"executed_lines": [111, 114, 115, 116, 118, 119, 120, 121, 122, 123], "summary": {"covered_lines": 10, "num_statements": 11, "percent_covered": 84.61538461538461, "percent_covered_display": "85", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 90.9090909090909, "percent_statements_covered_display": "91", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [112], "excluded_lines": [], "start_line": 85, "executed_branches": [[111, 114]], "missing_branches": [[111, 112]]}, "get_mask_size_category": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 11, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 11, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 4, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [153, 154, 156, 157, 158, 160, 161, 162, 163, 164, 165], "excluded_lines": [], "start_line": 126, "executed_branches": [], "missing_branches": [[153, 154], [153, 156], [156, 157], [156, 158]]}, "get_obb_size_category": {"executed_lines": [193, 197, 198, 199, 200, 201, 206, 207, 208, 209, 210, 211], "summary": {"covered_lines": 12, "num_statements": 13, "percent_covered": 86.66666666666667, "percent_covered_display": "87", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 92.3076923076923, "percent_statements_covered_display": "92", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [194], "excluded_lines": [], "start_line": 168, "executed_branches": [[193, 197]], "missing_branches": [[193, 194]]}, "get_detection_size_category": {"executed_lines": [229, 230, 231, 235, 236, 238], "summary": {"covered_lines": 6, "num_statements": 11, "percent_covered": 52.38095238095238, "percent_covered_display": "52", "missing_lines": 5, "excluded_lines": 0, "percent_statements_covered": 54.54545454545455, "percent_statements_covered_display": "55", "num_branches": 10, "num_partial_branches": 3, "covered_branches": 5, "missing_branches": 5, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [232, 233, 234, 237, 241], "excluded_lines": [], "start_line": 214, "executed_branches": [[229, 230], [229, 231], [231, 235], [235, 236], [236, 238]], "missing_branches": [[231, 232], [232, 233], [232, 234], [235, 241], [236, 237]]}, "": {"executed_lines": [1, 3, 4, 6, 7, 9, 10, 11, 16, 19, 40, 41, 42, 43, 46, 85, 126, 168, 214], "summary": {"covered_lines": 19, "num_statements": 19, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 2, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [13, 14], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"ObjectSizeCategory": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 19, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 6, 7, 9, 10, 11, 16, 19, 40, 41, 42, 43, 46, 85, 111, 114, 115, 116, 118, 119, 120, 121, 122, 123, 126, 168, 193, 197, 198, 199, 200, 201, 206, 207, 208, 209, 210, 211, 214, 229, 230, 231, 235, 236, 238], "summary": {"covered_lines": 47, "num_statements": 72, "percent_covered": 56.25, "percent_covered_display": "56", "missing_lines": 25, "excluded_lines": 2, "percent_statements_covered": 65.27777777777777, "percent_statements_covered_display": "65", "num_branches": 24, "num_partial_branches": 5, "covered_branches": 7, "missing_branches": 17, "percent_branches_covered": 29.166666666666668, "percent_branches_covered_display": "29"}, "missing_lines": [76, 77, 78, 79, 80, 81, 82, 112, 153, 154, 156, 157, 158, 160, 161, 162, 163, 164, 165, 194, 232, 233, 234, 237, 241], "excluded_lines": [13, 14], "start_line": 1, "executed_branches": [[111, 114], [193, 197], [229, 230], [229, 231], [231, 235], [235, 236], [236, 238]], "missing_branches": [[76, 77], [76, 78], [78, 79], [78, 80], [80, 81], [80, 82], [111, 112], [153, 154], [153, 156], [156, 157], [156, 158], [193, 194], [231, 232], [232, 233], [232, 234], [235, 241], [236, 237]]}}}, "src\\supervision\\metrics\\utils\\utils.py": {"executed_lines": [1], "summary": {"covered_lines": 1, "num_statements": 5, "percent_covered": 20.0, "percent_covered_display": "20", "missing_lines": 4, "excluded_lines": 0, "percent_statements_covered": 20.0, "percent_statements_covered_display": "20", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [2, 3, 4, 5], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"ensure_pandas_installed": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 4, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 4, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [2, 3, 4, 5], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1], "summary": {"covered_lines": 1, "num_statements": 5, "percent_covered": 20.0, "percent_covered_display": "20", "missing_lines": 4, "excluded_lines": 0, "percent_statements_covered": 20.0, "percent_statements_covered_display": "20", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [2, 3, 4, 5], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "src\\supervision\\tracker\\__init__.py": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "src\\supervision\\tracker\\byte_tracker\\__init__.py": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "src\\supervision\\tracker\\byte_tracker\\core.py": {"executed_lines": [1, 3, 4, 6, 7, 8, 10, 11, 12, 13, 14, 15, 18, 19, 20, 21, 22, 23, 24, 27, 28, 29, 30, 31, 32, 35, 36, 37, 38, 39, 40, 41, 44, 49, 83, 91, 101, 103, 104, 105, 107, 108, 109, 111, 150, 153, 159, 185, 196, 206, 207, 208, 209, 210, 211, 213, 239, 247, 248, 250, 251, 252, 254, 255, 256, 257, 258, 260, 261, 262, 274, 294, 311, 323, 349, 386, 418, 451, 472, 498, 518], "summary": {"covered_lines": 81, "num_statements": 209, "percent_covered": 32.04633204633205, "percent_covered_display": "32", "missing_lines": 128, "excluded_lines": 0, "percent_statements_covered": 38.75598086124402, "percent_statements_covered_display": "39", "num_branches": 50, "num_partial_branches": 2, "covered_branches": 2, "missing_branches": 48, "percent_branches_covered": 4.0, "percent_branches_covered_display": "4"}, "missing_lines": [151, 161, 162, 163, 165, 167, 169, 170, 171, 172, 176, 177, 180, 181, 183, 194, 216, 217, 219, 220, 222, 225, 228, 231, 233, 237, 273, 275, 277, 297, 298, 299, 314, 315, 316, 317, 318, 320, 321, 331, 332, 333, 337, 338, 339, 340, 341, 342, 343, 345, 346, 347, 356, 357, 359, 365, 366, 368, 369, 370, 371, 372, 373, 375, 376, 378, 379, 380, 381, 382, 384, 392, 393, 395, 397, 398, 399, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 416, 419, 420, 421, 422, 423, 424, 458, 461, 462, 463, 464, 465, 466, 467, 487, 488, 490, 491, 492, 493, 495, 509, 510, 512, 513, 515, 521, 522, 524, 525, 526, 527, 528, 529, 531, 533, 536, 540], "excluded_lines": [], "executed_branches": [[150, 153], [260, 261]], "missing_branches": [[150, 151], [161, 162], [161, 180], [171, 172], [171, 176], [260, 273], [297, 298], [297, 299], [316, 317], [316, 321], [317, 318], [317, 320], [338, 339], [338, 347], [341, 342], [341, 345], [368, 369], [368, 378], [371, 372], [371, 375], [378, 379], [378, 384], [380, 378], [380, 381], [392, 393], [392, 395], [404, 405], [404, 407], [407, 408], [407, 410], [410, 411], [410, 416], [412, 410], [412, 413], [420, 421], [420, 424], [421, 420], [421, 422], [490, 491], [490, 495], [491, 490], [491, 492], [512, 513], [512, 515], [525, 526], [525, 533], [528, 529], [528, 531]], "functions": {"ByteTrack.__init__": {"executed_lines": [91, 101], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 83, "executed_branches": [], "missing_branches": []}, "ByteTrack.frame_id": {"executed_lines": [109], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 108, "executed_branches": [], "missing_branches": []}, "ByteTrack.update_with_detections": {"executed_lines": [150, 153, 159], "summary": {"covered_lines": 3, "num_statements": 18, "percent_covered": 16.666666666666668, "percent_covered_display": "17", "missing_lines": 15, "excluded_lines": 0, "percent_statements_covered": 16.666666666666668, "percent_statements_covered_display": "17", "num_branches": 6, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 5, "percent_branches_covered": 16.666666666666668, "percent_branches_covered_display": "17"}, "missing_lines": [151, 161, 162, 163, 165, 167, 169, 170, 171, 172, 176, 177, 180, 181, 183], "excluded_lines": [], "start_line": 111, "executed_branches": [[150, 153]], "missing_branches": [[150, 151], [161, 162], [161, 180], [171, 172], [171, 176]]}, "ByteTrack.reset": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [194], "excluded_lines": [], "start_line": 185, "executed_branches": [], "missing_branches": []}, "ByteTrack.update_with_tensors": {"executed_lines": [206, 207, 208, 209, 210, 211, 213], "summary": {"covered_lines": 7, "num_statements": 17, "percent_covered": 41.1764705882353, "percent_covered_display": "41", "missing_lines": 10, "excluded_lines": 0, "percent_statements_covered": 41.1764705882353, "percent_statements_covered_display": "41", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [216, 217, 219, 220, 222, 225, 228, 231, 233, 237], "excluded_lines": [], "start_line": 196, "executed_branches": [], "missing_branches": []}, "ByteTrack._split_by_confidence": {"executed_lines": [247, 248, 250, 251, 252, 254, 255, 256, 257, 258, 260, 261, 262, 274], "summary": {"covered_lines": 14, "num_statements": 17, "percent_covered": 78.94736842105263, "percent_covered_display": "79", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 82.3529411764706, "percent_statements_covered_display": "82", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [273, 275, 277], "excluded_lines": [], "start_line": 239, "executed_branches": [[260, 261]], "missing_branches": [[260, 273]]}, "ByteTrack._build_stracks": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 3, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 2, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [297, 298, 299], "excluded_lines": [], "start_line": 294, "executed_branches": [], "missing_branches": [[297, 298], [297, 299]]}, "ByteTrack._separate_tracks": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 7, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 7, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 4, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [314, 315, 316, 317, 318, 320, 321], "excluded_lines": [], "start_line": 311, "executed_branches": [], "missing_branches": [[316, 317], [316, 321], [317, 318], [317, 320]]}, "ByteTrack._first_association": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 13, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 13, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 4, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [331, 332, 333, 337, 338, 339, 340, 341, 342, 343, 345, 346, 347], "excluded_lines": [], "start_line": 323, "executed_branches": [], "missing_branches": [[338, 339], [338, 347], [341, 342], [341, 345]]}, "ByteTrack._second_association": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 19, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 19, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 8, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 8, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [356, 357, 359, 365, 366, 368, 369, 370, 371, 372, 373, 375, 376, 378, 379, 380, 381, 382, 384], "excluded_lines": [], "start_line": 349, "executed_branches": [], "missing_branches": [[368, 369], [368, 378], [371, 372], [371, 375], [378, 379], [378, 384], [380, 378], [380, 381]]}, "ByteTrack._unconfirmed_and_init_new": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 19, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 19, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 10, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 10, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [392, 393, 395, 397, 398, 399, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 416], "excluded_lines": [], "start_line": 386, "executed_branches": [], "missing_branches": [[392, 393], [392, 395], [404, 405], [404, 407], [407, 408], [407, 410], [410, 411], [410, 416], [412, 410], [412, 413]]}, "ByteTrack._remove_stale_lost_tracks": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 6, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 6, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 4, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [419, 420, 421, 422, 423, 424], "excluded_lines": [], "start_line": 418, "executed_branches": [], "missing_branches": [[420, 421], [420, 424], [421, 420], [421, 422]]}, "ByteTrack._update_state": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 8, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 8, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [458, 461, 462, 463, 464, 465, 466, 467], "excluded_lines": [], "start_line": 451, "executed_branches": [], "missing_branches": []}, "joint_tracks": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 7, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 7, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 4, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [487, 488, 490, 491, 492, 493, 495], "excluded_lines": [], "start_line": 472, "executed_branches": [], "missing_branches": [[490, 491], [490, 495], [491, 490], [491, 492]]}, "sub_tracks": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 5, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 5, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 2, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [509, 510, 512, 513, 515], "excluded_lines": [], "start_line": 498, "executed_branches": [], "missing_branches": [[512, 513], [512, 515]]}, "remove_duplicate_tracks": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 12, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 12, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 4, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [521, 522, 524, 525, 526, 527, 528, 529, 531, 533, 536, 540], "excluded_lines": [], "start_line": 518, "executed_branches": [], "missing_branches": [[525, 526], [525, 533], [528, 529], [528, 531]]}, "": {"executed_lines": [1, 3, 4, 6, 7, 8, 10, 11, 12, 13, 14, 15, 18, 19, 20, 21, 22, 23, 24, 27, 28, 29, 30, 31, 32, 35, 36, 37, 38, 39, 40, 41, 44, 49, 83, 103, 104, 107, 108, 111, 185, 196, 239, 294, 311, 323, 349, 386, 418, 451, 472, 498, 518], "summary": {"covered_lines": 53, "num_statements": 53, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"_ByteTrackConfig": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 19, "executed_branches": [], "missing_branches": []}, "_ByteTrackResources": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 28, "executed_branches": [], "missing_branches": []}, "_ByteTrackState": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 36, "executed_branches": [], "missing_branches": []}, "ByteTrack": {"executed_lines": [91, 101, 105, 109, 150, 153, 159, 206, 207, 208, 209, 210, 211, 213, 247, 248, 250, 251, 252, 254, 255, 256, 257, 258, 260, 261, 262, 274], "summary": {"covered_lines": 28, "num_statements": 132, "percent_covered": 17.441860465116278, "percent_covered_display": "17", "missing_lines": 104, "excluded_lines": 0, "percent_statements_covered": 21.21212121212121, "percent_statements_covered_display": "21", "num_branches": 40, "num_partial_branches": 2, "covered_branches": 2, "missing_branches": 38, "percent_branches_covered": 5.0, "percent_branches_covered_display": "5"}, "missing_lines": [151, 161, 162, 163, 165, 167, 169, 170, 171, 172, 176, 177, 180, 181, 183, 194, 216, 217, 219, 220, 222, 225, 228, 231, 233, 237, 273, 275, 277, 297, 298, 299, 314, 315, 316, 317, 318, 320, 321, 331, 332, 333, 337, 338, 339, 340, 341, 342, 343, 345, 346, 347, 356, 357, 359, 365, 366, 368, 369, 370, 371, 372, 373, 375, 376, 378, 379, 380, 381, 382, 384, 392, 393, 395, 397, 398, 399, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 416, 419, 420, 421, 422, 423, 424, 458, 461, 462, 463, 464, 465, 466, 467], "excluded_lines": [], "start_line": 49, "executed_branches": [[150, 153], [260, 261]], "missing_branches": [[150, 151], [161, 162], [161, 180], [171, 172], [171, 176], [260, 273], [297, 298], [297, 299], [316, 317], [316, 321], [317, 318], [317, 320], [338, 339], [338, 347], [341, 342], [341, 345], [368, 369], [368, 378], [371, 372], [371, 375], [378, 379], [378, 384], [380, 378], [380, 381], [392, 393], [392, 395], [404, 405], [404, 407], [407, 408], [407, 410], [410, 411], [410, 416], [412, 410], [412, 413], [420, 421], [420, 424], [421, 420], [421, 422]]}, "": {"executed_lines": [1, 3, 4, 6, 7, 8, 10, 11, 12, 13, 14, 15, 18, 19, 20, 21, 22, 23, 24, 27, 28, 29, 30, 31, 32, 35, 36, 37, 38, 39, 40, 41, 44, 49, 83, 103, 104, 107, 108, 111, 185, 196, 239, 294, 311, 323, 349, 386, 418, 451, 472, 498, 518], "summary": {"covered_lines": 53, "num_statements": 77, "percent_covered": 60.91954022988506, "percent_covered_display": "61", "missing_lines": 24, "excluded_lines": 0, "percent_statements_covered": 68.83116883116882, "percent_statements_covered_display": "69", "num_branches": 10, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 10, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [487, 488, 490, 491, 492, 493, 495, 509, 510, 512, 513, 515, 521, 522, 524, 525, 526, 527, 528, 529, 531, 533, 536, 540], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": [[490, 491], [490, 495], [491, 490], [491, 492], [512, 513], [512, 515], [525, 526], [525, 533], [528, 529], [528, 531]]}}}, "src\\supervision\\tracker\\byte_tracker\\kalman_filter.py": {"executed_lines": [1, 3, 4, 5, 8, 21, 22, 24, 25, 26, 27, 29, 30, 32, 61, 96, 123, 160], "summary": {"covered_lines": 18, "num_statements": 53, "percent_covered": 35.08771929824562, "percent_covered_display": "35", "missing_lines": 35, "excluded_lines": 0, "percent_statements_covered": 33.9622641509434, "percent_statements_covered_display": "34", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 2, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [44, 45, 46, 48, 58, 59, 74, 80, 86, 88, 89, 94, 109, 115, 117, 118, 121, 135, 141, 147, 149, 150, 151, 152, 154, 155, 156, 158, 177, 179, 182, 187, 189, 190, 193], "excluded_lines": [], "executed_branches": [[25, 26], [25, 27]], "missing_branches": [[150, 151], [150, 152]], "functions": {"KalmanFilter.__init__": {"executed_lines": [22, 24, 25, 26, 27, 29, 30], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 21, "executed_branches": [[25, 26], [25, 27]], "missing_branches": []}, "KalmanFilter.initiate": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 6, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 6, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [44, 45, 46, 48, 58, 59], "excluded_lines": [], "start_line": 32, "executed_branches": [], "missing_branches": []}, "KalmanFilter.predict": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 6, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 6, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [74, 80, 86, 88, 89, 94], "excluded_lines": [], "start_line": 61, "executed_branches": [], "missing_branches": []}, "KalmanFilter.project": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 5, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 5, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [109, 115, 117, 118, 121], "excluded_lines": [], "start_line": 96, "executed_branches": [], "missing_branches": []}, "KalmanFilter.multi_predict": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 11, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 11, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 2, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [135, 141, 147, 149, 150, 151, 152, 154, 155, 156, 158], "excluded_lines": [], "start_line": 123, "executed_branches": [], "missing_branches": [[150, 151], [150, 152]]}, "KalmanFilter.update": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 7, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 7, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [177, 179, 182, 187, 189, 190, 193], "excluded_lines": [], "start_line": 160, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 5, 8, 21, 32, 61, 96, 123, 160], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"KalmanFilter": {"executed_lines": [22, 24, 25, 26, 27, 29, 30], "summary": {"covered_lines": 7, "num_statements": 42, "percent_covered": 19.565217391304348, "percent_covered_display": "20", "missing_lines": 35, "excluded_lines": 0, "percent_statements_covered": 16.666666666666668, "percent_statements_covered_display": "17", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 2, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [44, 45, 46, 48, 58, 59, 74, 80, 86, 88, 89, 94, 109, 115, 117, 118, 121, 135, 141, 147, 149, 150, 151, 152, 154, 155, 156, 158, 177, 179, 182, 187, 189, 190, 193], "excluded_lines": [], "start_line": 8, "executed_branches": [[25, 26], [25, 27]], "missing_branches": [[150, 151], [150, 152]]}, "": {"executed_lines": [1, 3, 4, 5, 8, 21, 32, 61, 96, 123, 160], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "src\\supervision\\tracker\\byte_tracker\\matching.py": {"executed_lines": [1, 3, 5, 6, 7, 9, 15, 27, 44, 65], "summary": {"covered_lines": 10, "num_statements": 40, "percent_covered": 20.833333333333332, "percent_covered_display": "21", "missing_lines": 30, "excluded_lines": 2, "percent_statements_covered": 25.0, "percent_statements_covered_display": "25", "num_branches": 8, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 8, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [18, 19, 21, 22, 23, 24, 30, 31, 37, 38, 39, 41, 48, 51, 52, 54, 55, 57, 58, 59, 60, 62, 68, 69, 70, 71, 72, 73, 74, 75], "excluded_lines": [11, 12], "executed_branches": [], "missing_branches": [[30, 31], [30, 37], [48, 51], [48, 54], [58, 59], [58, 60], [68, 69], [68, 70]], "functions": {"indices_to_matches": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 6, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 6, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [18, 19, 21, 22, 23, 24], "excluded_lines": [], "start_line": 15, "executed_branches": [], "missing_branches": []}, "linear_assignment": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 6, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 6, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 2, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [30, 31, 37, 38, 39, 41], "excluded_lines": [], "start_line": 27, "executed_branches": [], "missing_branches": [[30, 31], [30, 37]]}, "iou_distance": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 10, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 10, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 4, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [48, 51, 52, 54, 55, 57, 58, 59, 60, 62], "excluded_lines": [], "start_line": 44, "executed_branches": [], "missing_branches": [[48, 51], [48, 54], [58, 59], [58, 60]]}, "fuse_score": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 8, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 8, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 2, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [68, 69, 70, 71, 72, 73, 74, 75], "excluded_lines": [], "start_line": 65, "executed_branches": [], "missing_branches": [[68, 69], [68, 70]]}, "": {"executed_lines": [1, 3, 5, 6, 7, 9, 15, 27, 44, 65], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 2, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [11, 12], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 3, 5, 6, 7, 9, 15, 27, 44, 65], "summary": {"covered_lines": 10, "num_statements": 40, "percent_covered": 20.833333333333332, "percent_covered_display": "21", "missing_lines": 30, "excluded_lines": 2, "percent_statements_covered": 25.0, "percent_statements_covered_display": "25", "num_branches": 8, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 8, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [18, 19, 21, 22, 23, 24, 30, 31, 37, 38, 39, 41, 48, 51, 52, 54, 55, 57, 58, 59, 60, 62, 68, 69, 70, 71, 72, 73, 74, 75], "excluded_lines": [11, 12], "start_line": 1, "executed_branches": [], "missing_branches": [[30, 31], [30, 37], [48, 51], [48, 54], [58, 59], [58, 60], [68, 69], [68, 70]]}}}, "src\\supervision\\tracker\\byte_tracker\\single_object_track.py": {"executed_lines": [1, 3, 4, 6, 7, 9, 10, 13, 14, 15, 16, 17, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 38, 39, 40, 41, 44, 45, 53, 61, 62, 65, 66, 69, 70, 73, 74, 77, 78, 81, 82, 85, 86, 89, 90, 93, 94, 97, 98, 101, 102, 105, 106, 109, 110, 113, 114, 117, 118, 121, 122, 125, 126, 129, 130, 133, 134, 137, 138, 141, 142, 145, 146, 149, 150, 153, 164, 165, 184, 202, 215, 241, 242, 253, 254, 262, 263, 272, 275, 276, 277, 278, 279, 281, 282, 287], "summary": {"covered_lines": 103, "num_statements": 197, "percent_covered": 47.465437788018434, "percent_covered_display": "47", "missing_lines": 94, "excluded_lines": 0, "percent_statements_covered": 52.28426395939086, "percent_statements_covered_display": "52", "num_branches": 20, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 20, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [63, 67, 71, 75, 79, 83, 87, 91, 95, 99, 103, 107, 111, 115, 119, 123, 127, 131, 135, 139, 143, 147, 151, 154, 155, 156, 157, 158, 159, 160, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 177, 180, 181, 182, 186, 187, 188, 192, 193, 194, 195, 196, 197, 199, 200, 203, 204, 205, 206, 209, 210, 212, 213, 223, 224, 225, 226, 227, 229, 230, 233, 234, 235, 236, 237, 239, 246, 247, 248, 249, 250, 251, 258, 259, 260, 267, 268, 269, 270, 273, 283, 284, 285, 288], "excluded_lines": [], "executed_branches": [], "missing_branches": [[158, 159], [158, 160], [166, -164], [166, 167], [169, 170], [169, 177], [174, 169], [174, 175], [180, -164], [180, 181], [194, 195], [194, 199], [196, 197], [196, 199], [234, 235], [234, 239], [236, 237], [236, 239], [246, 247], [246, 248]], "functions": {"_STrackData.__post_init__": {"executed_lines": [39, 40, 41], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 38, "executed_branches": [], "missing_branches": []}, "STrack.__init__": {"executed_lines": [53], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 45, "executed_branches": [], "missing_branches": []}, "STrack.state": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [67], "excluded_lines": [], "start_line": 66, "executed_branches": [], "missing_branches": []}, "STrack.is_activated": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [75], "excluded_lines": [], "start_line": 74, "executed_branches": [], "missing_branches": []}, "STrack.start_frame": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [83], "excluded_lines": [], "start_line": 82, "executed_branches": [], "missing_branches": []}, "STrack.frame_id": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [91], "excluded_lines": [], "start_line": 90, "executed_branches": [], "missing_branches": []}, "STrack.kalman_filter": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [99], "excluded_lines": [], "start_line": 98, "executed_branches": [], "missing_branches": []}, "STrack.mean": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [107], "excluded_lines": [], "start_line": 106, "executed_branches": [], "missing_branches": []}, "STrack.covariance": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [115], "excluded_lines": [], "start_line": 114, "executed_branches": [], "missing_branches": []}, "STrack.score": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [123], "excluded_lines": [], "start_line": 122, "executed_branches": [], "missing_branches": []}, "STrack.tracklet_len": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [131], "excluded_lines": [], "start_line": 130, "executed_branches": [], "missing_branches": []}, "STrack.minimum_consecutive_frames": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [135], "excluded_lines": [], "start_line": 134, "executed_branches": [], "missing_branches": []}, "STrack.internal_track_id": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [143], "excluded_lines": [], "start_line": 142, "executed_branches": [], "missing_branches": []}, "STrack.external_track_id": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [151], "excluded_lines": [], "start_line": 150, "executed_branches": [], "missing_branches": []}, "STrack.predict": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 7, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 7, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 2, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [154, 155, 156, 157, 158, 159, 160], "excluded_lines": [], "start_line": 153, "executed_branches": [], "missing_branches": [[158, 159], [158, 160]]}, "STrack.multi_predict": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 14, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 14, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 8, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 8, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 177, 180, 181, 182], "excluded_lines": [], "start_line": 165, "executed_branches": [], "missing_branches": [[166, -164], [166, 167], [169, 170], [169, 177], [174, 169], [174, 175], [180, -164], [180, 181]]}, "STrack.activate": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 11, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 11, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 4, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [186, 187, 188, 192, 193, 194, 195, 196, 197, 199, 200], "excluded_lines": [], "start_line": 184, "executed_branches": [], "missing_branches": [[194, 195], [194, 199], [196, 197], [196, 199]]}, "STrack.re_activate": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 8, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 8, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [203, 204, 205, 206, 209, 210, 212, 213], "excluded_lines": [], "start_line": 202, "executed_branches": [], "missing_branches": []}, "STrack.update": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 13, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 13, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 4, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [223, 224, 225, 226, 227, 229, 230, 233, 234, 235, 236, 237, 239], "excluded_lines": [], "start_line": 215, "executed_branches": [], "missing_branches": [[234, 235], [234, 239], [236, 237], [236, 239]]}, "STrack.tlwh": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 6, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 6, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 2, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [246, 247, 248, 249, 250, 251], "excluded_lines": [], "start_line": 242, "executed_branches": [], "missing_branches": [[246, 247], [246, 248]]}, "STrack.tlbr": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 3, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [258, 259, 260], "excluded_lines": [], "start_line": 254, "executed_branches": [], "missing_branches": []}, "STrack.tlwh_to_xyah": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 4, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 4, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [267, 268, 269, 270], "excluded_lines": [], "start_line": 263, "executed_branches": [], "missing_branches": []}, "STrack.to_xyah": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [273], "excluded_lines": [], "start_line": 272, "executed_branches": [], "missing_branches": []}, "STrack.tlbr_to_tlwh": {"executed_lines": [277, 278, 279], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 276, "executed_branches": [], "missing_branches": []}, "STrack.tlwh_to_tlbr": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 3, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [283, 284, 285], "excluded_lines": [], "start_line": 282, "executed_branches": [], "missing_branches": []}, "STrack.__repr__": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [288], "excluded_lines": [], "start_line": 287, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 6, 7, 9, 10, 13, 14, 15, 16, 17, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 38, 44, 45, 61, 62, 65, 66, 69, 70, 73, 74, 77, 78, 81, 82, 85, 86, 89, 90, 93, 94, 97, 98, 101, 102, 105, 106, 109, 110, 113, 114, 117, 118, 121, 122, 125, 126, 129, 130, 133, 134, 137, 138, 141, 142, 145, 146, 149, 150, 153, 164, 165, 184, 202, 215, 241, 242, 253, 254, 262, 263, 272, 275, 276, 281, 282, 287], "summary": {"covered_lines": 96, "num_statements": 96, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"TrackState": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 13, "executed_branches": [], "missing_branches": []}, "_STrackData": {"executed_lines": [39, 40, 41], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 21, "executed_branches": [], "missing_branches": []}, "STrack": {"executed_lines": [53, 277, 278, 279], "summary": {"covered_lines": 4, "num_statements": 98, "percent_covered": 3.389830508474576, "percent_covered_display": "3", "missing_lines": 94, "excluded_lines": 0, "percent_statements_covered": 4.081632653061225, "percent_statements_covered_display": "4", "num_branches": 20, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 20, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [63, 67, 71, 75, 79, 83, 87, 91, 95, 99, 103, 107, 111, 115, 119, 123, 127, 131, 135, 139, 143, 147, 151, 154, 155, 156, 157, 158, 159, 160, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 177, 180, 181, 182, 186, 187, 188, 192, 193, 194, 195, 196, 197, 199, 200, 203, 204, 205, 206, 209, 210, 212, 213, 223, 224, 225, 226, 227, 229, 230, 233, 234, 235, 236, 237, 239, 246, 247, 248, 249, 250, 251, 258, 259, 260, 267, 268, 269, 270, 273, 283, 284, 285, 288], "excluded_lines": [], "start_line": 44, "executed_branches": [], "missing_branches": [[158, 159], [158, 160], [166, -164], [166, 167], [169, 170], [169, 177], [174, 169], [174, 175], [180, -164], [180, 181], [194, 195], [194, 199], [196, 197], [196, 199], [234, 235], [234, 239], [236, 237], [236, 239], [246, 247], [246, 248]]}, "": {"executed_lines": [1, 3, 4, 6, 7, 9, 10, 13, 14, 15, 16, 17, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 38, 44, 45, 61, 62, 65, 66, 69, 70, 73, 74, 77, 78, 81, 82, 85, 86, 89, 90, 93, 94, 97, 98, 101, 102, 105, 106, 109, 110, 113, 114, 117, 118, 121, 122, 125, 126, 129, 130, 133, 134, 137, 138, 141, 142, 145, 146, 149, 150, 153, 164, 165, 184, 202, 215, 241, 242, 253, 254, 262, 263, 272, 275, 276, 281, 282, 287], "summary": {"covered_lines": 96, "num_statements": 96, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "src\\supervision\\tracker\\byte_tracker\\utils.py": {"executed_lines": [1, 4, 5, 15, 16, 18, 20, 22, 24, 35, 36, 37], "summary": {"covered_lines": 12, "num_statements": 16, "percent_covered": 72.22222222222223, "percent_covered_display": "72", "missing_lines": 4, "excluded_lines": 0, "percent_statements_covered": 75.0, "percent_statements_covered_display": "75", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [17, 31, 32, 33], "excluded_lines": [], "executed_branches": [[16, 18]], "missing_branches": [[16, 17]], "functions": {"IdCounter.__init__": {"executed_lines": [15, 16, 18], "summary": {"covered_lines": 3, "num_statements": 4, "percent_covered": 66.66666666666667, "percent_covered_display": "67", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 75.0, "percent_statements_covered_display": "75", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [17], "excluded_lines": [], "start_line": 5, "executed_branches": [[16, 18]], "missing_branches": [[16, 17]]}, "IdCounter.reset": {"executed_lines": [22], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 20, "executed_branches": [], "missing_branches": []}, "IdCounter.new_id": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 3, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [31, 32, 33], "excluded_lines": [], "start_line": 24, "executed_branches": [], "missing_branches": []}, "IdCounter.NO_ID": {"executed_lines": [37], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 36, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 4, 5, 20, 24, 35, 36], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"IdCounter": {"executed_lines": [15, 16, 18, 22, 37], "summary": {"covered_lines": 5, "num_statements": 9, "percent_covered": 54.54545454545455, "percent_covered_display": "55", "missing_lines": 4, "excluded_lines": 0, "percent_statements_covered": 55.55555555555556, "percent_statements_covered_display": "56", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [17, 31, 32, 33], "excluded_lines": [], "start_line": 4, "executed_branches": [[16, 18]], "missing_branches": [[16, 17]]}, "": {"executed_lines": [1, 4, 5, 20, 24, 35, 36], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "src\\supervision\\utils\\__init__.py": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "src\\supervision\\utils\\conversion.py": {"executed_lines": [1, 2, 3, 5, 6, 7, 8, 9, 11, 13, 16, 27, 28, 29, 30, 40, 43, 48, 54, 64, 65, 66, 67, 69, 70, 71, 72, 76, 79, 89, 90, 91, 92, 93, 94, 95, 102, 105, 110, 116, 121, 127, 140, 141, 142, 143, 144, 145, 148, 159, 160, 163, 166, 177, 178], "summary": {"covered_lines": 55, "num_statements": 68, "percent_covered": 76.19047619047619, "percent_covered_display": "76", "missing_lines": 13, "excluded_lines": 0, "percent_statements_covered": 80.88235294117646, "percent_statements_covered_display": "81", "num_branches": 16, "num_partial_branches": 3, "covered_branches": 9, "missing_branches": 7, "percent_branches_covered": 56.25, "percent_branches_covered_display": "56"}, "missing_lines": [32, 33, 34, 35, 36, 38, 51, 74, 97, 98, 100, 113, 124], "excluded_lines": [], "executed_branches": [[29, 30], [66, 67], [66, 69], [69, 70], [91, 92], [141, 142], [141, 145], [142, 143], [142, 144]], "missing_branches": [[29, 32], [32, 33], [32, 38], [69, 74], [91, 97], [97, 98], [97, 100]], "functions": {"ensure_cv2_image_for_class_method": {"executed_lines": [27, 28, 40], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 16, "executed_branches": [], "missing_branches": []}, "ensure_cv2_image_for_class_method.wrapper": {"executed_lines": [29, 30], "summary": {"covered_lines": 2, "num_statements": 8, "percent_covered": 25.0, "percent_covered_display": "25", "missing_lines": 6, "excluded_lines": 0, "percent_statements_covered": 25.0, "percent_statements_covered_display": "25", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 3, "percent_branches_covered": 25.0, "percent_branches_covered_display": "25"}, "missing_lines": [32, 33, 34, 35, 36, 38], "excluded_lines": [], "start_line": 28, "executed_branches": [[29, 30]], "missing_branches": [[29, 32], [32, 33], [32, 38]]}, "ensure_cv2_image_for_annotation": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [51], "excluded_lines": [], "start_line": 48, "executed_branches": [], "missing_branches": []}, "ensure_cv2_image_for_standalone_function": {"executed_lines": [64, 65, 76], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 54, "executed_branches": [], "missing_branches": []}, "ensure_cv2_image_for_standalone_function.wrapper": {"executed_lines": [66, 67, 69, 70, 71, 72], "summary": {"covered_lines": 6, "num_statements": 7, "percent_covered": 81.81818181818181, "percent_covered_display": "82", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 85.71428571428571, "percent_statements_covered_display": "86", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [74], "excluded_lines": [], "start_line": 65, "executed_branches": [[66, 67], [66, 69], [69, 70]], "missing_branches": [[69, 74]]}, "ensure_pil_image_for_class_method": {"executed_lines": [89, 90, 102], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 79, "executed_branches": [], "missing_branches": []}, "ensure_pil_image_for_class_method.wrapper": {"executed_lines": [91, 92, 93, 94, 95], "summary": {"covered_lines": 5, "num_statements": 8, "percent_covered": 50.0, "percent_covered_display": "50", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 62.5, "percent_statements_covered_display": "62", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 3, "percent_branches_covered": 25.0, "percent_branches_covered_display": "25"}, "missing_lines": [97, 98, 100], "excluded_lines": [], "start_line": 90, "executed_branches": [[91, 92]], "missing_branches": [[91, 97], [97, 98], [97, 100]]}, "ensure_pil_image_for_annotation": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [113], "excluded_lines": [], "start_line": 110, "executed_branches": [], "missing_branches": []}, "ensure_cv2_image_for_processing": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [124], "excluded_lines": [], "start_line": 121, "executed_branches": [], "missing_branches": []}, "images_to_cv2": {"executed_lines": [140, 141, 142, 143, 144, 145], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 127, "executed_branches": [[141, 142], [141, 145], [142, 143], [142, 144]], "missing_branches": []}, "pillow_to_cv2": {"executed_lines": [159, 160, 163], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 148, "executed_branches": [], "missing_branches": []}, "cv2_to_pillow": {"executed_lines": [177, 178], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 166, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 2, 3, 5, 6, 7, 8, 9, 11, 13, 16, 43, 48, 54, 79, 105, 110, 116, 121, 127, 148, 166], "summary": {"covered_lines": 22, "num_statements": 22, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 2, 3, 5, 6, 7, 8, 9, 11, 13, 16, 27, 28, 29, 30, 40, 43, 48, 54, 64, 65, 66, 67, 69, 70, 71, 72, 76, 79, 89, 90, 91, 92, 93, 94, 95, 102, 105, 110, 116, 121, 127, 140, 141, 142, 143, 144, 145, 148, 159, 160, 163, 166, 177, 178], "summary": {"covered_lines": 55, "num_statements": 68, "percent_covered": 76.19047619047619, "percent_covered_display": "76", "missing_lines": 13, "excluded_lines": 0, "percent_statements_covered": 80.88235294117646, "percent_statements_covered_display": "81", "num_branches": 16, "num_partial_branches": 3, "covered_branches": 9, "missing_branches": 7, "percent_branches_covered": 56.25, "percent_branches_covered_display": "56"}, "missing_lines": [32, 33, 34, 35, 36, 38, 51, 74, 97, 98, 100, 113, 124], "excluded_lines": [], "start_line": 1, "executed_branches": [[29, 30], [66, 67], [66, 69], [69, 70], [91, 92], [141, 142], [141, 145], [142, 143], [142, 144]], "missing_branches": [[29, 32], [32, 33], [32, 38], [69, 74], [91, 97], [97, 98], [97, 100]]}}}, "src\\supervision\\utils\\file.py": {"executed_lines": [1, 3, 4, 5, 7, 8, 11, 12, 13, 14, 15, 16, 22, 66, 67, 69, 70, 71, 72, 73, 74, 77, 78, 79, 80, 82, 83, 84, 85, 89, 92, 120, 121, 122, 124, 126, 129, 137, 138, 139, 142, 166, 167, 168, 171, 182, 183, 186, 196, 197, 198, 201, 210, 211], "summary": {"covered_lines": 54, "num_statements": 59, "percent_covered": 87.65432098765432, "percent_covered_display": "88", "missing_lines": 5, "excluded_lines": 0, "percent_statements_covered": 91.52542372881356, "percent_statements_covered_display": "92", "num_branches": 22, "num_partial_branches": 3, "covered_branches": 17, "missing_branches": 5, "percent_branches_covered": 77.27272727272727, "percent_branches_covered_display": "77"}, "missing_lines": [17, 18, 19, 81, 87], "excluded_lines": [], "executed_branches": [[13, 14], [13, 15], [15, 16], [69, 70], [72, 73], [72, 77], [78, 79], [78, 89], [80, 82], [82, 78], [82, 83], [83, 82], [83, 84], [121, 122], [121, 124], [138, -129], [138, 139]], "missing_branches": [[15, 17], [17, 18], [17, 19], [69, 87], [80, 81]], "functions": {"NumpyJsonEncoder.default": {"executed_lines": [13, 14, 15, 16], "summary": {"covered_lines": 4, "num_statements": 7, "percent_covered": 53.84615384615385, "percent_covered_display": "54", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 57.142857142857146, "percent_statements_covered_display": "57", "num_branches": 6, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 3, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [17, 18, 19], "excluded_lines": [], "start_line": 12, "executed_branches": [[13, 14], [13, 15], [15, 16]], "missing_branches": [[15, 17], [17, 18], [17, 19]]}, "list_files_with_extensions": {"executed_lines": [66, 67, 69, 70, 71, 72, 73, 74, 77, 78, 79, 80, 82, 83, 84, 85, 89], "summary": {"covered_lines": 17, "num_statements": 19, "percent_covered": 87.09677419354838, "percent_covered_display": "87", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 89.47368421052632, "percent_statements_covered_display": "89", "num_branches": 12, "num_partial_branches": 2, "covered_branches": 10, "missing_branches": 2, "percent_branches_covered": 83.33333333333333, "percent_branches_covered_display": "83"}, "missing_lines": [81, 87], "excluded_lines": [], "start_line": 22, "executed_branches": [[69, 70], [72, 73], [72, 77], [78, 79], [78, 89], [80, 82], [82, 78], [82, 83], [83, 82], [83, 84]], "missing_branches": [[69, 87], [80, 81]]}, "read_txt_file": {"executed_lines": [120, 121, 122, 124, 126], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 92, "executed_branches": [[121, 122], [121, 124]], "missing_branches": []}, "save_text_file": {"executed_lines": [137, 138, 139], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 129, "executed_branches": [[138, -129], [138, 139]], "missing_branches": []}, "read_json_file": {"executed_lines": [166, 167, 168], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 142, "executed_branches": [], "missing_branches": []}, "save_json_file": {"executed_lines": [182, 183], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 171, "executed_branches": [], "missing_branches": []}, "read_yaml_file": {"executed_lines": [196, 197, 198], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 186, "executed_branches": [], "missing_branches": []}, "save_yaml_file": {"executed_lines": [210, 211], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 201, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 5, 7, 8, 11, 12, 22, 92, 129, 142, 171, 186, 201], "summary": {"covered_lines": 15, "num_statements": 15, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"NumpyJsonEncoder": {"executed_lines": [13, 14, 15, 16], "summary": {"covered_lines": 4, "num_statements": 7, "percent_covered": 53.84615384615385, "percent_covered_display": "54", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 57.142857142857146, "percent_statements_covered_display": "57", "num_branches": 6, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 3, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [17, 18, 19], "excluded_lines": [], "start_line": 11, "executed_branches": [[13, 14], [13, 15], [15, 16]], "missing_branches": [[15, 17], [17, 18], [17, 19]]}, "": {"executed_lines": [1, 3, 4, 5, 7, 8, 11, 12, 22, 66, 67, 69, 70, 71, 72, 73, 74, 77, 78, 79, 80, 82, 83, 84, 85, 89, 92, 120, 121, 122, 124, 126, 129, 137, 138, 139, 142, 166, 167, 168, 171, 182, 183, 186, 196, 197, 198, 201, 210, 211], "summary": {"covered_lines": 50, "num_statements": 52, "percent_covered": 94.11764705882354, "percent_covered_display": "94", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 96.15384615384616, "percent_statements_covered_display": "96", "num_branches": 16, "num_partial_branches": 2, "covered_branches": 14, "missing_branches": 2, "percent_branches_covered": 87.5, "percent_branches_covered_display": "88"}, "missing_lines": [81, 87], "excluded_lines": [], "start_line": 1, "executed_branches": [[69, 70], [72, 73], [72, 77], [78, 79], [78, 89], [80, 82], [82, 78], [82, 83], [83, 82], [83, 84], [121, 122], [121, 124], [138, -129], [138, 139]], "missing_branches": [[69, 87], [80, 81]]}}}, "src\\supervision\\utils\\image.py": {"executed_lines": [1, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 17, 18, 19, 20, 21, 26, 28, 30, 33, 34, 77, 78, 80, 81, 83, 84, 94, 95, 135, 136, 139, 140, 141, 142, 145, 146, 193, 194, 195, 196, 197, 198, 199, 206, 209, 210, 255, 256, 257, 260, 261, 262, 263, 264, 265, 275, 278, 283, 317, 318, 319, 321, 322, 324, 327, 328, 329, 330, 332, 333, 334, 335, 337, 348, 352, 355, 356, 403, 404, 434, 462, 463, 468, 469, 471, 472, 473, 481, 482, 521, 531, 551, 560, 565, 706, 713, 721, 728, 739, 756, 767, 816, 860, 879, 918], "summary": {"covered_lines": 108, "num_statements": 245, "percent_covered": 37.15170278637771, "percent_covered_display": "37", "missing_lines": 137, "excluded_lines": 0, "percent_statements_covered": 44.08163265306123, "percent_statements_covered_display": "44", "num_branches": 78, "num_partial_branches": 8, "covered_branches": 12, "missing_branches": 66, "percent_branches_covered": 15.384615384615385, "percent_branches_covered_display": "15"}, "missing_lines": [86, 87, 89, 137, 201, 202, 204, 325, 338, 341, 342, 344, 345, 346, 392, 393, 394, 396, 397, 400, 430, 431, 464, 475, 516, 517, 518, 519, 522, 523, 524, 525, 527, 529, 544, 545, 547, 548, 549, 557, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 668, 669, 670, 673, 674, 675, 676, 678, 679, 682, 683, 684, 701, 702, 703, 707, 708, 709, 710, 716, 717, 718, 731, 732, 736, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 757, 758, 759, 760, 761, 762, 763, 764, 784, 796, 797, 798, 799, 802, 803, 807, 828, 829, 830, 835, 836, 837, 840, 841, 842, 843, 844, 845, 856, 857, 865, 866, 867, 868, 869, 870, 871, 872, 874, 875, 876, 886, 890, 901, 902, 905, 906, 907, 908, 909, 921], "excluded_lines": [], "executed_branches": [[77, 78], [77, 80], [83, 84], [136, 139], [194, 195], [197, 198], [324, 327], [337, 348], [462, 463], [462, 471], [463, 468], [471, 472]], "missing_branches": [[83, 86], [86, 87], [86, 89], [136, 137], [194, 204], [197, 201], [324, 325], [337, 338], [393, 394], [393, 396], [463, 464], [471, 475], [522, 523], [522, 527], [523, 524], [523, 529], [544, 545], [544, 547], [653, 654], [653, 655], [655, 656], [655, 657], [660, 661], [660, 662], [669, 670], [669, 673], [673, 674], [673, 675], [675, 676], [675, 678], [701, 702], [701, 703], [708, 709], [708, 710], [731, 732], [731, 736], [743, 744], [743, 745], [745, 746], [745, 749], [749, 750], [749, 753], [757, 758], [757, 759], [762, 763], [762, 764], [798, 799], [798, 802], [802, 803], [802, 807], [828, 829], [828, 830], [835, 836], [835, 840], [841, 842], [841, 857], [842, 843], [842, 845], [866, 867], [866, 876], [867, 868], [867, 870], [871, 872], [871, 874], [906, 907], [906, 909]], "functions": {"crop_image": {"executed_lines": [77, 78, 80, 81, 83, 84], "summary": {"covered_lines": 6, "num_statements": 9, "percent_covered": 60.0, "percent_covered_display": "60", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 66.66666666666667, "percent_statements_covered_display": "67", "num_branches": 6, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 3, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [86, 87, 89], "excluded_lines": [], "start_line": 34, "executed_branches": [[77, 78], [77, 80], [83, 84]], "missing_branches": [[83, 86], [86, 87], [86, 89]]}, "scale_image": {"executed_lines": [135, 136, 139, 140, 141, 142], "summary": {"covered_lines": 6, "num_statements": 7, "percent_covered": 77.77777777777777, "percent_covered_display": "78", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 85.71428571428571, "percent_statements_covered_display": "86", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [137], "excluded_lines": [], "start_line": 95, "executed_branches": [[136, 139]], "missing_branches": [[136, 137]]}, "resize_image": {"executed_lines": [193, 194, 195, 196, 197, 198, 199, 206], "summary": {"covered_lines": 8, "num_statements": 11, "percent_covered": 66.66666666666667, "percent_covered_display": "67", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 72.72727272727273, "percent_statements_covered_display": "73", "num_branches": 4, "num_partial_branches": 2, "covered_branches": 2, "missing_branches": 2, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [201, 202, 204], "excluded_lines": [], "start_line": 146, "executed_branches": [[194, 195], [197, 198]], "missing_branches": [[194, 204], [197, 201]]}, "letterbox_image": {"executed_lines": [255, 256, 257, 260, 261, 262, 263, 264, 265, 275], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 210, "executed_branches": [], "missing_branches": []}, "overlay_image": {"executed_lines": [317, 318, 319, 321, 322, 324, 327, 328, 329, 330, 332, 333, 334, 335, 337, 348, 352], "summary": {"covered_lines": 17, "num_statements": 24, "percent_covered": 67.85714285714286, "percent_covered_display": "68", "missing_lines": 7, "excluded_lines": 0, "percent_statements_covered": 70.83333333333333, "percent_statements_covered_display": "71", "num_branches": 4, "num_partial_branches": 2, "covered_branches": 2, "missing_branches": 2, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [325, 338, 341, 342, 344, 345, 346], "excluded_lines": [], "start_line": 283, "executed_branches": [[324, 327], [337, 348]], "missing_branches": [[324, 325], [337, 338]]}, "tint_image": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 6, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 6, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 2, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [392, 393, 394, 396, 397, 400], "excluded_lines": [], "start_line": 356, "executed_branches": [], "missing_branches": [[393, 394], [393, 396]]}, "grayscale_image": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 2, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [430, 431], "excluded_lines": [], "start_line": 404, "executed_branches": [], "missing_branches": []}, "get_image_resolution_wh": {"executed_lines": [462, 463, 468, 469, 471, 472, 473], "summary": {"covered_lines": 7, "num_statements": 9, "percent_covered": 73.33333333333333, "percent_covered_display": "73", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 77.77777777777777, "percent_statements_covered_display": "78", "num_branches": 6, "num_partial_branches": 2, "covered_branches": 4, "missing_branches": 2, "percent_branches_covered": 66.66666666666667, "percent_branches_covered_display": "67"}, "missing_lines": [464, 475], "excluded_lines": [], "start_line": 434, "executed_branches": [[462, 463], [462, 471], [463, 468], [471, 472]], "missing_branches": [[463, 464], [471, 475]]}, "ImageSink.__init__": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 4, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 4, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [516, 517, 518, 519], "excluded_lines": [], "start_line": 482, "executed_branches": [], "missing_branches": []}, "ImageSink.__enter__": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 6, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 6, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 4, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [522, 523, 524, 525, 527, 529], "excluded_lines": [], "start_line": 521, "executed_branches": [], "missing_branches": [[522, 523], [522, 527], [523, 524], [523, 529]]}, "ImageSink.save_image": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 5, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 5, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 2, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [544, 545, 547, 548, 549], "excluded_lines": [], "start_line": 531, "executed_branches": [], "missing_branches": [[544, 545], [544, 547]]}, "ImageSink.__exit__": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [557], "excluded_lines": [], "start_line": 551, "executed_branches": [], "missing_branches": []}, "create_tiles": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 25, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 25, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 14, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 14, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 668, 669, 670, 673, 674, 675, 676, 678, 679, 682, 683, 684, 701, 702, 703], "excluded_lines": [], "start_line": 565, "executed_branches": [], "missing_branches": [[653, 654], [653, 655], [655, 656], [655, 657], [660, 661], [660, 662], [669, 670], [669, 673], [673, 674], [673, 675], [675, 676], [675, 678], [701, 702], [701, 703]]}, "_negotiate_tiles_format": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 4, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 4, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 2, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [707, 708, 709, 710], "excluded_lines": [], "start_line": 706, "executed_branches": [], "missing_branches": [[708, 709], [708, 710]]}, "_calculate_aggregated_images_shape": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 3, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [716, 717, 718], "excluded_lines": [], "start_line": 713, "executed_branches": [], "missing_branches": []}, "_aggregate_images_shape": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 3, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 2, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [731, 732, 736], "excluded_lines": [], "start_line": 728, "executed_branches": [], "missing_branches": [[731, 732], [731, 736]]}, "_establish_grid_size": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 11, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 11, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 6, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753], "excluded_lines": [], "start_line": 739, "executed_branches": [], "missing_branches": [[743, 744], [743, 745], [745, 746], [745, 749], [749, 750], [749, 753]]}, "_negotiate_grid_size": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 8, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 8, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 4, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [757, 758, 759, 760, 761, 762, 763, 764], "excluded_lines": [], "start_line": 756, "executed_branches": [], "missing_branches": [[757, 758], [757, 759], [762, 763], [762, 764]]}, "_generate_tiles": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 8, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 8, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 4, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [784, 796, 797, 798, 799, 802, 803, 807], "excluded_lines": [], "start_line": 767, "executed_branches": [], "missing_branches": [[798, 799], [798, 802], [802, 803], [802, 807]]}, "_draw_texts": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 14, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 14, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 8, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 8, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [828, 829, 830, 835, 836, 837, 840, 841, 842, 843, 844, 845, 856, 857], "excluded_lines": [], "start_line": 816, "executed_branches": [], "missing_branches": [[828, 829], [828, 830], [835, 836], [835, 840], [841, 842], [841, 857], [842, 843], [842, 845]]}, "_prepare_default_titles_anchors": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 11, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 11, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 6, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [865, 866, 867, 868, 869, 870, 871, 872, 874, 875, 876], "excluded_lines": [], "start_line": 860, "executed_branches": [], "missing_branches": [[866, 867], [866, 876], [867, 868], [867, 870], [871, 872], [871, 874]]}, "_merge_tiles_elements": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 9, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 9, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 2, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [886, 890, 901, 902, 905, 906, 907, 908, 909], "excluded_lines": [], "start_line": 879, "executed_branches": [], "missing_branches": [[906, 907], [906, 909]]}, "_generate_color_image": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [921], "excluded_lines": [], "start_line": 918, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 17, 18, 19, 20, 21, 26, 28, 30, 33, 34, 94, 95, 145, 146, 209, 210, 278, 283, 355, 356, 403, 404, 434, 481, 482, 521, 531, 551, 560, 565, 706, 713, 721, 728, 739, 756, 767, 816, 860, 879, 918], "summary": {"covered_lines": 54, "num_statements": 54, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"ImageSink": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 16, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 16, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 6, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [516, 517, 518, 519, 522, 523, 524, 525, 527, 529, 544, 545, 547, 548, 549, 557], "excluded_lines": [], "start_line": 481, "executed_branches": [], "missing_branches": [[522, 523], [522, 527], [523, 524], [523, 529], [544, 545], [544, 547]]}, "": {"executed_lines": [1, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 17, 18, 19, 20, 21, 26, 28, 30, 33, 34, 77, 78, 80, 81, 83, 84, 94, 95, 135, 136, 139, 140, 141, 142, 145, 146, 193, 194, 195, 196, 197, 198, 199, 206, 209, 210, 255, 256, 257, 260, 261, 262, 263, 264, 265, 275, 278, 283, 317, 318, 319, 321, 322, 324, 327, 328, 329, 330, 332, 333, 334, 335, 337, 348, 352, 355, 356, 403, 404, 434, 462, 463, 468, 469, 471, 472, 473, 481, 482, 521, 531, 551, 560, 565, 706, 713, 721, 728, 739, 756, 767, 816, 860, 879, 918], "summary": {"covered_lines": 108, "num_statements": 229, "percent_covered": 39.8671096345515, "percent_covered_display": "40", "missing_lines": 121, "excluded_lines": 0, "percent_statements_covered": 47.161572052401745, "percent_statements_covered_display": "47", "num_branches": 72, "num_partial_branches": 8, "covered_branches": 12, "missing_branches": 60, "percent_branches_covered": 16.666666666666668, "percent_branches_covered_display": "17"}, "missing_lines": [86, 87, 89, 137, 201, 202, 204, 325, 338, 341, 342, 344, 345, 346, 392, 393, 394, 396, 397, 400, 430, 431, 464, 475, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 668, 669, 670, 673, 674, 675, 676, 678, 679, 682, 683, 684, 701, 702, 703, 707, 708, 709, 710, 716, 717, 718, 731, 732, 736, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 757, 758, 759, 760, 761, 762, 763, 764, 784, 796, 797, 798, 799, 802, 803, 807, 828, 829, 830, 835, 836, 837, 840, 841, 842, 843, 844, 845, 856, 857, 865, 866, 867, 868, 869, 870, 871, 872, 874, 875, 876, 886, 890, 901, 902, 905, 906, 907, 908, 909, 921], "excluded_lines": [], "start_line": 1, "executed_branches": [[77, 78], [77, 80], [83, 84], [136, 139], [194, 195], [197, 198], [324, 327], [337, 348], [462, 463], [462, 471], [463, 468], [471, 472]], "missing_branches": [[83, 86], [86, 87], [86, 89], [136, 137], [194, 204], [197, 201], [324, 325], [337, 338], [393, 394], [393, 396], [463, 464], [471, 475], [653, 654], [653, 655], [655, 656], [655, 657], [660, 661], [660, 662], [669, 670], [669, 673], [673, 674], [673, 675], [675, 676], [675, 678], [701, 702], [701, 703], [708, 709], [708, 710], [731, 732], [731, 736], [743, 744], [743, 745], [745, 746], [745, 749], [749, 750], [749, 753], [757, 758], [757, 759], [762, 763], [762, 764], [798, 799], [798, 802], [802, 803], [802, 807], [828, 829], [828, 830], [835, 836], [835, 840], [841, 842], [841, 857], [842, 843], [842, 845], [866, 867], [866, 876], [867, 868], [867, 870], [871, 872], [871, 874], [906, 907], [906, 909]]}}}, "src\\supervision\\utils\\internal.py": {"executed_lines": [1, 3, 4, 5, 6, 7, 8, 11, 18, 21, 32, 35, 37, 40, 43, 50, 53, 130, 133, 145, 150, 152, 164, 166, 169, 191, 192, 194, 200, 201, 206, 208], "summary": {"covered_lines": 32, "num_statements": 47, "percent_covered": 64.40677966101696, "percent_covered_display": "64", "missing_lines": 15, "excluded_lines": 1, "percent_statements_covered": 68.08510638297872, "percent_statements_covered_display": "68", "num_branches": 12, "num_partial_branches": 2, "covered_branches": 6, "missing_branches": 6, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [38, 102, 103, 104, 105, 106, 107, 108, 110, 112, 121, 123, 125, 127, 165], "excluded_lines": [134], "executed_branches": [[37, 40], [164, 166], [191, 192], [191, 194], [200, 201], [200, 208]], "missing_branches": [[37, 38], [105, 106], [105, 123], [106, 107], [106, 110], [164, 165]], "functions": {"format_warning": {"executed_lines": [32], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 21, "executed_branches": [], "missing_branches": []}, "warn_deprecated": {"executed_lines": [50], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 43, "executed_branches": [], "missing_branches": []}, "deprecated_parameter": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 3, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [102, 103, 127], "excluded_lines": [], "start_line": 53, "executed_branches": [], "missing_branches": []}, "deprecated_parameter.decorator": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 2, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [104, 125], "excluded_lines": [], "start_line": 102, "executed_branches": [], "missing_branches": []}, "deprecated_parameter.decorator.wrapper": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 8, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 8, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 4, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [105, 106, 107, 108, 110, 112, 121, 123], "excluded_lines": [], "start_line": 104, "executed_branches": [], "missing_branches": [[105, 106], [105, 123], [106, 107], [106, 110]]}, "classproperty.__init__": {"executed_lines": [150], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 145, "executed_branches": [], "missing_branches": []}, "classproperty.__get__": {"executed_lines": [164, 166], "summary": {"covered_lines": 2, "num_statements": 3, "percent_covered": 60.0, "percent_covered_display": "60", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 66.66666666666667, "percent_statements_covered_display": "67", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [165], "excluded_lines": [], "start_line": 152, "executed_branches": [[164, 166]], "missing_branches": [[164, 165]]}, "get_instance_variables": {"executed_lines": [191, 192, 194, 200, 201, 206, 208], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 169, "executed_branches": [[191, 192], [191, 194], [200, 201], [200, 208]], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 5, 6, 7, 8, 11, 18, 21, 35, 37, 40, 43, 53, 130, 133, 145, 152, 169], "summary": {"covered_lines": 20, "num_statements": 21, "percent_covered": 91.30434782608695, "percent_covered_display": "91", "missing_lines": 1, "excluded_lines": 1, "percent_statements_covered": 95.23809523809524, "percent_statements_covered_display": "95", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [38], "excluded_lines": [134], "start_line": 1, "executed_branches": [[37, 40]], "missing_branches": [[37, 38]]}}, "classes": {"SupervisionWarnings": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 11, "executed_branches": [], "missing_branches": []}, "classproperty": {"executed_lines": [150, 164, 166], "summary": {"covered_lines": 3, "num_statements": 4, "percent_covered": 66.66666666666667, "percent_covered_display": "67", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 75.0, "percent_statements_covered_display": "75", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [165], "excluded_lines": [], "start_line": 133, "executed_branches": [[164, 166]], "missing_branches": [[164, 165]]}, "": {"executed_lines": [1, 3, 4, 5, 6, 7, 8, 11, 18, 21, 32, 35, 37, 40, 43, 50, 53, 130, 133, 145, 152, 169, 191, 192, 194, 200, 201, 206, 208], "summary": {"covered_lines": 29, "num_statements": 43, "percent_covered": 64.15094339622641, "percent_covered_display": "64", "missing_lines": 14, "excluded_lines": 1, "percent_statements_covered": 67.44186046511628, "percent_statements_covered_display": "67", "num_branches": 10, "num_partial_branches": 1, "covered_branches": 5, "missing_branches": 5, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [38, 102, 103, 104, 105, 106, 107, 108, 110, 112, 121, 123, 125, 127], "excluded_lines": [134], "start_line": 1, "executed_branches": [[37, 40], [191, 192], [191, 194], [200, 201], [200, 208]], "missing_branches": [[37, 38], [105, 106], [105, 123], [106, 107], [106, 110]]}}}, "src\\supervision\\utils\\iterables.py": {"executed_lines": [1, 2, 4, 7, 34, 35, 36, 37, 38, 39, 40, 41, 42, 45, 71, 72, 73, 76, 96, 97, 98, 99, 100, 102, 103], "summary": {"covered_lines": 25, "num_statements": 25, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 10, "num_partial_branches": 0, "covered_branches": 10, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [[36, 37], [36, 41], [37, 38], [37, 40], [41, -7], [41, 42], [98, 99], [98, 103], [99, 100], [99, 102]], "missing_branches": [], "functions": {"create_batches": {"executed_lines": [34, 35, 36, 37, 38, 39, 40, 41, 42], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 6, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 7, "executed_branches": [[36, 37], [36, 41], [37, 38], [37, 40], [41, -7], [41, 42]], "missing_branches": []}, "fill": {"executed_lines": [71, 72, 73], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 45, "executed_branches": [], "missing_branches": []}, "find_duplicates": {"executed_lines": [96, 97, 98, 99, 100, 102, 103], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 76, "executed_branches": [[98, 99], [98, 103], [99, 100], [99, 102]], "missing_branches": []}, "": {"executed_lines": [1, 2, 4, 7, 45, 76], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 2, 4, 7, 34, 35, 36, 37, 38, 39, 40, 41, 42, 45, 71, 72, 73, 76, 96, 97, 98, 99, 100, 102, 103], "summary": {"covered_lines": 25, "num_statements": 25, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 10, "num_partial_branches": 0, "covered_branches": 10, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [[36, 37], [36, 41], [37, 38], [37, 40], [41, -7], [41, 42], [98, 99], [98, 103], [99, 100], [99, 102]], "missing_branches": []}}}, "src\\supervision\\utils\\logger.py": {"executed_lines": [1, 3, 4, 5, 8, 38, 39, 41, 42, 44, 45, 50, 51, 52, 53, 55, 56, 57, 59, 60, 61, 63], "summary": {"covered_lines": 22, "num_statements": 22, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [[38, 39], [38, 41], [44, 45], [44, 63]], "missing_branches": [], "functions": {"_get_logger": {"executed_lines": [38, 39, 41, 42, 44, 45, 50, 51, 52, 53, 55, 56, 57, 59, 60, 61, 63], "summary": {"covered_lines": 17, "num_statements": 17, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 8, "executed_branches": [[38, 39], [38, 41], [44, 45], [44, 63]], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 5, 8], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 3, 4, 5, 8, 38, 39, 41, 42, 44, 45, 50, 51, 52, 53, 55, 56, 57, 59, 60, 61, 63], "summary": {"covered_lines": 22, "num_statements": 22, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [[38, 39], [38, 41], [44, 45], [44, 63]], "missing_branches": []}}}, "src\\supervision\\utils\\notebook.py": {"executed_lines": [1, 3, 4, 5, 7, 8, 11, 50], "summary": {"covered_lines": 8, "num_statements": 32, "percent_covered": 16.0, "percent_covered_display": "16", "missing_lines": 24, "excluded_lines": 2, "percent_statements_covered": 25.0, "percent_statements_covered_display": "25", "num_branches": 18, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 18, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [36, 37, 39, 41, 42, 44, 46, 47, 92, 94, 95, 96, 98, 99, 104, 106, 107, 108, 109, 111, 113, 114, 116, 117], "excluded_lines": [14, 57], "executed_branches": [], "missing_branches": [[36, 37], [36, 39], [41, 42], [41, 44], [94, 95], [94, 98], [95, 94], [95, 96], [98, 99], [98, 104], [106, 107], [106, 117], [107, 108], [107, 116], [108, 109], [108, 111], [113, 114], [113, 116]], "functions": {"plot_image": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 8, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 8, "excluded_lines": 1, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 4, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [36, 37, 39, 41, 42, 44, 46, 47], "excluded_lines": [14], "start_line": 11, "executed_branches": [], "missing_branches": [[36, 37], [36, 39], [41, 42], [41, 44]]}, "plot_images_grid": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 16, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 16, "excluded_lines": 1, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 14, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 14, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [92, 94, 95, 96, 98, 99, 104, 106, 107, 108, 109, 111, 113, 114, 116, 117], "excluded_lines": [57], "start_line": 50, "executed_branches": [], "missing_branches": [[94, 95], [94, 98], [95, 94], [95, 96], [98, 99], [98, 104], [106, 107], [106, 117], [107, 108], [107, 116], [108, 109], [108, 111], [113, 114], [113, 116]]}, "": {"executed_lines": [1, 3, 4, 5, 7, 8, 11, 50], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 3, 4, 5, 7, 8, 11, 50], "summary": {"covered_lines": 8, "num_statements": 32, "percent_covered": 16.0, "percent_covered_display": "16", "missing_lines": 24, "excluded_lines": 2, "percent_statements_covered": 25.0, "percent_statements_covered_display": "25", "num_branches": 18, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 18, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [36, 37, 39, 41, 42, 44, 46, 47, 92, 94, 95, 96, 98, 99, 104, 106, 107, 108, 109, 111, 113, 114, 116, 117], "excluded_lines": [14, 57], "start_line": 1, "executed_branches": [], "missing_branches": [[36, 37], [36, 39], [41, 42], [41, 44], [94, 95], [94, 98], [95, 94], [95, 96], [98, 99], [98, 104], [106, 107], [106, 117], [107, 108], [107, 116], [108, 109], [108, 111], [113, 114], [113, 116]]}}}, "src\\supervision\\utils\\video.py": {"executed_lines": [1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 15, 16, 17, 18, 20, 22, 25, 26, 53, 54, 55, 56, 58, 59, 60, 61, 64, 65, 66, 67, 68, 69, 71, 72, 73, 76, 99, 100, 101, 102, 103, 105, 106, 107, 111, 117, 119, 127, 128, 130, 136, 137, 140, 147, 148, 149, 153, 155, 156, 157, 161, 162, 188, 189, 190, 196, 197, 198, 199, 203, 204, 207, 210, 211, 213, 214, 216, 217, 219, 225, 226, 228, 231, 265, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 279, 280, 283, 284, 297, 298, 299, 300, 301, 302, 303, 304, 305, 307, 310, 314, 315, 316, 317, 318, 320, 321, 325, 326, 327, 329, 330, 331, 332, 333, 334, 336, 337, 338, 341, 342, 343, 344, 345, 346, 351, 352, 353, 354, 355, 357, 358, 364, 366, 367, 368, 369, 371, 372, 373, 375, 376, 382, 383, 384, 386, 387, 388, 389, 390, 392, 393, 394, 395, 396, 397, 398, 399, 401, 402, 403, 405, 406, 407, 413, 414, 415, 416, 418, 420, 421, 424, 496, 507, 510, 515, 537, 538, 550, 556], "summary": {"covered_lines": 191, "num_statements": 217, "percent_covered": 83.76383763837639, "percent_covered_display": "84", "missing_lines": 26, "excluded_lines": 1, "percent_statements_covered": 88.0184331797235, "percent_statements_covered_display": "88", "num_branches": 54, "num_partial_branches": 10, "covered_branches": 36, "missing_branches": 18, "percent_branches_covered": 66.66666666666667, "percent_branches_covered_display": "67"}, "missing_lines": [62, 108, 109, 110, 212, 215, 220, 221, 222, 223, 224, 278, 339, 340, 347, 348, 349, 350, 359, 535, 545, 546, 547, 548, 554, 560], "excluded_lines": [238], "executed_branches": [[61, 64], [127, 128], [136, 137], [148, 149], [148, 155], [188, 189], [188, 197], [203, 204], [211, 213], [214, 216], [219, 225], [225, 226], [225, 228], [271, 272], [271, 273], [273, 274], [275, 276], [275, 279], [277, 275], [325, 326], [325, 327], [332, 333], [332, 334], [341, 342], [341, 351], [345, 342], [345, 346], [354, -336], [354, 355], [358, 364], [367, 368], [367, 369], [388, 389], [388, 392], [420, -401], [420, 421]], "missing_branches": [[61, 62], [127, -119], [136, -130], [203, -140], [211, 212], [214, 215], [219, 220], [220, 221], [220, 228], [222, 223], [222, 224], [273, 275], [277, 278], [348, 349], [348, 350], [358, 359], [545, 546], [545, 547]], "functions": {"VideoInfo.from_video_path": {"executed_lines": [60, 61, 64, 65, 66, 67, 68, 69], "summary": {"covered_lines": 8, "num_statements": 9, "percent_covered": 81.81818181818181, "percent_covered_display": "82", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 88.88888888888889, "percent_statements_covered_display": "89", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [62], "excluded_lines": [], "start_line": 59, "executed_branches": [[61, 64]], "missing_branches": [[61, 62]]}, "VideoInfo.resolution_wh": {"executed_lines": [73], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 72, "executed_branches": [], "missing_branches": []}, "VideoSink.__init__": {"executed_lines": [100, 101, 102, 103], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 99, "executed_branches": [], "missing_branches": []}, "VideoSink.__enter__": {"executed_lines": [106, 107, 111, 117], "summary": {"covered_lines": 4, "num_statements": 7, "percent_covered": 57.142857142857146, "percent_covered_display": "57", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 57.142857142857146, "percent_statements_covered_display": "57", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [108, 109, 110], "excluded_lines": [], "start_line": 105, "executed_branches": [], "missing_branches": []}, "VideoSink.write_frame": {"executed_lines": [127, 128], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 75.0, "percent_covered_display": "75", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [], "excluded_lines": [], "start_line": 119, "executed_branches": [[127, 128]], "missing_branches": [[127, -119]]}, "VideoSink.__exit__": {"executed_lines": [136, 137], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 75.0, "percent_covered_display": "75", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [], "excluded_lines": [], "start_line": 130, "executed_branches": [[136, 137]], "missing_branches": [[136, -130]]}, "_mux_audio": {"executed_lines": [147, 148, 149, 153, 155, 156, 157, 161, 162, 188, 189, 190, 196, 197, 198, 199, 203, 204], "summary": {"covered_lines": 18, "num_statements": 18, "percent_covered": 95.83333333333333, "percent_covered_display": "96", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 1, "covered_branches": 5, "missing_branches": 1, "percent_branches_covered": 83.33333333333333, "percent_branches_covered_display": "83"}, "missing_lines": [], "excluded_lines": [], "start_line": 140, "executed_branches": [[148, 149], [148, 155], [188, 189], [188, 197], [203, 204]], "missing_branches": [[203, -140]]}, "_validate_and_setup_video": {"executed_lines": [210, 211, 213, 214, 216, 217, 219, 225, 226, 228], "summary": {"covered_lines": 10, "num_statements": 17, "percent_covered": 51.724137931034484, "percent_covered_display": "52", "missing_lines": 7, "excluded_lines": 0, "percent_statements_covered": 58.8235294117647, "percent_statements_covered_display": "59", "num_branches": 12, "num_partial_branches": 3, "covered_branches": 5, "missing_branches": 7, "percent_branches_covered": 41.666666666666664, "percent_branches_covered_display": "42"}, "missing_lines": [212, 215, 220, 221, 222, 223, 224], "excluded_lines": [], "start_line": 207, "executed_branches": [[211, 213], [214, 216], [219, 225], [225, 226], [225, 228]], "missing_branches": [[211, 212], [214, 215], [219, 220], [220, 221], [220, 228], [222, 223], [222, 224]]}, "get_video_frames_generator": {"executed_lines": [265, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 279, 280], "summary": {"covered_lines": 13, "num_statements": 14, "percent_covered": 86.36363636363636, "percent_covered_display": "86", "missing_lines": 1, "excluded_lines": 1, "percent_statements_covered": 92.85714285714286, "percent_statements_covered_display": "93", "num_branches": 8, "num_partial_branches": 2, "covered_branches": 6, "missing_branches": 2, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [278], "excluded_lines": [238], "start_line": 231, "executed_branches": [[271, 272], [271, 273], [273, 274], [275, 276], [275, 279], [277, 275]], "missing_branches": [[273, 275], [277, 278]]}, "_VideoProcessor.__init__": {"executed_lines": [297, 298, 299, 300, 301, 302, 303, 304, 305, 307, 310, 314, 315, 316, 317, 318], "summary": {"covered_lines": 16, "num_statements": 16, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 284, "executed_branches": [], "missing_branches": []}, "_VideoProcessor._reader_thread": {"executed_lines": [321, 325, 326, 327], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 320, "executed_branches": [[325, 326], [325, 327]], "missing_branches": []}, "_VideoProcessor._writer_thread": {"executed_lines": [330, 331, 332, 333, 334], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 329, "executed_branches": [[332, 333], [332, 334]], "missing_branches": []}, "_VideoProcessor._drain_and_cleanup": {"executed_lines": [337, 338, 341, 342, 343, 344, 345, 346, 351, 352, 353, 354, 355], "summary": {"covered_lines": 13, "num_statements": 19, "percent_covered": 70.37037037037037, "percent_covered_display": "70", "missing_lines": 6, "excluded_lines": 0, "percent_statements_covered": 68.42105263157895, "percent_statements_covered_display": "68", "num_branches": 8, "num_partial_branches": 0, "covered_branches": 6, "missing_branches": 2, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [339, 340, 347, 348, 349, 350], "excluded_lines": [], "start_line": 336, "executed_branches": [[341, 342], [341, 351], [345, 342], [345, 346], [354, -336], [354, 355]], "missing_branches": [[348, 349], [348, 350]]}, "_VideoProcessor._mux_audio_if_needed": {"executed_lines": [358, 364], "summary": {"covered_lines": 2, "num_statements": 3, "percent_covered": 60.0, "percent_covered_display": "60", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 66.66666666666667, "percent_statements_covered_display": "67", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [359], "excluded_lines": [], "start_line": 357, "executed_branches": [[358, 364]], "missing_branches": [[358, 359]]}, "_VideoProcessor._total_frames": {"executed_lines": [367, 368, 369], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 366, "executed_branches": [[367, 368], [367, 369]], "missing_branches": []}, "_VideoProcessor._start_workers": {"executed_lines": [372, 373], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 371, "executed_branches": [], "missing_branches": []}, "_VideoProcessor._setup_progress_bar": {"executed_lines": [376], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 375, "executed_branches": [], "missing_branches": []}, "_VideoProcessor._process_frames": {"executed_lines": [383, 384, 386, 387, 388, 389, 390, 392, 393, 394, 395, 396, 397, 398, 399], "summary": {"covered_lines": 15, "num_statements": 15, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 382, "executed_branches": [[388, 389], [388, 392]], "missing_branches": []}, "_VideoProcessor.run": {"executed_lines": [402, 403, 405, 406, 407, 413, 414, 415, 416, 418, 420, 421], "summary": {"covered_lines": 12, "num_statements": 12, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 401, "executed_branches": [[420, -401], [420, 421]], "missing_branches": []}, "process_video": {"executed_lines": [496, 507], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 424, "executed_branches": [], "missing_branches": []}, "FPSMonitor.__init__": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [535], "excluded_lines": [], "start_line": 515, "executed_branches": [], "missing_branches": []}, "FPSMonitor.fps": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 4, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 4, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 2, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [545, 546, 547, 548], "excluded_lines": [], "start_line": 538, "executed_branches": [], "missing_branches": [[545, 546], [545, 547]]}, "FPSMonitor.tick": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [554], "excluded_lines": [], "start_line": 550, "executed_branches": [], "missing_branches": []}, "FPSMonitor.reset": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [560], "excluded_lines": [], "start_line": 556, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 15, 16, 17, 18, 20, 22, 25, 26, 53, 54, 55, 56, 58, 59, 71, 72, 76, 99, 105, 119, 130, 140, 207, 231, 283, 284, 320, 329, 336, 357, 366, 371, 375, 382, 401, 424, 510, 515, 537, 538, 550, 556], "summary": {"covered_lines": 54, "num_statements": 54, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"VideoInfo": {"executed_lines": [60, 61, 64, 65, 66, 67, 68, 69, 73], "summary": {"covered_lines": 9, "num_statements": 10, "percent_covered": 83.33333333333333, "percent_covered_display": "83", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 90.0, "percent_statements_covered_display": "90", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [62], "excluded_lines": [], "start_line": 26, "executed_branches": [[61, 64]], "missing_branches": [[61, 62]]}, "VideoSink": {"executed_lines": [100, 101, 102, 103, 106, 107, 111, 117, 127, 128, 136, 137], "summary": {"covered_lines": 12, "num_statements": 15, "percent_covered": 73.6842105263158, "percent_covered_display": "74", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 80.0, "percent_statements_covered_display": "80", "num_branches": 4, "num_partial_branches": 2, "covered_branches": 2, "missing_branches": 2, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [108, 109, 110], "excluded_lines": [], "start_line": 76, "executed_branches": [[127, 128], [136, 137]], "missing_branches": [[127, -119], [136, -130]]}, "_VideoProcessor": {"executed_lines": [297, 298, 299, 300, 301, 302, 303, 304, 305, 307, 310, 314, 315, 316, 317, 318, 321, 325, 326, 327, 330, 331, 332, 333, 334, 337, 338, 341, 342, 343, 344, 345, 346, 351, 352, 353, 354, 355, 358, 364, 367, 368, 369, 372, 373, 376, 383, 384, 386, 387, 388, 389, 390, 392, 393, 394, 395, 396, 397, 398, 399, 402, 403, 405, 406, 407, 413, 414, 415, 416, 418, 420, 421], "summary": {"covered_lines": 73, "num_statements": 80, "percent_covered": 90.0, "percent_covered_display": "90", "missing_lines": 7, "excluded_lines": 0, "percent_statements_covered": 91.25, "percent_statements_covered_display": "91", "num_branches": 20, "num_partial_branches": 1, "covered_branches": 17, "missing_branches": 3, "percent_branches_covered": 85.0, "percent_branches_covered_display": "85"}, "missing_lines": [339, 340, 347, 348, 349, 350, 359], "excluded_lines": [], "start_line": 283, "executed_branches": [[325, 326], [325, 327], [332, 333], [332, 334], [341, 342], [341, 351], [345, 342], [345, 346], [354, -336], [354, 355], [358, 364], [367, 368], [367, 369], [388, 389], [388, 392], [420, -401], [420, 421]], "missing_branches": [[348, 349], [348, 350], [358, 359]]}, "FPSMonitor": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 7, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 7, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 2, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [535, 545, 546, 547, 548, 554, 560], "excluded_lines": [], "start_line": 510, "executed_branches": [], "missing_branches": [[545, 546], [545, 547]]}, "": {"executed_lines": [1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 15, 16, 17, 18, 20, 22, 25, 26, 53, 54, 55, 56, 58, 59, 71, 72, 76, 99, 105, 119, 130, 140, 147, 148, 149, 153, 155, 156, 157, 161, 162, 188, 189, 190, 196, 197, 198, 199, 203, 204, 207, 210, 211, 213, 214, 216, 217, 219, 225, 226, 228, 231, 265, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 279, 280, 283, 284, 320, 329, 336, 357, 366, 371, 375, 382, 401, 424, 496, 507, 510, 515, 537, 538, 550, 556], "summary": {"covered_lines": 97, "num_statements": 105, "percent_covered": 86.25954198473282, "percent_covered_display": "86", "missing_lines": 8, "excluded_lines": 1, "percent_statements_covered": 92.38095238095238, "percent_statements_covered_display": "92", "num_branches": 26, "num_partial_branches": 6, "covered_branches": 16, "missing_branches": 10, "percent_branches_covered": 61.53846153846154, "percent_branches_covered_display": "62"}, "missing_lines": [212, 215, 220, 221, 222, 223, 224, 278], "excluded_lines": [238], "start_line": 1, "executed_branches": [[148, 149], [148, 155], [188, 189], [188, 197], [203, 204], [211, 213], [214, 216], [219, 225], [225, 226], [225, 228], [271, 272], [271, 273], [273, 274], [275, 276], [275, 279], [277, 275]], "missing_branches": [[203, -140], [211, 212], [214, 215], [219, 220], [220, 221], [220, 228], [222, 223], [222, 224], [273, 275], [277, 278]]}}}, "src\\supervision\\validators\\__init__.py": {"executed_lines": [1, 3, 4, 6, 7, 10, 18, 19, 20, 21, 22, 28, 33, 37, 38, 39, 43, 44, 45, 46, 48, 49, 50, 52, 55, 60, 61, 75, 80, 84, 85, 86, 87, 90, 97, 102, 106, 108, 109, 110, 113, 120, 125, 129, 131, 133, 134, 139, 144, 151, 156, 160, 165, 169, 170, 171, 172, 175, 182, 187, 191, 192, 193, 194, 196, 197, 199, 207, 212, 216, 217, 218, 220, 227, 232, 236, 241, 242, 243, 244, 249, 253, 259, 267, 268, 269, 270, 271, 272, 273, 276, 281, 292, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 312, 317, 323, 328, 334, 335, 342, 343, 350, 351, 354, 357, 362], "summary": {"covered_lines": 116, "num_statements": 146, "percent_covered": 76.47058823529412, "percent_covered_display": "76", "missing_lines": 30, "excluded_lines": 0, "percent_statements_covered": 79.45205479452055, "percent_statements_covered_display": "79", "num_branches": 58, "num_partial_branches": 18, "covered_branches": 40, "missing_branches": 18, "percent_branches_covered": 68.96551724137932, "percent_branches_covered_display": "69"}, "missing_lines": [34, 56, 81, 91, 103, 114, 126, 135, 140, 145, 157, 166, 176, 188, 195, 198, 200, 204, 213, 221, 233, 245, 250, 254, 289, 320, 331, 336, 344, 363], "excluded_lines": [], "executed_branches": [[21, -10], [21, 22], [38, 39], [38, 43], [43, 44], [43, 48], [44, 45], [44, 46], [55, 60], [60, -37], [60, 61], [90, -84], [113, -106], [133, -129], [133, 134], [134, 139], [139, 144], [144, -129], [175, -169], [192, -191], [192, 193], [193, 194], [193, 196], [194, 192], [196, 197], [197, 199], [199, 192], [220, -216], [241, 242], [241, 243], [244, 249], [249, 253], [253, -236], [305, 306], [305, 307], [308, 309], [335, 342], [343, 350], [350, 351], [350, 354]], "missing_branches": [[55, 56], [90, 91], [113, 114], [134, 135], [139, 140], [144, 145], [175, 176], [194, 195], [196, 204], [197, 198], [199, 200], [220, 221], [244, 245], [249, 250], [253, 254], [308, -292], [335, 336], [343, 344]], "functions": {"_validate_xyxy": {"executed_lines": [18, 19, 20, 21, 22], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 10, "executed_branches": [[21, -10], [21, 22]], "missing_branches": []}, "validate_xyxy": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [34], "excluded_lines": [], "start_line": 33, "executed_branches": [], "missing_branches": []}, "_validate_mask": {"executed_lines": [38, 39, 43, 44, 45, 46, 48, 49, 50, 52, 55, 60, 61], "summary": {"covered_lines": 13, "num_statements": 14, "percent_covered": 91.66666666666667, "percent_covered_display": "92", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 92.85714285714286, "percent_statements_covered_display": "93", "num_branches": 10, "num_partial_branches": 1, "covered_branches": 9, "missing_branches": 1, "percent_branches_covered": 90.0, "percent_branches_covered_display": "90"}, "missing_lines": [56], "excluded_lines": [], "start_line": 37, "executed_branches": [[38, 39], [38, 43], [43, 44], [43, 48], [44, 45], [44, 46], [55, 60], [60, -37], [60, 61]], "missing_branches": [[55, 56]]}, "validate_mask": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [81], "excluded_lines": [], "start_line": 80, "executed_branches": [], "missing_branches": []}, "_validate_class_id": {"executed_lines": [85, 86, 87, 90], "summary": {"covered_lines": 4, "num_statements": 5, "percent_covered": 71.42857142857143, "percent_covered_display": "71", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 80.0, "percent_statements_covered_display": "80", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [91], "excluded_lines": [], "start_line": 84, "executed_branches": [[90, -84]], "missing_branches": [[90, 91]]}, "validate_class_id": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [103], "excluded_lines": [], "start_line": 102, "executed_branches": [], "missing_branches": []}, "_validate_confidence": {"executed_lines": [108, 109, 110, 113], "summary": {"covered_lines": 4, "num_statements": 5, "percent_covered": 71.42857142857143, "percent_covered_display": "71", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 80.0, "percent_statements_covered_display": "80", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [114], "excluded_lines": [], "start_line": 106, "executed_branches": [[113, -106]], "missing_branches": [[113, 114]]}, "validate_confidence": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [126], "excluded_lines": [], "start_line": 125, "executed_branches": [], "missing_branches": []}, "_validate_keypoint_confidence": {"executed_lines": [131, 133, 134, 139, 144], "summary": {"covered_lines": 5, "num_statements": 8, "percent_covered": 62.5, "percent_covered_display": "62", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 62.5, "percent_statements_covered_display": "62", "num_branches": 8, "num_partial_branches": 3, "covered_branches": 5, "missing_branches": 3, "percent_branches_covered": 62.5, "percent_branches_covered_display": "62"}, "missing_lines": [135, 140, 145], "excluded_lines": [], "start_line": 129, "executed_branches": [[133, -129], [133, 134], [134, 139], [139, 144], [144, -129]], "missing_branches": [[134, 135], [139, 140], [144, 145]]}, "validate_key_point_confidence": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [157], "excluded_lines": [], "start_line": 156, "executed_branches": [], "missing_branches": []}, "validate_keypoint_confidence": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [166], "excluded_lines": [], "start_line": 165, "executed_branches": [], "missing_branches": []}, "_validate_tracker_id": {"executed_lines": [170, 171, 172, 175], "summary": {"covered_lines": 4, "num_statements": 5, "percent_covered": 71.42857142857143, "percent_covered_display": "71", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 80.0, "percent_statements_covered_display": "80", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [176], "excluded_lines": [], "start_line": 169, "executed_branches": [[175, -169]], "missing_branches": [[175, 176]]}, "validate_tracker_id": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [188], "excluded_lines": [], "start_line": 187, "executed_branches": [], "missing_branches": []}, "_validate_data": {"executed_lines": [192, 193, 194, 196, 197, 199], "summary": {"covered_lines": 6, "num_statements": 10, "percent_covered": 63.63636363636363, "percent_covered_display": "64", "missing_lines": 4, "excluded_lines": 0, "percent_statements_covered": 60.0, "percent_statements_covered_display": "60", "num_branches": 12, "num_partial_branches": 4, "covered_branches": 8, "missing_branches": 4, "percent_branches_covered": 66.66666666666667, "percent_branches_covered_display": "67"}, "missing_lines": [195, 198, 200, 204], "excluded_lines": [], "start_line": 191, "executed_branches": [[192, -191], [192, 193], [193, 194], [193, 196], [194, 192], [196, 197], [197, 199], [199, 192]], "missing_branches": [[194, 195], [196, 204], [197, 198], [199, 200]]}, "validate_data": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [213], "excluded_lines": [], "start_line": 212, "executed_branches": [], "missing_branches": []}, "_validate_xy": {"executed_lines": [217, 218, 220], "summary": {"covered_lines": 3, "num_statements": 4, "percent_covered": 66.66666666666667, "percent_covered_display": "67", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 75.0, "percent_statements_covered_display": "75", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [221], "excluded_lines": [], "start_line": 216, "executed_branches": [[220, -216]], "missing_branches": [[220, 221]]}, "validate_xy": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [233], "excluded_lines": [], "start_line": 232, "executed_branches": [], "missing_branches": []}, "_validate_visible": {"executed_lines": [241, 242, 243, 244, 249, 253], "summary": {"covered_lines": 6, "num_statements": 9, "percent_covered": 64.70588235294117, "percent_covered_display": "65", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 66.66666666666667, "percent_statements_covered_display": "67", "num_branches": 8, "num_partial_branches": 3, "covered_branches": 5, "missing_branches": 3, "percent_branches_covered": 62.5, "percent_branches_covered_display": "62"}, "missing_lines": [245, 250, 254], "excluded_lines": [], "start_line": 236, "executed_branches": [[241, 242], [241, 243], [244, 249], [249, 253], [253, -236]], "missing_branches": [[244, 245], [249, 250], [253, 254]]}, "_validate_detections_fields": {"executed_lines": [267, 268, 269, 270, 271, 272, 273], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 259, "executed_branches": [], "missing_branches": []}, "validate_detections_fields": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [289], "excluded_lines": [], "start_line": 281, "executed_branches": [], "missing_branches": []}, "_validate_keypoints_fields": {"executed_lines": [300, 301, 302, 303, 304, 305, 306, 307, 308, 309], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 92.85714285714286, "percent_covered_display": "93", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [], "excluded_lines": [], "start_line": 292, "executed_branches": [[305, 306], [305, 307], [308, 309]], "missing_branches": [[308, -292]]}, "validate_key_points_fields": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [320], "excluded_lines": [], "start_line": 317, "executed_branches": [], "missing_branches": []}, "validate_keypoints_fields": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [331], "excluded_lines": [], "start_line": 328, "executed_branches": [], "missing_branches": []}, "_validate_resolution": {"executed_lines": [335, 342, 343, 350, 351, 354], "summary": {"covered_lines": 6, "num_statements": 8, "percent_covered": 71.42857142857143, "percent_covered_display": "71", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 75.0, "percent_statements_covered_display": "75", "num_branches": 6, "num_partial_branches": 2, "covered_branches": 4, "missing_branches": 2, "percent_branches_covered": 66.66666666666667, "percent_branches_covered_display": "67"}, "missing_lines": [336, 344], "excluded_lines": [], "start_line": 334, "executed_branches": [[335, 342], [343, 350], [350, 351], [350, 354]], "missing_branches": [[335, 336], [343, 344]]}, "validate_resolution": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [363], "excluded_lines": [], "start_line": 362, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 6, 7, 10, 28, 33, 37, 75, 80, 84, 97, 102, 106, 120, 125, 129, 151, 156, 160, 165, 169, 182, 187, 191, 207, 212, 216, 227, 232, 236, 259, 276, 281, 292, 312, 317, 323, 328, 334, 357, 362], "summary": {"covered_lines": 43, "num_statements": 43, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 3, 4, 6, 7, 10, 18, 19, 20, 21, 22, 28, 33, 37, 38, 39, 43, 44, 45, 46, 48, 49, 50, 52, 55, 60, 61, 75, 80, 84, 85, 86, 87, 90, 97, 102, 106, 108, 109, 110, 113, 120, 125, 129, 131, 133, 134, 139, 144, 151, 156, 160, 165, 169, 170, 171, 172, 175, 182, 187, 191, 192, 193, 194, 196, 197, 199, 207, 212, 216, 217, 218, 220, 227, 232, 236, 241, 242, 243, 244, 249, 253, 259, 267, 268, 269, 270, 271, 272, 273, 276, 281, 292, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 312, 317, 323, 328, 334, 335, 342, 343, 350, 351, 354, 357, 362], "summary": {"covered_lines": 116, "num_statements": 146, "percent_covered": 76.47058823529412, "percent_covered_display": "76", "missing_lines": 30, "excluded_lines": 0, "percent_statements_covered": 79.45205479452055, "percent_statements_covered_display": "79", "num_branches": 58, "num_partial_branches": 18, "covered_branches": 40, "missing_branches": 18, "percent_branches_covered": 68.96551724137932, "percent_branches_covered_display": "69"}, "missing_lines": [34, 56, 81, 91, 103, 114, 126, 135, 140, 145, 157, 166, 176, 188, 195, 198, 200, 204, 213, 221, 233, 245, 250, 254, 289, 320, 331, 336, 344, 363], "excluded_lines": [], "start_line": 1, "executed_branches": [[21, -10], [21, 22], [38, 39], [38, 43], [43, 44], [43, 48], [44, 45], [44, 46], [55, 60], [60, -37], [60, 61], [90, -84], [113, -106], [133, -129], [133, 134], [134, 139], [139, 144], [144, -129], [175, -169], [192, -191], [192, 193], [193, 194], [193, 196], [194, 192], [196, 197], [197, 199], [199, 192], [220, -216], [241, 242], [241, 243], [244, 249], [249, 253], [253, -236], [305, 306], [305, 307], [308, 309], [335, 342], [343, 350], [350, 351], [350, 354]], "missing_branches": [[55, 56], [90, 91], [113, 114], [134, 135], [139, 140], [144, 145], [175, 176], [194, 195], [196, 204], [197, 198], [199, 200], [220, 221], [244, 245], [249, 250], [253, 254], [308, -292], [335, 336], [343, 344]]}}}, "tests\\__init__.py": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\annotators\\__init__.py": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\annotators\\test_core.py": {"executed_lines": [5, 7, 8, 10, 35, 36, 37, 38, 39, 40, 43, 44, 46, 49, 50, 52, 53, 54, 57, 58, 60, 61, 62, 63, 64, 67, 104, 107, 108, 109, 110, 111, 114, 122, 129, 130, 131, 132, 134, 142, 143, 146, 147, 149, 157, 161, 164, 165, 167, 175, 182, 184, 188, 193, 196, 199, 201, 202, 203, 204, 206, 208, 209, 210, 211, 214, 217, 219, 220, 221, 222, 224, 226, 227, 228, 229, 231, 233, 236, 239, 240, 242, 244, 247, 250, 252, 255, 258, 261, 264, 267, 269, 270, 271, 272, 274, 276, 277, 278, 279, 281, 283, 286, 289, 290, 293, 296, 298, 299, 300, 301, 303, 305, 306, 309, 310, 313, 316, 318, 319, 320, 321, 323, 325, 326, 327, 328, 330, 332, 335, 341, 342, 344, 346, 349, 352, 354, 360, 363, 366, 368, 370, 371, 372, 375, 376, 379, 382, 384, 385, 386, 387, 389, 391, 392, 393, 394, 395, 398, 401, 404, 405, 407, 409, 410, 411, 412, 414, 415, 416, 420, 421, 422, 425, 429, 430, 432, 434, 441, 442, 443, 445, 447, 448, 449, 451, 452, 453, 456, 459, 463, 464, 465, 468, 471, 484, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 498, 499, 500, 504, 507, 511, 512, 514, 516, 517, 518, 521, 522, 523, 525, 526, 530, 531, 533, 536, 539, 543, 544, 545, 546, 547, 548, 550, 552, 553, 554, 555, 557, 561, 562, 563, 564, 565, 567, 571, 572, 573, 574, 575, 576, 579, 582, 584, 585, 586, 587, 589, 591, 592, 595, 596, 599, 602, 604, 605, 606, 607, 609, 611, 612, 618, 619, 622, 625, 627, 628, 629, 630, 632, 634, 635, 638, 639, 642, 645, 647, 648, 649, 650, 652, 654, 655, 661, 662, 665, 668, 670, 671, 672, 673, 675, 677, 678, 679, 682, 685, 688, 690, 691, 692, 693, 695, 697, 698, 699, 702, 705, 708, 710, 711, 712, 713, 715, 717, 718, 719, 720, 722, 723, 725, 726, 728, 730, 731, 732, 733, 736, 739, 741, 742, 743, 744, 746, 748, 749, 750, 751, 753, 760, 762, 763, 764, 765, 767, 773, 775, 776, 777, 778, 780, 785, 786, 787, 788, 789, 791, 792, 794, 795, 797, 799, 800, 801, 802, 805, 808, 810, 811, 812, 813, 815, 817, 818, 821, 822, 825, 828, 830, 831, 832, 833, 835, 837, 838, 841, 842, 845, 848, 850, 851, 852, 853, 855, 857, 860, 861, 862, 865, 868, 870, 871, 872, 873, 875, 877, 878, 879, 880, 883, 886, 888, 889, 890, 891, 893, 895, 896, 897, 898, 899, 901, 903, 904, 905, 907, 908, 909, 911, 912, 913, 916, 919, 922, 924, 925, 926, 927, 930, 932, 934, 935, 936, 937, 938, 941, 944, 947, 954, 959, 960, 961, 962, 963, 965, 972, 973, 974, 975, 976, 977, 984, 987, 990, 992, 997, 1005, 1006, 1007, 1008, 1009, 1010, 1015, 1016, 1018, 1026, 1027, 1028, 1029, 1030, 1031, 1032, 1033, 1038, 1041, 1044, 1046, 1052, 1057, 1058, 1059, 1061, 1066, 1071, 1072, 1073, 1074, 1075], "summary": {"covered_lines": 509, "num_statements": 509, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 22, "num_partial_branches": 0, "covered_branches": 22, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [[61, 62], [61, 64], [62, 61], [62, 63], [108, -67], [108, 109], [491, 492], [491, 495], [961, 962], [961, 963], [976, 977], [976, 990], [1007, 1008], [1007, 1016], [1008, 1007], [1008, 1009], [1030, 1031], [1030, 1044], [1031, 1030], [1031, 1032], [1073, 1074], [1073, 1075]], "missing_branches": [], "functions": {"test_image": {"executed_lines": [46], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 44, "executed_branches": [], "missing_branches": []}, "test_mask": {"executed_lines": [52, 53, 54], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 50, "executed_branches": [], "missing_branches": []}, "gradient_image": {"executed_lines": [60, 61, 62, 63, 64], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 58, "executed_branches": [[61, 62], [61, 64], [62, 61], [62, 63]], "missing_branches": []}, "test_hex_color_support_across_annotators": {"executed_lines": [107, 108, 109, 110, 111], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 104, "executed_branches": [[108, -67], [108, 109]], "missing_branches": []}, "TestBoxAnnotator.test_annotate_with_no_detections": {"executed_lines": [129, 130, 131, 132], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 122, "executed_branches": [], "missing_branches": []}, "TestBoxAnnotator.test_annotate_with_single_detection": {"executed_lines": [142, 143, 146, 147], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 134, "executed_branches": [], "missing_branches": []}, "TestBoxAnnotator.test_annotate_with_multiple_detections": {"executed_lines": [157, 161, 164, 165], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 149, "executed_branches": [], "missing_branches": []}, "TestBoxAnnotator.test_annotate_with_numpy_color_lookup": {"executed_lines": [175, 182, 184, 188, 193], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 167, "executed_branches": [], "missing_branches": []}, "TestOrientedBoxAnnotator.test_annotate_with_no_detections": {"executed_lines": [201, 202, 203, 204], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 199, "executed_branches": [], "missing_branches": []}, "TestOrientedBoxAnnotator.test_annotate_without_oriented_boxes": {"executed_lines": [208, 209, 210, 211], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 206, "executed_branches": [], "missing_branches": []}, "TestMaskAnnotator.test_annotate_with_no_detections": {"executed_lines": [219, 220, 221, 222], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 217, "executed_branches": [], "missing_branches": []}, "TestMaskAnnotator.test_annotate_without_masks": {"executed_lines": [226, 227, 228, 229], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 224, "executed_branches": [], "missing_branches": []}, "TestMaskAnnotator.test_annotate_with_single_mask": {"executed_lines": [233, 236, 239, 240], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 231, "executed_branches": [], "missing_branches": []}, "TestMaskAnnotator.test_annotate_uint8_mask_matches_bool_mask": {"executed_lines": [244, 247, 250, 252, 255, 258, 261], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 242, "executed_branches": [], "missing_branches": []}, "TestPolygonAnnotator.test_annotate_with_no_detections": {"executed_lines": [269, 270, 271, 272], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 267, "executed_branches": [], "missing_branches": []}, "TestPolygonAnnotator.test_annotate_without_masks": {"executed_lines": [276, 277, 278, 279], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 274, "executed_branches": [], "missing_branches": []}, "TestPolygonAnnotator.test_annotate_with_single_mask": {"executed_lines": [283, 286, 289, 290], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 281, "executed_branches": [], "missing_branches": []}, "TestColorAnnotator.test_annotate_with_no_detections": {"executed_lines": [298, 299, 300, 301], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 296, "executed_branches": [], "missing_branches": []}, "TestColorAnnotator.test_annotate_with_single_detection": {"executed_lines": [305, 306, 309, 310], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 303, "executed_branches": [], "missing_branches": []}, "TestHaloAnnotator.test_annotate_with_no_detections": {"executed_lines": [318, 319, 320, 321], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 316, "executed_branches": [], "missing_branches": []}, "TestHaloAnnotator.test_annotate_without_masks": {"executed_lines": [325, 326, 327, 328], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 323, "executed_branches": [], "missing_branches": []}, "TestHaloAnnotator.test_annotate_with_single_mask": {"executed_lines": [332, 335, 341, 342], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 330, "executed_branches": [], "missing_branches": []}, "TestHaloAnnotator.test_annotate_uint8_mask_matches_bool_mask": {"executed_lines": [346, 349, 352, 354, 360, 363, 366], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 344, "executed_branches": [], "missing_branches": []}, "TestHaloAnnotator.test_annotate_with_all_false_mask_preserves_scene": {"executed_lines": [370, 371, 372, 375, 376], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 368, "executed_branches": [], "missing_branches": []}, "TestPaintMasksByArea.test_paint_masks_by_area_is_noop_without_masks": {"executed_lines": [384, 385, 386, 387], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 382, "executed_branches": [], "missing_branches": []}, "TestPaintMasksByArea.test_union_accumulation_dense": {"executed_lines": [391, 392, 393, 394, 395, 398, 401, 404, 405], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 389, "executed_branches": [], "missing_branches": []}, "TestPaintMasksByArea.test_union_accumulation_compact": {"executed_lines": [409, 410, 411, 412, 414, 415, 416, 420, 421, 422, 425, 429, 430, 432], "summary": {"covered_lines": 14, "num_statements": 14, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 407, "executed_branches": [], "missing_branches": []}, "TestPaintMasksByArea.test_compact_mask_drops_pixels_outside_bbox": {"executed_lines": [441, 442, 443, 445, 447, 448, 449, 451, 452, 453, 456, 459, 463, 464, 465], "summary": {"covered_lines": 15, "num_statements": 15, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 434, "executed_branches": [], "missing_branches": []}, "TestCompactMaskParity.test_annotator_compact_mask_matches_dense_mask": {"executed_lines": [486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 498, 499, 500, 504, 507, 511, 512], "summary": {"covered_lines": 18, "num_statements": 18, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 484, "executed_branches": [[491, 492], [491, 495]], "missing_branches": []}, "TestCompactMaskParity.test_annotator_compact_mask_handles_edge_clipping": {"executed_lines": [516, 517, 518, 521, 522, 523, 525, 526, 530, 531, 533], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 514, "executed_branches": [], "missing_branches": []}, "TestHeatMapAnnotator.test_annotate_with_no_detections_does_not_warn": {"executed_lines": [543, 544, 545, 546, 547, 548], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 539, "executed_branches": [], "missing_branches": []}, "TestHeatMapAnnotator.test_annotate_with_single_detection": {"executed_lines": [552, 553, 554, 555], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 550, "executed_branches": [], "missing_branches": []}, "TestHeatMapAnnotator.test_annotate_state_preserved_after_empty_call": {"executed_lines": [561, 562, 563, 564, 565], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 557, "executed_branches": [], "missing_branches": []}, "TestHeatMapAnnotator.test_annotate_empty_after_real_does_not_warn": {"executed_lines": [571, 572, 573, 574, 575, 576], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 567, "executed_branches": [], "missing_branches": []}, "TestEllipseAnnotator.test_annotate_with_no_detections": {"executed_lines": [584, 585, 586, 587], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 582, "executed_branches": [], "missing_branches": []}, "TestEllipseAnnotator.test_annotate_with_single_detection": {"executed_lines": [591, 592, 595, 596], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 589, "executed_branches": [], "missing_branches": []}, "TestBoxCornerAnnotator.test_annotate_with_no_detections": {"executed_lines": [604, 605, 606, 607], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 602, "executed_branches": [], "missing_branches": []}, "TestBoxCornerAnnotator.test_annotate_with_single_detection": {"executed_lines": [611, 612, 618, 619], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 609, "executed_branches": [], "missing_branches": []}, "TestCircleAnnotator.test_annotate_with_no_detections": {"executed_lines": [627, 628, 629, 630], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 625, "executed_branches": [], "missing_branches": []}, "TestCircleAnnotator.test_annotate_with_single_detection": {"executed_lines": [634, 635, 638, 639], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 632, "executed_branches": [], "missing_branches": []}, "TestDotAnnotator.test_annotate_with_no_detections": {"executed_lines": [647, 648, 649, 650], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 645, "executed_branches": [], "missing_branches": []}, "TestDotAnnotator.test_annotate_with_single_detection": {"executed_lines": [654, 655, 661, 662], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 652, "executed_branches": [], "missing_branches": []}, "TestLabelAnnotator.test_annotate_with_no_detections": {"executed_lines": [670, 671, 672, 673], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 668, "executed_branches": [], "missing_branches": []}, "TestLabelAnnotator.test_annotate_with_single_detection": {"executed_lines": [677, 678, 679, 682], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 675, "executed_branches": [], "missing_branches": []}, "TestRichLabelAnnotator.test_annotate_with_no_detections": {"executed_lines": [690, 691, 692, 693], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 688, "executed_branches": [], "missing_branches": []}, "TestRichLabelAnnotator.test_annotate_with_single_detection": {"executed_lines": [697, 698, 699, 702], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 695, "executed_branches": [], "missing_branches": []}, "TestBlurAnnotator.test_annotate_with_no_detections": {"executed_lines": [710, 711, 712, 713], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 708, "executed_branches": [], "missing_branches": []}, "TestBlurAnnotator.test_annotate_with_single_detection": {"executed_lines": [717, 718, 719, 720], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 715, "executed_branches": [], "missing_branches": []}, "TestBlurAnnotator.test_invalid_kernel_size_raises": {"executed_lines": [725, 726], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 723, "executed_branches": [], "missing_branches": []}, "TestBlurAnnotator.test_annotate_zero_area_bbox_is_skipped": {"executed_lines": [730, 731, 732, 733], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 728, "executed_branches": [], "missing_branches": []}, "TestPixelateAnnotator.test_annotate_with_no_detections": {"executed_lines": [741, 742, 743, 744], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 739, "executed_branches": [], "missing_branches": []}, "TestPixelateAnnotator.test_annotate_with_single_detection": {"executed_lines": [748, 749, 750, 751], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 746, "executed_branches": [], "missing_branches": []}, "TestPixelateAnnotator.test_annotate_bbox_smaller_than_pixel_size_does_not_raise": {"executed_lines": [760, 762, 763, 764, 765], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 753, "executed_branches": [], "missing_branches": []}, "TestPixelateAnnotator.test_annotate_grayscale_image_does_not_raise": {"executed_lines": [773, 775, 776, 777, 778], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 767, "executed_branches": [], "missing_branches": []}, "TestPixelateAnnotator.test_annotate_grayscale_image_small_roi_does_not_raise": {"executed_lines": [785, 786, 787, 788, 789], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 780, "executed_branches": [], "missing_branches": []}, "TestPixelateAnnotator.test_invalid_pixel_size_raises": {"executed_lines": [794, 795], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 792, "executed_branches": [], "missing_branches": []}, "TestPixelateAnnotator.test_annotate_zero_area_bbox_is_skipped": {"executed_lines": [799, 800, 801, 802], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 797, "executed_branches": [], "missing_branches": []}, "TestTriangleAnnotator.test_annotate_with_no_detections": {"executed_lines": [810, 811, 812, 813], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 808, "executed_branches": [], "missing_branches": []}, "TestTriangleAnnotator.test_annotate_with_single_detection": {"executed_lines": [817, 818, 821, 822], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 815, "executed_branches": [], "missing_branches": []}, "TestRoundBoxAnnotator.test_annotate_with_no_detections": {"executed_lines": [830, 831, 832, 833], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 828, "executed_branches": [], "missing_branches": []}, "TestRoundBoxAnnotator.test_annotate_with_single_detection": {"executed_lines": [837, 838, 841, 842], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 835, "executed_branches": [], "missing_branches": []}, "TestPercentageBarAnnotator.test_annotate_with_no_detections": {"executed_lines": [850, 851, 852, 853], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 848, "executed_branches": [], "missing_branches": []}, "TestPercentageBarAnnotator.test_annotate_with_single_detection": {"executed_lines": [857, 860, 861, 862], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 855, "executed_branches": [], "missing_branches": []}, "TestCropAnnotator.test_annotate_with_no_detections": {"executed_lines": [870, 871, 872, 873], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 868, "executed_branches": [], "missing_branches": []}, "TestCropAnnotator.test_annotate_with_single_detection": {"executed_lines": [877, 878, 879, 880], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 875, "executed_branches": [], "missing_branches": []}, "TestBackgroundOverlayAnnotator.test_annotate_with_no_detections": {"executed_lines": [888, 889, 890, 891], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 886, "executed_branches": [], "missing_branches": []}, "TestBackgroundOverlayAnnotator.test_annotate_with_single_detection": {"executed_lines": [895, 896, 897, 898, 899], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 893, "executed_branches": [], "missing_branches": []}, "TestBackgroundOverlayAnnotator.test_annotate_uint8_mask_matches_bool_mask": {"executed_lines": [903, 904, 905, 907, 908, 909, 911, 912, 913, 916], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 901, "executed_branches": [], "missing_branches": []}, "TestComparisonAnnotator.test_annotate_with_no_detections": {"executed_lines": [924, 925, 926, 927, 930], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 922, "executed_branches": [], "missing_branches": []}, "TestComparisonAnnotator.test_annotate_with_single_detection_each": {"executed_lines": [934, 935, 936, 937, 938, 941], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 932, "executed_branches": [], "missing_branches": []}, "TestTraceAnnotatorSmoothStationary.test_stationary_tracker_does_not_crash_spline_fit": {"executed_lines": [954, 959, 960, 961, 962, 963], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 947, "executed_branches": [[961, 962], [961, 963]], "missing_branches": []}, "TestTraceAnnotatorSmoothStationary.test_smooth_trace_still_renders_for_moving_tracker": {"executed_lines": [972, 973, 974, 975, 976, 977, 984, 987, 990], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 965, "executed_branches": [[976, 977], [976, 990]], "missing_branches": []}, "TestTraceAnnotatorSmoothStationary.test_smooth_does_not_crash_for_unique_point_counts": {"executed_lines": [1005, 1006, 1007, 1008, 1009, 1010, 1015, 1016], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 997, "executed_branches": [[1007, 1008], [1007, 1016], [1008, 1007], [1008, 1009]], "missing_branches": []}, "TestTraceAnnotatorSmoothStationary.test_smooth_fallback_matches_raw_when_fewer_than_four_unique_points": {"executed_lines": [1026, 1027, 1028, 1029, 1030, 1031, 1032, 1033, 1038, 1041, 1044], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1018, "executed_branches": [[1030, 1031], [1030, 1044], [1031, 1030], [1031, 1032]], "missing_branches": []}, "TestTraceAnnotatorSmoothStationary.test_smooth_true_single_frame_does_not_crash": {"executed_lines": [1052, 1057, 1058, 1059], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1046, "executed_branches": [], "missing_branches": []}, "TestTraceAnnotatorSmoothStationary.test_smooth_false_stationary_tracker_does_not_crash": {"executed_lines": [1066, 1071, 1072, 1073, 1074, 1075], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1061, "executed_branches": [[1073, 1074], [1073, 1075]], "missing_branches": []}, "": {"executed_lines": [5, 7, 8, 10, 35, 36, 37, 38, 39, 40, 43, 44, 49, 50, 57, 58, 67, 104, 114, 122, 134, 149, 167, 196, 199, 206, 214, 217, 224, 231, 242, 264, 267, 274, 281, 293, 296, 303, 313, 316, 323, 330, 344, 368, 379, 382, 389, 407, 434, 468, 471, 484, 514, 536, 539, 550, 557, 567, 579, 582, 589, 599, 602, 609, 622, 625, 632, 642, 645, 652, 665, 668, 675, 685, 688, 695, 705, 708, 715, 722, 723, 728, 736, 739, 746, 753, 767, 780, 791, 792, 797, 805, 808, 815, 825, 828, 835, 845, 848, 855, 865, 868, 875, 883, 886, 893, 901, 919, 922, 932, 944, 947, 965, 992, 997, 1018, 1046, 1061], "summary": {"covered_lines": 118, "num_statements": 118, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"TestBoxAnnotator": {"executed_lines": [129, 130, 131, 132, 142, 143, 146, 147, 157, 161, 164, 165, 175, 182, 184, 188, 193], "summary": {"covered_lines": 17, "num_statements": 17, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 114, "executed_branches": [], "missing_branches": []}, "TestOrientedBoxAnnotator": {"executed_lines": [201, 202, 203, 204, 208, 209, 210, 211], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 196, "executed_branches": [], "missing_branches": []}, "TestMaskAnnotator": {"executed_lines": [219, 220, 221, 222, 226, 227, 228, 229, 233, 236, 239, 240, 244, 247, 250, 252, 255, 258, 261], "summary": {"covered_lines": 19, "num_statements": 19, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 214, "executed_branches": [], "missing_branches": []}, "TestPolygonAnnotator": {"executed_lines": [269, 270, 271, 272, 276, 277, 278, 279, 283, 286, 289, 290], "summary": {"covered_lines": 12, "num_statements": 12, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 264, "executed_branches": [], "missing_branches": []}, "TestColorAnnotator": {"executed_lines": [298, 299, 300, 301, 305, 306, 309, 310], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 293, "executed_branches": [], "missing_branches": []}, "TestHaloAnnotator": {"executed_lines": [318, 319, 320, 321, 325, 326, 327, 328, 332, 335, 341, 342, 346, 349, 352, 354, 360, 363, 366, 370, 371, 372, 375, 376], "summary": {"covered_lines": 24, "num_statements": 24, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 313, "executed_branches": [], "missing_branches": []}, "TestPaintMasksByArea": {"executed_lines": [384, 385, 386, 387, 391, 392, 393, 394, 395, 398, 401, 404, 405, 409, 410, 411, 412, 414, 415, 416, 420, 421, 422, 425, 429, 430, 432, 441, 442, 443, 445, 447, 448, 449, 451, 452, 453, 456, 459, 463, 464, 465], "summary": {"covered_lines": 42, "num_statements": 42, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 379, "executed_branches": [], "missing_branches": []}, "TestCompactMaskParity": {"executed_lines": [486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 498, 499, 500, 504, 507, 511, 512, 516, 517, 518, 521, 522, 523, 525, 526, 530, 531, 533], "summary": {"covered_lines": 29, "num_statements": 29, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 468, "executed_branches": [[491, 492], [491, 495]], "missing_branches": []}, "TestHeatMapAnnotator": {"executed_lines": [543, 544, 545, 546, 547, 548, 552, 553, 554, 555, 561, 562, 563, 564, 565, 571, 572, 573, 574, 575, 576], "summary": {"covered_lines": 21, "num_statements": 21, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 536, "executed_branches": [], "missing_branches": []}, "TestEllipseAnnotator": {"executed_lines": [584, 585, 586, 587, 591, 592, 595, 596], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 579, "executed_branches": [], "missing_branches": []}, "TestBoxCornerAnnotator": {"executed_lines": [604, 605, 606, 607, 611, 612, 618, 619], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 599, "executed_branches": [], "missing_branches": []}, "TestCircleAnnotator": {"executed_lines": [627, 628, 629, 630, 634, 635, 638, 639], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 622, "executed_branches": [], "missing_branches": []}, "TestDotAnnotator": {"executed_lines": [647, 648, 649, 650, 654, 655, 661, 662], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 642, "executed_branches": [], "missing_branches": []}, "TestLabelAnnotator": {"executed_lines": [670, 671, 672, 673, 677, 678, 679, 682], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 665, "executed_branches": [], "missing_branches": []}, "TestRichLabelAnnotator": {"executed_lines": [690, 691, 692, 693, 697, 698, 699, 702], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 685, "executed_branches": [], "missing_branches": []}, "TestBlurAnnotator": {"executed_lines": [710, 711, 712, 713, 717, 718, 719, 720, 725, 726, 730, 731, 732, 733], "summary": {"covered_lines": 14, "num_statements": 14, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 705, "executed_branches": [], "missing_branches": []}, "TestPixelateAnnotator": {"executed_lines": [741, 742, 743, 744, 748, 749, 750, 751, 760, 762, 763, 764, 765, 773, 775, 776, 777, 778, 785, 786, 787, 788, 789, 794, 795, 799, 800, 801, 802], "summary": {"covered_lines": 29, "num_statements": 29, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 736, "executed_branches": [], "missing_branches": []}, "TestTriangleAnnotator": {"executed_lines": [810, 811, 812, 813, 817, 818, 821, 822], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 805, "executed_branches": [], "missing_branches": []}, "TestRoundBoxAnnotator": {"executed_lines": [830, 831, 832, 833, 837, 838, 841, 842], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 825, "executed_branches": [], "missing_branches": []}, "TestPercentageBarAnnotator": {"executed_lines": [850, 851, 852, 853, 857, 860, 861, 862], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 845, "executed_branches": [], "missing_branches": []}, "TestCropAnnotator": {"executed_lines": [870, 871, 872, 873, 877, 878, 879, 880], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 865, "executed_branches": [], "missing_branches": []}, "TestBackgroundOverlayAnnotator": {"executed_lines": [888, 889, 890, 891, 895, 896, 897, 898, 899, 903, 904, 905, 907, 908, 909, 911, 912, 913, 916], "summary": {"covered_lines": 19, "num_statements": 19, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 883, "executed_branches": [], "missing_branches": []}, "TestComparisonAnnotator": {"executed_lines": [924, 925, 926, 927, 930, 934, 935, 936, 937, 938, 941], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 919, "executed_branches": [], "missing_branches": []}, "TestTraceAnnotatorSmoothStationary": {"executed_lines": [954, 959, 960, 961, 962, 963, 972, 973, 974, 975, 976, 977, 984, 987, 990, 1005, 1006, 1007, 1008, 1009, 1010, 1015, 1016, 1026, 1027, 1028, 1029, 1030, 1031, 1032, 1033, 1038, 1041, 1044, 1052, 1057, 1058, 1059, 1066, 1071, 1072, 1073, 1074, 1075], "summary": {"covered_lines": 44, "num_statements": 44, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 14, "num_partial_branches": 0, "covered_branches": 14, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 944, "executed_branches": [[961, 962], [961, 963], [976, 977], [976, 990], [1007, 1008], [1007, 1016], [1008, 1007], [1008, 1009], [1030, 1031], [1030, 1044], [1031, 1030], [1031, 1032], [1073, 1074], [1073, 1075]], "missing_branches": []}, "": {"executed_lines": [5, 7, 8, 10, 35, 36, 37, 38, 39, 40, 43, 44, 46, 49, 50, 52, 53, 54, 57, 58, 60, 61, 62, 63, 64, 67, 104, 107, 108, 109, 110, 111, 114, 122, 134, 149, 167, 196, 199, 206, 214, 217, 224, 231, 242, 264, 267, 274, 281, 293, 296, 303, 313, 316, 323, 330, 344, 368, 379, 382, 389, 407, 434, 468, 471, 484, 514, 536, 539, 550, 557, 567, 579, 582, 589, 599, 602, 609, 622, 625, 632, 642, 645, 652, 665, 668, 675, 685, 688, 695, 705, 708, 715, 722, 723, 728, 736, 739, 746, 753, 767, 780, 791, 792, 797, 805, 808, 815, 825, 828, 835, 845, 848, 855, 865, 868, 875, 883, 886, 893, 901, 919, 922, 932, 944, 947, 965, 992, 997, 1018, 1046, 1061], "summary": {"covered_lines": 132, "num_statements": 132, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 6, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [[61, 62], [61, 64], [62, 61], [62, 63], [108, -67], [108, 109]], "missing_branches": []}}}, "tests\\annotators\\test_docs.py": {"executed_lines": [3, 4, 5, 7, 9, 10, 11, 13, 15, 38, 45, 46, 48, 49, 51, 52, 58, 59, 64, 70, 72, 73, 75, 76, 77, 78, 80, 81, 82, 83, 84, 85, 88, 95, 96, 97, 100, 108, 110, 114, 115, 118, 124, 125, 127, 129, 130, 131, 132, 133], "summary": {"covered_lines": 50, "num_statements": 56, "percent_covered": 82.05128205128206, "percent_covered_display": "82", "missing_lines": 6, "excluded_lines": 0, "percent_statements_covered": 89.28571428571429, "percent_statements_covered_display": "89", "num_branches": 22, "num_partial_branches": 4, "covered_branches": 14, "missing_branches": 8, "percent_branches_covered": 63.63636363636363, "percent_branches_covered_display": "64"}, "missing_lines": [53, 60, 65, 135, 136, 144], "excluded_lines": [], "executed_branches": [[10, 11], [10, 13], [52, 58], [59, 64], [64, 70], [75, 76], [75, 85], [76, 75], [76, 77], [80, 81], [80, 83], [83, 84], [129, -118], [129, 130]], "missing_branches": [[52, 53], [59, 60], [64, 65], [83, 75], [135, 129], [135, 136], [136, 135], [136, 144]], "functions": {"_extract_annotator_tab_groups": {"executed_lines": [45, 46, 48, 49, 51, 52, 58, 59, 64, 70, 72, 73, 75, 76, 77, 78, 80, 81, 82, 83, 84, 85], "summary": {"covered_lines": 22, "num_statements": 25, "percent_covered": 82.05128205128206, "percent_covered_display": "82", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 88.0, "percent_statements_covered_display": "88", "num_branches": 14, "num_partial_branches": 4, "covered_branches": 10, "missing_branches": 4, "percent_branches_covered": 71.42857142857143, "percent_branches_covered_display": "71"}, "missing_lines": [53, 60, 65], "excluded_lines": [], "start_line": 38, "executed_branches": [[52, 58], [59, 64], [64, 70], [75, 76], [75, 85], [76, 75], [76, 77], [80, 81], [80, 83], [83, 84]], "missing_branches": [[52, 53], [59, 60], [64, 65], [83, 75]]}, "test_all_expected_annotators_have_tab_entries": {"executed_lines": [95, 96, 97, 100], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 88, "executed_branches": [], "missing_branches": []}, "test_annotator_example_tab_groups_stay_within_material_limit": {"executed_lines": [110, 114, 115], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 108, "executed_branches": [], "missing_branches": []}, "test_annotator_code_examples_have_no_tuple_assignment": {"executed_lines": [124, 125, 127, 129, 130, 131, 132, 133], "summary": {"covered_lines": 8, "num_statements": 11, "percent_covered": 58.8235294117647, "percent_covered_display": "59", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 72.72727272727273, "percent_statements_covered_display": "73", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 4, "percent_branches_covered": 33.333333333333336, "percent_branches_covered_display": "33"}, "missing_lines": [135, 136, 144], "excluded_lines": [], "start_line": 118, "executed_branches": [[129, -118], [129, 130]], "missing_branches": [[135, 129], [135, 136], [136, 135], [136, 144]]}, "": {"executed_lines": [3, 4, 5, 7, 9, 10, 11, 13, 15, 38, 88, 108, 118], "summary": {"covered_lines": 13, "num_statements": 13, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [[10, 11], [10, 13]], "missing_branches": []}}, "classes": {"": {"executed_lines": [3, 4, 5, 7, 9, 10, 11, 13, 15, 38, 45, 46, 48, 49, 51, 52, 58, 59, 64, 70, 72, 73, 75, 76, 77, 78, 80, 81, 82, 83, 84, 85, 88, 95, 96, 97, 100, 108, 110, 114, 115, 118, 124, 125, 127, 129, 130, 131, 132, 133], "summary": {"covered_lines": 50, "num_statements": 56, "percent_covered": 82.05128205128206, "percent_covered_display": "82", "missing_lines": 6, "excluded_lines": 0, "percent_statements_covered": 89.28571428571429, "percent_statements_covered_display": "89", "num_branches": 22, "num_partial_branches": 4, "covered_branches": 14, "missing_branches": 8, "percent_branches_covered": 63.63636363636363, "percent_branches_covered_display": "64"}, "missing_lines": [53, 60, 65, 135, 136, 144], "excluded_lines": [], "start_line": 1, "executed_branches": [[10, 11], [10, 13], [52, 58], [59, 64], [64, 70], [75, 76], [75, 85], [76, 75], [76, 77], [80, 81], [80, 83], [83, 84], [129, -118], [129, 130]], "missing_branches": [[52, 53], [59, 60], [64, 65], [83, 75], [135, 129], [135, 136], [136, 135], [136, 144]]}}}, "tests\\annotators\\test_utils.py": {"executed_lines": [1, 3, 5, 6, 8, 16, 17, 20, 104, 111, 112, 117, 120, 173, 179, 180, 181, 184, 195, 198, 201, 202, 203, 204, 207, 216, 217, 220, 229, 230, 231, 234, 247, 248], "summary": {"covered_lines": 34, "num_statements": 34, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"test_resolve_color_idx": {"executed_lines": [111, 112, 117], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 104, "executed_branches": [], "missing_branches": []}, "test_wrap_text": {"executed_lines": [179, 180, 181], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 173, "executed_branches": [], "missing_branches": []}, "test_hex_to_rgba_valid": {"executed_lines": [198], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 195, "executed_branches": [], "missing_branches": []}, "test_hex_to_rgba_invalid": {"executed_lines": [203, 204], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 202, "executed_branches": [], "missing_branches": []}, "test_rgba_to_hex": {"executed_lines": [217], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 216, "executed_branches": [], "missing_branches": []}, "test_rgba_to_hex_invalid": {"executed_lines": [230, 231], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 229, "executed_branches": [], "missing_branches": []}, "test_is_valid_hex": {"executed_lines": [248], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 247, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 5, 6, 8, 16, 17, 20, 104, 120, 173, 184, 195, 201, 202, 207, 216, 220, 229, 234, 247], "summary": {"covered_lines": 21, "num_statements": 21, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 3, 5, 6, 8, 16, 17, 20, 104, 111, 112, 117, 120, 173, 179, 180, 181, 184, 195, 198, 201, 202, 203, 204, 207, 216, 217, 220, 229, 230, 231, 234, 247, 248], "summary": {"covered_lines": 34, "num_statements": 34, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\assets\\__init__.py": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\assets\\test_downloader.py": {"executed_lines": [1, 3, 5, 6, 9, 10, 12, 13, 15, 19, 21, 23, 24, 26, 30, 32, 34, 35, 38, 39, 40, 41, 42, 44, 45, 46, 47, 49, 50, 51, 55, 56, 60, 61, 62, 63, 64, 66, 67, 68, 69, 70, 71, 72, 73, 84, 86, 87, 88, 89, 90, 92, 95, 97, 98, 99, 100, 101, 102, 104, 105, 107, 109, 110, 112, 113, 115, 116, 118, 120, 121, 123, 124, 126, 127, 128, 129, 130, 131, 132, 133, 144, 146, 147, 148, 149, 150, 152, 153, 155, 156, 157, 159, 160, 161, 162, 163, 164, 165, 166, 177, 179, 180, 181, 182, 183, 185, 186, 188, 189, 190], "summary": {"covered_lines": 111, "num_statements": 111, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"TestMD5HashMatching.test_file_exists_matching_hash": {"executed_lines": [12, 13, 15, 19], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 10, "executed_branches": [], "missing_branches": []}, "TestMD5HashMatching.test_file_exists_not_matching_hash": {"executed_lines": [23, 24, 26, 30], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 21, "executed_branches": [], "missing_branches": []}, "TestMD5HashMatching.test_file_not_exists": {"executed_lines": [34, 35], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 32, "executed_branches": [], "missing_branches": []}, "TestDownloadAssets.test_already_exists_and_valid": {"executed_lines": [44, 45, 46, 47], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 42, "executed_branches": [], "missing_branches": []}, "TestDownloadAssets.test_already_exists_but_corrupted": {"executed_lines": [60, 61, 62, 63, 64], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 56, "executed_branches": [], "missing_branches": []}, "TestDownloadAssets.test_download_new_file": {"executed_lines": [84, 86, 87, 88, 89, 90, 92, 95, 97, 98, 99, 100, 101, 102], "summary": {"covered_lines": 14, "num_statements": 14, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 73, "executed_branches": [], "missing_branches": []}, "TestDownloadAssets.test_invalid_asset": {"executed_lines": [107, 109, 110, 112, 113], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 105, "executed_branches": [], "missing_branches": []}, "TestDownloadAssets.test_invalid_asset_when_file_exists": {"executed_lines": [118, 120, 121, 123, 124], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 116, "executed_branches": [], "missing_branches": []}, "TestDownloadAssets.test_with_video_enum": {"executed_lines": [144, 146, 147, 148, 149, 150, 152, 153, 155, 156, 157], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 133, "executed_branches": [], "missing_branches": []}, "TestDownloadAssets.test_with_image_enum": {"executed_lines": [177, 179, 180, 181, 182, 183, 185, 186, 188, 189, 190], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 166, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 5, 6, 9, 10, 21, 32, 38, 39, 40, 41, 42, 49, 50, 51, 55, 56, 66, 67, 68, 69, 70, 71, 72, 73, 104, 105, 115, 116, 126, 127, 128, 129, 130, 131, 132, 133, 159, 160, 161, 162, 163, 164, 165, 166], "summary": {"covered_lines": 46, "num_statements": 46, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"TestMD5HashMatching": {"executed_lines": [12, 13, 15, 19, 23, 24, 26, 30, 34, 35], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 9, "executed_branches": [], "missing_branches": []}, "TestDownloadAssets": {"executed_lines": [44, 45, 46, 47, 60, 61, 62, 63, 64, 84, 86, 87, 88, 89, 90, 92, 95, 97, 98, 99, 100, 101, 102, 107, 109, 110, 112, 113, 118, 120, 121, 123, 124, 144, 146, 147, 148, 149, 150, 152, 153, 155, 156, 157, 177, 179, 180, 181, 182, 183, 185, 186, 188, 189, 190], "summary": {"covered_lines": 55, "num_statements": 55, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 38, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 5, 6, 9, 10, 21, 32, 38, 39, 40, 41, 42, 49, 50, 51, 55, 56, 66, 67, 68, 69, 70, 71, 72, 73, 104, 105, 115, 116, 126, 127, 128, 129, 130, 131, 132, 133, 159, 160, 161, 162, 163, 164, 165, 166], "summary": {"covered_lines": 46, "num_statements": 46, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\assets\\test_list.py": {"executed_lines": [1, 10, 12, 24, 27, 29, 33, 36, 38, 39, 40, 43, 45, 46, 47, 50, 52, 55, 58, 60, 61, 62, 63, 64, 65, 66, 67, 68], "summary": {"covered_lines": 28, "num_statements": 28, "percent_covered": 97.05882352941177, "percent_covered_display": "97", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 1, "covered_branches": 5, "missing_branches": 1, "percent_branches_covered": 83.33333333333333, "percent_branches_covered_display": "83"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [[60, -58], [60, 61], [62, 63], [62, 64], [64, 65]], "missing_branches": [[64, 66]], "functions": {"test_video_assets_list": {"executed_lines": [12, 24], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 10, "executed_branches": [], "missing_branches": []}, "test_image_assets_list": {"executed_lines": [29, 33], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 27, "executed_branches": [], "missing_branches": []}, "test_video_assets_values": {"executed_lines": [38, 39, 40], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 36, "executed_branches": [], "missing_branches": []}, "test_image_assets_values": {"executed_lines": [45, 46, 47], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 43, "executed_branches": [], "missing_branches": []}, "test_media_assets_dict_keys": {"executed_lines": [52, 55], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 50, "executed_branches": [], "missing_branches": []}, "test_media_assets_dict_values": {"executed_lines": [60, 61, 62, 63, 64, 65, 66, 67, 68], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 93.33333333333333, "percent_covered_display": "93", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 1, "covered_branches": 5, "missing_branches": 1, "percent_branches_covered": 83.33333333333333, "percent_branches_covered_display": "83"}, "missing_lines": [], "excluded_lines": [], "start_line": 58, "executed_branches": [[60, -58], [60, 61], [62, 63], [62, 64], [64, 65]], "missing_branches": [[64, 66]]}, "": {"executed_lines": [1, 10, 27, 36, 43, 50, 58], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 10, 12, 24, 27, 29, 33, 36, 38, 39, 40, 43, 45, 46, 47, 50, 52, 55, 58, 60, 61, 62, 63, 64, 65, 66, 67, 68], "summary": {"covered_lines": 28, "num_statements": 28, "percent_covered": 97.05882352941177, "percent_covered_display": "97", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 1, "covered_branches": 5, "missing_branches": 1, "percent_branches_covered": 83.33333333333333, "percent_branches_covered_display": "83"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [[60, -58], [60, 61], [62, 63], [62, 64], [64, 65]], "missing_branches": [[64, 66]]}}}, "tests\\classification\\__init__.py": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\classification\\test_core.py": {"executed_lines": [1, 3, 5, 6, 8, 11, 12, 13, 15, 16, 18, 19, 21, 22, 24, 25, 28, 68, 75, 76, 80, 81, 84, 85, 87, 88, 89, 92, 93, 95, 96, 97], "summary": {"covered_lines": 32, "num_statements": 32, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"_MockTensor.__init__": {"executed_lines": [13], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 12, "executed_branches": [], "missing_branches": []}, "_MockTensor.softmax": {"executed_lines": [16], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 15, "executed_branches": [], "missing_branches": []}, "_MockTensor.cpu": {"executed_lines": [19], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 18, "executed_branches": [], "missing_branches": []}, "_MockTensor.detach": {"executed_lines": [22], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 21, "executed_branches": [], "missing_branches": []}, "_MockTensor.numpy": {"executed_lines": [25], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 24, "executed_branches": [], "missing_branches": []}, "test_top_k": {"executed_lines": [75, 76, 80, 81], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 68, "executed_branches": [], "missing_branches": []}, "test_from_clip_empty_output_dtypes": {"executed_lines": [85, 87, 88, 89], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 84, "executed_branches": [], "missing_branches": []}, "test_from_timm_empty_output_dtypes": {"executed_lines": [93, 95, 96, 97], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 92, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 5, 6, 8, 11, 12, 15, 18, 21, 24, 28, 68, 84, 92], "summary": {"covered_lines": 15, "num_statements": 15, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"_MockTensor": {"executed_lines": [13, 16, 19, 22, 25], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 11, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 5, 6, 8, 11, 12, 15, 18, 21, 24, 28, 68, 75, 76, 80, 81, 84, 85, 87, 88, 89, 92, 93, 95, 96, 97], "summary": {"covered_lines": 27, "num_statements": 27, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\conftest.py": {"executed_lines": [1, 2, 3, 5, 7, 8, 11, 12, 13, 16, 17, 18, 67, 68, 69], "summary": {"covered_lines": 15, "num_statements": 15, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"scene": {"executed_lines": [13], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 12, "executed_branches": [], "missing_branches": []}, "sample_key_points": {"executed_lines": [18], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 17, "executed_branches": [], "missing_branches": []}, "empty_key_points": {"executed_lines": [69], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 68, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 2, 3, 5, 7, 8, 11, 12, 16, 17, 67, 68], "summary": {"covered_lines": 12, "num_statements": 12, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 2, 3, 5, 7, 8, 11, 12, 13, 16, 17, 18, 67, 68, 69], "summary": {"covered_lines": 15, "num_statements": 15, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\dataset\\__init__.py": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\dataset\\formats\\__init__.py": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\dataset\\formats\\test_coco.py": {"executed_lines": [1, 3, 4, 5, 7, 8, 9, 11, 12, 25, 34, 35, 36, 47, 49, 50, 51, 52, 55, 56, 57, 110, 111, 112, 132, 172, 175, 176, 177, 180, 188, 191, 192, 193, 194, 197, 248, 251, 252, 253, 256, 760, 768, 769, 775, 778, 824, 830, 831, 834, 837, 952, 959, 960, 965, 968, 969, 986, 987, 994, 995, 996, 999, 1012, 1026, 1028, 1029, 1037, 1044, 1048, 1052, 1053, 1054, 1055, 1056, 1057, 1060, 1062, 1063, 1068, 1070, 1073, 1075, 1081, 1087, 1088, 1089, 1090, 1093, 1097, 1103, 1109, 1110, 1111, 1112, 1115, 1117, 1118, 1120, 1126, 1132, 1133, 1134, 1137, 1139, 1140, 1142, 1149, 1155, 1156, 1159, 1161, 1166, 1172, 1173, 1174, 1177, 1180, 1181, 1182, 1184, 1188, 1195, 1196, 1198, 1199, 1200, 1201, 1202, 1204, 1207, 1208, 1209, 1210, 1212, 1213, 1214, 1215, 1219, 1220, 1223, 1226, 1227, 1228, 1230, 1235, 1241, 1242, 1243, 1244, 1246, 1247, 1250, 1254, 1259, 1260, 1261, 1263, 1268, 1270, 1271, 1277, 1285, 1290, 1291, 1292, 1294, 1306, 1308, 1309, 1315, 1317, 1318, 1319, 1321, 1333, 1335, 1336, 1342, 1346, 1347, 1348, 1349, 1351, 1356, 1358, 1359, 1365, 1367, 1368, 1369, 1370, 1372, 1377, 1379, 1383, 1384, 1387, 1390, 1391, 1392, 1394, 1408, 1410, 1416, 1417, 1418, 1419, 1420, 1421, 1424, 1425, 1426, 1460, 1463, 1464, 1471, 1472, 1473, 1475, 1479, 1485, 1486, 1487, 1488, 1504, 1506, 1507, 1508, 1510, 1530, 1532, 1537, 1538, 1539, 1545, 1553, 1557, 1559, 1562, 1564, 1569, 1575, 1578, 1583, 1584, 1585, 1586, 1587, 1588, 1589, 1590, 1591, 1595, 1596, 1597, 1601, 1602, 1605, 1606, 1607, 1608, 1611, 1615, 1616, 1617, 1618, 1619, 1625, 1631, 1632, 1633, 1634, 1635, 1636, 1637, 1638, 1642, 1647, 1652, 1653, 1654, 1655, 1656, 1657, 1660, 1661, 1662, 1664, 1668, 1669, 1670, 1672, 1673, 1676, 1677, 1678, 1680, 1687, 1688, 1689, 1690, 1691, 1694, 1697, 1698, 1699, 1701, 1702, 1703, 1705, 1706, 1711, 1717, 1718, 1719, 1720, 1721, 1722, 1724, 1727, 1731, 1732, 1735, 1738, 1739, 1741, 1748, 1749, 1750, 1751, 1752, 1755, 1758, 1759, 1764, 1765, 1768, 1771, 1772, 1774, 1781, 1782, 1783, 1784, 1785, 1790, 1793, 1794, 1796, 1800, 1801, 1802, 1803, 1804, 1810, 1813, 1814, 1815, 1816, 1818, 1843, 1844, 1846, 1851, 1852, 1853, 1854, 1860, 1868, 1872, 1873, 1875, 1876, 1887, 1889, 1894, 1895, 1905, 1907, 1908, 1910, 1921, 1922, 1924, 1925, 1926, 1928, 1932, 1933, 1934, 1940, 1945, 1955, 1956, 1965, 1968, 1969, 1970, 1972, 1978, 1981, 1982, 1984, 1985, 1988, 2007, 2021, 2022, 2024, 2025, 2028, 2029, 2041, 2047, 2048, 2050, 2051, 2054, 2055, 2056, 2057, 2060, 2064, 2069, 2074, 2076, 2079, 2082, 2083, 2086, 2088, 2089, 2090, 2092, 2097, 2100, 2101, 2102, 2103, 2104], "summary": {"covered_lines": 441, "num_statements": 441, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 12, "num_partial_branches": 0, "covered_branches": 12, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [[34, 35], [34, 36], [50, 51], [50, 52], [1587, 1588], [1587, 1597], [1616, -1578], [1616, 1617], [1634, 1635], [1634, 1647], [1719, 1720], [1719, 1724]], "missing_branches": [], "functions": {"mock_coco_annotation": {"executed_lines": [34, 35, 36], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 25, "executed_branches": [[34, 35], [34, 36]], "missing_branches": []}, "_empty_raw_segs": {"executed_lines": [49, 50, 51, 52], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 47, "executed_branches": [[50, 51], [50, 52]], "missing_branches": []}, "coco_data_with_and_without_segmentation": {"executed_lines": [57], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 56, "executed_branches": [], "missing_branches": []}, "coco_data_with_unannotated_image": {"executed_lines": [112], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 111, "executed_branches": [], "missing_branches": []}, "test_coco_categories_to_classes": {"executed_lines": [175, 176, 177], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 172, "executed_branches": [], "missing_branches": []}, "test_classes_to_coco_categories_and_back_to_classes": {"executed_lines": [191, 192, 193, 194], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 188, "executed_branches": [], "missing_branches": []}, "test_group_coco_annotations_by_image_id": {"executed_lines": [251, 252, 253], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 248, "executed_branches": [], "missing_branches": []}, "test_coco_annotations_to_detections": {"executed_lines": [768, 769, 775], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 760, "executed_branches": [], "missing_branches": []}, "test_build_coco_class_index_mapping": {"executed_lines": [830, 831, 834], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 824, "executed_branches": [], "missing_branches": []}, "test_detections_to_coco_annotations": {"executed_lines": [959, 960, 965], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 952, "executed_branches": [], "missing_branches": []}, "test_detections_to_coco_annotations_handles_empty_approximated_polygons": {"executed_lines": [969, 986, 987, 994, 995, 996], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 968, "executed_branches": [], "missing_branches": []}, "_make_iscrowd0_detections": {"executed_lines": [1028, 1029], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1026, "executed_branches": [], "missing_branches": []}, "test_detections_to_coco_annotations_segmentation_count": {"executed_lines": [1048, 1052, 1053, 1054, 1055, 1056, 1057], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1044, "executed_branches": [], "missing_branches": []}, "test_detections_to_coco_annotations_round_trip_disjoint_mask": {"executed_lines": [1062, 1063, 1068, 1070], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1060, "executed_branches": [], "missing_branches": []}, "test_detections_to_coco_annotations_preserves_area_from_data": {"executed_lines": [1075, 1081, 1087, 1088, 1089, 1090], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1073, "executed_branches": [], "missing_branches": []}, "test_detections_to_coco_annotations_preserves_iscrowd_from_data_when_no_mask": {"executed_lines": [1097, 1103, 1109, 1110, 1111, 1112], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1093, "executed_branches": [], "missing_branches": []}, "test_detections_to_coco_annotations_iscrowd_is_int_when_mask_provided": {"executed_lines": [1117, 1118, 1120, 1126, 1132, 1133, 1134], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1115, "executed_branches": [], "missing_branches": []}, "test_detections_to_coco_annotations_data_area_overrides_bbox_with_mask": {"executed_lines": [1139, 1140, 1142, 1149, 1155, 1156], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1137, "executed_branches": [], "missing_branches": []}, "test_detections_to_coco_annotations_fallback_area_when_no_data": {"executed_lines": [1161, 1166, 1172, 1173, 1174], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1159, "executed_branches": [], "missing_branches": []}, "test_load_coco_annotations_infers_masks_from_segmentation_field": {"executed_lines": [1180, 1181, 1182, 1184, 1188, 1195, 1196, 1198, 1199, 1200, 1201, 1202, 1204, 1207, 1208, 1209, 1210, 1212, 1213, 1214, 1215, 1219, 1220], "summary": {"covered_lines": 23, "num_statements": 23, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1177, "executed_branches": [], "missing_branches": []}, "test_load_coco_annotations_force_masks_with_no_annotations": {"executed_lines": [1226, 1227, 1228, 1230, 1235, 1241, 1242, 1243, 1244, 1246, 1247], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1223, "executed_branches": [], "missing_branches": []}, "test_load_coco_annotations_rejects_file_name_resolving_to_images_directory": {"executed_lines": [1259, 1260, 1261, 1263, 1268, 1270, 1271], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1254, "executed_branches": [], "missing_branches": []}, "test_load_coco_annotations_rejects_file_name_outside_images_directory": {"executed_lines": [1290, 1291, 1292, 1294, 1306, 1308, 1309], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1285, "executed_branches": [], "missing_branches": []}, "test_load_coco_annotations_rejects_absolute_file_name": {"executed_lines": [1317, 1318, 1319, 1321, 1333, 1335, 1336], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1315, "executed_branches": [], "missing_branches": []}, "test_load_coco_annotations_rejects_file_name_resolving_to_directory": {"executed_lines": [1346, 1347, 1348, 1349, 1351, 1356, 1358, 1359], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1342, "executed_branches": [], "missing_branches": []}, "test_load_coco_annotations_accepts_valid_nested_file_name": {"executed_lines": [1367, 1368, 1369, 1370, 1372, 1377, 1379, 1383, 1384], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1365, "executed_branches": [], "missing_branches": []}, "test_load_coco_annotations_force_masks_handles_missing_segmentation": {"executed_lines": [1390, 1391, 1392, 1394, 1408, 1410, 1416, 1417, 1418, 1419, 1420, 1421], "summary": {"covered_lines": 12, "num_statements": 12, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1387, "executed_branches": [], "missing_branches": []}, "coco_data_with_multi_segment_segmentation": {"executed_lines": [1426], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1425, "executed_branches": [], "missing_branches": []}, "TestFromCocoMasks.test_multi_segment_masks_merged": {"executed_lines": [1471, 1472, 1473, 1475, 1479, 1485, 1486, 1487, 1488], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1464, "executed_branches": [], "missing_branches": []}, "TestFromCocoMasks.test_multi_segment_masks_uneven_length_no_value_error": {"executed_lines": [1506, 1507, 1508, 1510, 1530, 1532, 1537, 1538, 1539], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1504, "executed_branches": [], "missing_branches": []}, "test_classes_to_coco_categories_ids_start_at_one": {"executed_lines": [1557, 1559], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1553, "executed_branches": [], "missing_branches": []}, "test_detections_to_coco_annotations_category_id_is_one_indexed": {"executed_lines": [1564, 1569, 1575], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1562, "executed_branches": [], "missing_branches": []}, "test_coco_round_trip_preserves_class_ids_and_writes_one_indexed_categories": {"executed_lines": [1583, 1584, 1585, 1586, 1587, 1588, 1589, 1590, 1591, 1595, 1596, 1597, 1601, 1602, 1605, 1606, 1607, 1608, 1611, 1615, 1616, 1617, 1618, 1619], "summary": {"covered_lines": 24, "num_statements": 24, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1578, "executed_branches": [[1587, 1588], [1587, 1597], [1616, -1578], [1616, 1617]], "missing_branches": []}, "_tiny_detection_dataset": {"executed_lines": [1631, 1632, 1633, 1634, 1635, 1636, 1637, 1638, 1642, 1647], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1625, "executed_branches": [[1634, 1635], [1634, 1647]], "missing_branches": []}, "_read_ids": {"executed_lines": [1653, 1654, 1655, 1656, 1657], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1652, "executed_branches": [], "missing_branches": []}, "test_save_coco_annotations_defaults_start_at_one": {"executed_lines": [1661, 1662, 1664, 1668, 1669, 1670, 1672, 1673], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1660, "executed_branches": [], "missing_branches": []}, "test_save_coco_annotations_respects_starting_ids": {"executed_lines": [1677, 1678, 1680, 1687, 1688, 1689, 1690, 1691], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1676, "executed_branches": [], "missing_branches": []}, "test_as_coco_chains_ids_across_splits_without_collision": {"executed_lines": [1697, 1698, 1699, 1701, 1702, 1703, 1705, 1706, 1711, 1717, 1718, 1719, 1720, 1721, 1722, 1724, 1727, 1731, 1732], "summary": {"covered_lines": 19, "num_statements": 19, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1694, "executed_branches": [[1719, 1720], [1719, 1724]], "missing_branches": []}, "test_save_coco_annotations_empty_dataset_returns_starting_ids": {"executed_lines": [1738, 1739, 1741, 1748, 1749, 1750, 1751, 1752], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1735, "executed_branches": [], "missing_branches": []}, "test_as_coco_without_annotations_path_returns_starting_ids": {"executed_lines": [1758, 1759, 1764, 1765], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1755, "executed_branches": [], "missing_branches": []}, "test_save_coco_annotations_annotation_image_id_references_correct_image": {"executed_lines": [1771, 1772, 1774, 1781, 1782, 1783, 1784, 1785], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1768, "executed_branches": [], "missing_branches": []}, "test_save_coco_annotations_zero_annotation_images": {"executed_lines": [1793, 1794, 1796, 1800, 1801, 1802, 1803, 1804], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1790, "executed_branches": [], "missing_branches": []}, "test_from_coco_loads_legacy_zero_indexed_category_ids": {"executed_lines": [1813, 1814, 1815, 1816, 1818, 1843, 1844, 1846, 1851, 1852, 1853, 1854], "summary": {"covered_lines": 12, "num_statements": 12, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1810, "executed_branches": [], "missing_branches": []}, "test_save_coco_annotations_rejects_zero_starting_ids": {"executed_lines": [1872, 1873, 1875, 1876], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1868, "executed_branches": [], "missing_branches": []}, "test_detections_to_coco_annotations_raises_when_class_id_is_none": {"executed_lines": [1889, 1894, 1895], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1887, "executed_branches": [], "missing_branches": []}, "test_coco_round_trip_multi_class_single_image": {"executed_lines": [1907, 1908, 1910, 1921, 1922, 1924, 1925, 1926, 1928, 1932, 1933, 1934], "summary": {"covered_lines": 12, "num_statements": 12, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1905, "executed_branches": [], "missing_branches": []}, "_coco_annotation_with_segmentation": {"executed_lines": [1945], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1940, "executed_branches": [], "missing_branches": []}, "_single_image_coco_data": {"executed_lines": [1956], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1955, "executed_branches": [], "missing_branches": []}, "test_detections_to_coco_annotations_exports_all_polygons": {"executed_lines": [1968, 1969, 1970, 1972, 1978, 1981, 1982, 1984, 1985], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1965, "executed_branches": [], "missing_branches": []}, "test_coco_polygon_segmentation_survives_roundtrip": {"executed_lines": [2021, 2022, 2024, 2025, 2028, 2029, 2041, 2047, 2048, 2050, 2051, 2054, 2055, 2056, 2057], "summary": {"covered_lines": 15, "num_statements": 15, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 2007, "executed_branches": [], "missing_branches": []}, "test_coco_raw_segmentation_preserved_when_masks_not_decoded": {"executed_lines": [2064, 2069, 2074, 2076, 2079, 2082, 2083], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 2060, "executed_branches": [], "missing_branches": []}, "test_coco_iscrowd_mask_exports_as_rle": {"executed_lines": [2088, 2089, 2090, 2092, 2097, 2100, 2101, 2102, 2103, 2104], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 2086, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 5, 7, 8, 9, 11, 12, 25, 47, 55, 56, 110, 111, 132, 172, 180, 188, 197, 248, 256, 760, 778, 824, 837, 952, 968, 999, 1012, 1026, 1037, 1044, 1060, 1073, 1093, 1115, 1137, 1159, 1177, 1223, 1250, 1254, 1277, 1285, 1315, 1342, 1365, 1387, 1424, 1425, 1460, 1463, 1464, 1504, 1545, 1553, 1562, 1578, 1625, 1652, 1660, 1676, 1694, 1735, 1755, 1768, 1790, 1810, 1860, 1868, 1887, 1905, 1940, 1955, 1965, 1988, 2007, 2060, 2086], "summary": {"covered_lines": 80, "num_statements": 80, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"TestFromCocoMasks": {"executed_lines": [1471, 1472, 1473, 1475, 1479, 1485, 1486, 1487, 1488, 1506, 1507, 1508, 1510, 1530, 1532, 1537, 1538, 1539], "summary": {"covered_lines": 18, "num_statements": 18, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1460, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 5, 7, 8, 9, 11, 12, 25, 34, 35, 36, 47, 49, 50, 51, 52, 55, 56, 57, 110, 111, 112, 132, 172, 175, 176, 177, 180, 188, 191, 192, 193, 194, 197, 248, 251, 252, 253, 256, 760, 768, 769, 775, 778, 824, 830, 831, 834, 837, 952, 959, 960, 965, 968, 969, 986, 987, 994, 995, 996, 999, 1012, 1026, 1028, 1029, 1037, 1044, 1048, 1052, 1053, 1054, 1055, 1056, 1057, 1060, 1062, 1063, 1068, 1070, 1073, 1075, 1081, 1087, 1088, 1089, 1090, 1093, 1097, 1103, 1109, 1110, 1111, 1112, 1115, 1117, 1118, 1120, 1126, 1132, 1133, 1134, 1137, 1139, 1140, 1142, 1149, 1155, 1156, 1159, 1161, 1166, 1172, 1173, 1174, 1177, 1180, 1181, 1182, 1184, 1188, 1195, 1196, 1198, 1199, 1200, 1201, 1202, 1204, 1207, 1208, 1209, 1210, 1212, 1213, 1214, 1215, 1219, 1220, 1223, 1226, 1227, 1228, 1230, 1235, 1241, 1242, 1243, 1244, 1246, 1247, 1250, 1254, 1259, 1260, 1261, 1263, 1268, 1270, 1271, 1277, 1285, 1290, 1291, 1292, 1294, 1306, 1308, 1309, 1315, 1317, 1318, 1319, 1321, 1333, 1335, 1336, 1342, 1346, 1347, 1348, 1349, 1351, 1356, 1358, 1359, 1365, 1367, 1368, 1369, 1370, 1372, 1377, 1379, 1383, 1384, 1387, 1390, 1391, 1392, 1394, 1408, 1410, 1416, 1417, 1418, 1419, 1420, 1421, 1424, 1425, 1426, 1460, 1463, 1464, 1504, 1545, 1553, 1557, 1559, 1562, 1564, 1569, 1575, 1578, 1583, 1584, 1585, 1586, 1587, 1588, 1589, 1590, 1591, 1595, 1596, 1597, 1601, 1602, 1605, 1606, 1607, 1608, 1611, 1615, 1616, 1617, 1618, 1619, 1625, 1631, 1632, 1633, 1634, 1635, 1636, 1637, 1638, 1642, 1647, 1652, 1653, 1654, 1655, 1656, 1657, 1660, 1661, 1662, 1664, 1668, 1669, 1670, 1672, 1673, 1676, 1677, 1678, 1680, 1687, 1688, 1689, 1690, 1691, 1694, 1697, 1698, 1699, 1701, 1702, 1703, 1705, 1706, 1711, 1717, 1718, 1719, 1720, 1721, 1722, 1724, 1727, 1731, 1732, 1735, 1738, 1739, 1741, 1748, 1749, 1750, 1751, 1752, 1755, 1758, 1759, 1764, 1765, 1768, 1771, 1772, 1774, 1781, 1782, 1783, 1784, 1785, 1790, 1793, 1794, 1796, 1800, 1801, 1802, 1803, 1804, 1810, 1813, 1814, 1815, 1816, 1818, 1843, 1844, 1846, 1851, 1852, 1853, 1854, 1860, 1868, 1872, 1873, 1875, 1876, 1887, 1889, 1894, 1895, 1905, 1907, 1908, 1910, 1921, 1922, 1924, 1925, 1926, 1928, 1932, 1933, 1934, 1940, 1945, 1955, 1956, 1965, 1968, 1969, 1970, 1972, 1978, 1981, 1982, 1984, 1985, 1988, 2007, 2021, 2022, 2024, 2025, 2028, 2029, 2041, 2047, 2048, 2050, 2051, 2054, 2055, 2056, 2057, 2060, 2064, 2069, 2074, 2076, 2079, 2082, 2083, 2086, 2088, 2089, 2090, 2092, 2097, 2100, 2101, 2102, 2103, 2104], "summary": {"covered_lines": 423, "num_statements": 423, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 12, "num_partial_branches": 0, "covered_branches": 12, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [[34, 35], [34, 36], [50, 51], [50, 52], [1587, 1588], [1587, 1597], [1616, -1578], [1616, 1617], [1634, 1635], [1634, 1647], [1719, 1720], [1719, 1724]], "missing_branches": []}}}, "tests\\dataset\\formats\\test_pascal_voc.py": {"executed_lines": [1, 3, 5, 6, 7, 9, 15, 18, 19, 27, 28, 31, 34, 64, 71, 72, 73, 76, 78, 79, 81, 83, 84, 89, 91, 92, 94, 96, 101, 103, 104, 106, 109, 113, 114, 117, 131, 136, 137, 138, 141, 147, 152, 160, 161, 169, 222, 225, 226, 227, 228, 231, 232, 235, 236, 243, 244, 245, 246], "summary": {"covered_lines": 59, "num_statements": 61, "percent_covered": 94.02985074626865, "percent_covered_display": "94", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 96.72131147540983, "percent_statements_covered_display": "97", "num_branches": 6, "num_partial_branches": 2, "covered_branches": 4, "missing_branches": 2, "percent_branches_covered": 66.66666666666667, "percent_branches_covered_display": "67"}, "missing_lines": [25, 29], "excluded_lines": [], "executed_branches": [[19, 27], [27, 28], [27, 31], [28, 27]], "missing_branches": [[19, 25], [28, 29]], "functions": {"are_xml_elements_equal": {"executed_lines": [19, 27, 28, 31], "summary": {"covered_lines": 4, "num_statements": 6, "percent_covered": 66.66666666666667, "percent_covered_display": "67", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 66.66666666666667, "percent_statements_covered_display": "67", "num_branches": 6, "num_partial_branches": 2, "covered_branches": 4, "missing_branches": 2, "percent_branches_covered": 66.66666666666667, "percent_branches_covered_display": "67"}, "missing_lines": [25, 29], "excluded_lines": [], "start_line": 18, "executed_branches": [[19, 27], [27, 28], [27, 31], [28, 27]], "missing_branches": [[19, 25], [28, 29]]}, "test_object_to_pascal_voc": {"executed_lines": [71, 72, 73], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 64, "executed_branches": [], "missing_branches": []}, "test_object_to_pascal_voc_does_not_mutate_inputs": {"executed_lines": [78, 79, 81, 83, 84], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 76, "executed_branches": [], "missing_branches": []}, "test_object_to_pascal_voc_does_not_mutate_view_input": {"executed_lines": [91, 92, 94, 96], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 89, "executed_branches": [], "missing_branches": []}, "test_detections_to_pascal_voc_does_not_mutate_detections": {"executed_lines": [103, 104, 106, 109, 113, 114], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 101, "executed_branches": [], "missing_branches": []}, "test_parse_polygon_points": {"executed_lines": [136, 137, 138], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 131, "executed_branches": [], "missing_branches": []}, "test_detections_from_xml_obj": {"executed_lines": [225, 226, 227, 228], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 222, "executed_branches": [], "missing_branches": []}, "test_detections_from_xml_obj_mixed_polygon_and_bbox_masks_aligned": {"executed_lines": [235, 236, 243, 244, 245, 246], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 232, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 5, 6, 7, 9, 15, 18, 34, 64, 76, 89, 101, 117, 131, 141, 147, 152, 160, 161, 169, 222, 231, 232], "summary": {"covered_lines": 24, "num_statements": 24, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 3, 5, 6, 7, 9, 15, 18, 19, 27, 28, 31, 34, 64, 71, 72, 73, 76, 78, 79, 81, 83, 84, 89, 91, 92, 94, 96, 101, 103, 104, 106, 109, 113, 114, 117, 131, 136, 137, 138, 141, 147, 152, 160, 161, 169, 222, 225, 226, 227, 228, 231, 232, 235, 236, 243, 244, 245, 246], "summary": {"covered_lines": 59, "num_statements": 61, "percent_covered": 94.02985074626865, "percent_covered_display": "94", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 96.72131147540983, "percent_statements_covered_display": "97", "num_branches": 6, "num_partial_branches": 2, "covered_branches": 4, "missing_branches": 2, "percent_branches_covered": 66.66666666666667, "percent_branches_covered_display": "67"}, "missing_lines": [25, 29], "excluded_lines": [], "start_line": 1, "executed_branches": [[19, 27], [27, 28], [27, 31], [28, 27]], "missing_branches": [[19, 25], [28, 29]]}}}, "tests\\dataset\\formats\\test_yolo.py": {"executed_lines": [1, 3, 4, 6, 7, 8, 10, 11, 12, 21, 24, 25, 26, 27, 28, 32, 35, 36, 37, 40, 66, 69, 70, 71, 74, 198, 205, 206, 209, 210, 211, 216, 229, 232, 233, 234, 237, 268, 275, 276, 277, 278, 281, 336, 344, 345, 348, 351, 352, 357, 358, 363, 386, 393, 394, 395, 396, 397, 398, 399, 401, 408, 409, 412, 418, 420, 422, 425, 429, 433, 434, 435, 436, 437, 442, 443, 447, 448, 449, 450, 453, 454, 456, 457, 459, 460, 462, 471, 475, 477, 484, 485, 486, 487, 488, 491, 495, 499, 505, 507, 508, 512, 513, 516, 520, 521, 523, 524, 525, 526, 527, 529, 530, 536, 538, 541, 547, 551, 552, 553, 556, 557, 564, 566, 570, 571, 576, 578, 581, 584, 586, 593, 601, 605, 606, 607, 608, 611, 612, 613, 620, 622, 626, 632, 636, 637, 642, 649, 653, 654, 655, 656, 657, 658, 659, 661, 668, 669, 675, 676, 681, 683, 684, 685, 686, 688, 689, 690, 692, 699, 700, 706, 712, 713, 714, 721, 725, 726, 727, 728, 729, 730, 731, 733, 735, 742, 743, 749, 750, 751], "summary": {"covered_lines": 190, "num_statements": 190, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [[606, 607], [606, 611]], "missing_branches": [], "functions": {"_mock_simple_mask": {"executed_lines": [25, 26, 27, 28], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 24, "executed_branches": [], "missing_branches": []}, "_arrays_almost_equal": {"executed_lines": [35, 36, 37], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 32, "executed_branches": [], "missing_branches": []}, "test_with_mask": {"executed_lines": [69, 70, 71], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 66, "executed_branches": [], "missing_branches": []}, "test_yolo_annotations_to_detections": {"executed_lines": [205, 206, 209, 210, 211], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 198, "executed_branches": [], "missing_branches": []}, "test_image_name_to_annotation_name": {"executed_lines": [232, 233, 234], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 229, "executed_branches": [], "missing_branches": []}, "test_extract_class_names_sorts_numeric_string_keys": {"executed_lines": [275, 276, 277, 278], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 268, "executed_branches": [], "missing_branches": []}, "test_object_to_yolo": {"executed_lines": [344, 345, 348], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 336, "executed_branches": [], "missing_branches": []}, "test_detections_to_yolo_annotations_raises_for_non_integer_class_id": {"executed_lines": [352, 357, 358], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 351, "executed_branches": [], "missing_branches": []}, "test_load_yolo_annotations_mask_behaviour": {"executed_lines": [393, 394, 395, 396, 397, 398, 399, 401, 408, 409], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 386, "executed_branches": [], "missing_branches": []}, "test_polygons_to_masks_multiple_polygons_shape": {"executed_lines": [418, 420, 422, 425, 429, 433, 434, 435, 436, 437], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 412, "executed_branches": [], "missing_branches": []}, "yolo_mask_round_trip_sample": {"executed_lines": [447, 448, 449, 450, 453, 454, 456, 457, 459, 460, 462], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 443, "executed_branches": [], "missing_branches": []}, "test_yolo_polygon_mask_precision_no_coord_drift_loads_mask": {"executed_lines": [475, 477, 484, 485, 486, 487, 488], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 471, "executed_branches": [], "missing_branches": []}, "test_yolo_polygon_mask_precision_no_coord_drift_round_trip_iou": {"executed_lines": [495, 499, 505, 507, 508, 512, 513, 516, 520, 521, 523, 524, 525, 526, 527, 529, 530], "summary": {"covered_lines": 17, "num_statements": 17, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 491, "executed_branches": [], "missing_branches": []}, "test_detections_to_yolo_annotations_obb_emits_nine_tokens": {"executed_lines": [538, 541, 547, 551, 552, 553, 556, 557], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 536, "executed_branches": [], "missing_branches": []}, "test_detections_to_yolo_annotations_obb_raises_without_corners": {"executed_lines": [566, 570, 571], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 564, "executed_branches": [], "missing_branches": []}, "test_detections_to_yolo_annotations_obb_empty_emits_no_lines": {"executed_lines": [578, 581], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 576, "executed_branches": [], "missing_branches": []}, "test_detections_to_yolo_annotations_obb_multiple_detections": {"executed_lines": [586, 593, 601, 605, 606, 607, 608, 611, 612, 613], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 584, "executed_branches": [[606, 607], [606, 611]], "missing_branches": []}, "test_detections_to_yolo_annotations_obb_data_ignored_when_is_obb_false": {"executed_lines": [622, 626, 632, 636, 637], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 620, "executed_branches": [], "missing_branches": []}, "test_dataset_as_yolo_obb_output_token_count": {"executed_lines": [653, 654, 655, 656, 657, 658, 659, 661, 668, 669, 675, 676], "summary": {"covered_lines": 12, "num_statements": 12, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 649, "executed_branches": [], "missing_branches": []}, "test_dataset_as_yolo_obb_round_trip_corner_accuracy": {"executed_lines": [683, 684, 685, 686, 688, 689, 690, 692, 699, 700, 706, 712, 713, 714], "summary": {"covered_lines": 14, "num_statements": 14, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 681, "executed_branches": [], "missing_branches": []}, "test_dataset_as_yolo_obb_round_trip_with_background_image": {"executed_lines": [725, 726, 727, 728, 729, 730, 731, 733, 735, 742, 743, 749, 750, 751], "summary": {"covered_lines": 14, "num_statements": 14, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 721, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 6, 7, 8, 10, 11, 12, 21, 24, 32, 40, 66, 74, 198, 216, 229, 237, 268, 281, 336, 351, 363, 386, 412, 442, 443, 471, 491, 536, 564, 576, 584, 620, 642, 649, 681, 721], "summary": {"covered_lines": 39, "num_statements": 39, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 3, 4, 6, 7, 8, 10, 11, 12, 21, 24, 25, 26, 27, 28, 32, 35, 36, 37, 40, 66, 69, 70, 71, 74, 198, 205, 206, 209, 210, 211, 216, 229, 232, 233, 234, 237, 268, 275, 276, 277, 278, 281, 336, 344, 345, 348, 351, 352, 357, 358, 363, 386, 393, 394, 395, 396, 397, 398, 399, 401, 408, 409, 412, 418, 420, 422, 425, 429, 433, 434, 435, 436, 437, 442, 443, 447, 448, 449, 450, 453, 454, 456, 457, 459, 460, 462, 471, 475, 477, 484, 485, 486, 487, 488, 491, 495, 499, 505, 507, 508, 512, 513, 516, 520, 521, 523, 524, 525, 526, 527, 529, 530, 536, 538, 541, 547, 551, 552, 553, 556, 557, 564, 566, 570, 571, 576, 578, 581, 584, 586, 593, 601, 605, 606, 607, 608, 611, 612, 613, 620, 622, 626, 632, 636, 637, 642, 649, 653, 654, 655, 656, 657, 658, 659, 661, 668, 669, 675, 676, 681, 683, 684, 685, 686, 688, 689, 690, 692, 699, 700, 706, 712, 713, 714, 721, 725, 726, 727, 728, 729, 730, 731, 733, 735, 742, 743, 749, 750, 751], "summary": {"covered_lines": 190, "num_statements": 190, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [[606, 607], [606, 611]], "missing_branches": []}}}, "tests\\dataset\\test_core.py": {"executed_lines": [1, 3, 4, 6, 7, 9, 10, 11, 14, 178, 190, 191, 192, 195, 198, 200, 210, 211, 212, 217, 219, 224, 225, 226, 228, 230, 235, 237, 239, 246, 253, 257, 258, 259, 263, 264, 265, 269, 271, 274, 280, 281, 282, 283, 284], "summary": {"covered_lines": 45, "num_statements": 45, "percent_covered": 97.95918367346938, "percent_covered_display": "98", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [[280, -269], [280, 281], [281, 282]], "missing_branches": [[281, 280]], "functions": {"test_dataset_merge": {"executed_lines": [190, 191, 192], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 178, "executed_branches": [], "missing_branches": []}, "TestClassNamePopulation.test_class_name_populated_on_init": {"executed_lines": [200, 210, 211, 212], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 198, "executed_branches": [], "missing_branches": []}, "TestClassNamePopulation.test_class_name_with_empty_annotations": {"executed_lines": [219, 224, 225, 226], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 217, "executed_branches": [], "missing_branches": []}, "TestClassNamePopulation.test_class_name_with_empty_classes": {"executed_lines": [230, 235], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 228, "executed_branches": [], "missing_branches": []}, "TestClassNamePopulation.test_class_name_after_merge": {"executed_lines": [239, 246, 253, 257, 258, 259, 263, 264, 265], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 237, "executed_branches": [], "missing_branches": []}, "TestClassNamePopulation.test_class_name_from_yolo": {"executed_lines": [271, 274, 280, 281, 282, 283, 284], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 90.9090909090909, "percent_covered_display": "91", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [], "excluded_lines": [], "start_line": 269, "executed_branches": [[280, -269], [280, 281], [281, 282]], "missing_branches": [[281, 280]]}, "": {"executed_lines": [1, 3, 4, 6, 7, 9, 10, 11, 14, 178, 195, 198, 217, 228, 237, 269], "summary": {"covered_lines": 16, "num_statements": 16, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"TestClassNamePopulation": {"executed_lines": [200, 210, 211, 212, 219, 224, 225, 226, 230, 235, 239, 246, 253, 257, 258, 259, 263, 264, 265, 271, 274, 280, 281, 282, 283, 284], "summary": {"covered_lines": 26, "num_statements": 26, "percent_covered": 96.66666666666667, "percent_covered_display": "97", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [], "excluded_lines": [], "start_line": 195, "executed_branches": [[280, -269], [280, 281], [281, 282]], "missing_branches": [[281, 280]]}, "": {"executed_lines": [1, 3, 4, 6, 7, 9, 10, 11, 14, 178, 190, 191, 192, 195, 198, 217, 228, 237, 269], "summary": {"covered_lines": 19, "num_statements": 19, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\dataset\\test_utils.py": {"executed_lines": [1, 3, 4, 6, 8, 9, 15, 17, 20, 74, 82, 83, 89, 92, 118, 121, 122, 123, 126, 163, 169, 170, 173, 176, 223, 229, 230, 233], "summary": {"covered_lines": 28, "num_statements": 28, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"test_train_test_split": {"executed_lines": [82, 83, 89], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 74, "executed_branches": [], "missing_branches": []}, "test_merge_class_maps": {"executed_lines": [121, 122, 123], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 118, "executed_branches": [], "missing_branches": []}, "test_build_class_index_mapping": {"executed_lines": [169, 170, 173], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 163, "executed_branches": [], "missing_branches": []}, "test_map_detections_class_id": {"executed_lines": [229, 230, 233], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 223, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 6, 8, 9, 15, 17, 20, 74, 92, 118, 126, 163, 176, 223], "summary": {"covered_lines": 16, "num_statements": 16, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 3, 4, 6, 8, 9, 15, 17, 20, 74, 82, 83, 89, 92, 118, 121, 122, 123, 126, 163, 169, 170, 173, 176, 223, 229, 230, 233], "summary": {"covered_lines": 28, "num_statements": 28, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\detection\\__init__.py": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\detection\\test_compact_mask.py": {"executed_lines": [3, 5, 7, 8, 10, 14, 20, 28, 30, 31, 32, 33, 36, 45, 64, 68, 69, 70, 71, 73, 74, 75, 76, 80, 89, 91, 92, 94, 113, 117, 119, 128, 130, 133, 141, 149, 150, 151, 152, 153, 154, 156, 158, 159, 160, 162, 163, 165, 168, 178, 179, 180, 181, 182, 184, 185, 186, 187, 188, 190, 191, 192, 193, 194, 199, 201, 202, 203, 204, 205, 207, 208, 209, 210, 212, 213, 214, 216, 217, 218, 219, 220, 222, 223, 224, 225, 226, 227, 229, 231, 232, 233, 234, 236, 237, 238, 239, 240, 243, 251, 252, 253, 254, 256, 257, 258, 259, 261, 262, 268, 270, 271, 272, 274, 275, 276, 277, 278, 280, 281, 283, 284, 290, 293, 301, 302, 303, 304, 305, 306, 308, 309, 310, 313, 320, 321, 322, 323, 324, 326, 327, 328, 330, 331, 332, 333, 334, 335, 338, 347, 348, 349, 350, 351, 352, 354, 355, 356, 357, 361, 362, 363, 369, 370, 372, 373, 375, 376, 377, 379, 380, 386, 392, 393, 396, 403, 404, 405, 406, 407, 408, 410, 411, 412, 413, 414, 415, 416, 417, 419, 420, 421, 422, 423, 426, 435, 437, 438, 439, 440, 441, 443, 444, 445, 446, 447, 448, 449, 451, 453, 454, 455, 456, 457, 458, 459, 461, 462, 468, 469, 470, 472, 473, 474, 475, 476, 478, 479, 480, 481, 482, 483, 485, 486, 487, 488, 490, 492, 493, 494, 495, 496, 498, 499, 500, 506, 508, 510, 511, 512, 513, 514, 516, 517, 518, 524, 526, 528, 529, 530, 533, 534, 537, 539, 542, 543, 545, 547, 549, 550, 551, 553, 554, 555, 557, 558, 559, 561, 563, 569, 570, 571, 573, 575, 576, 577, 580, 581, 582, 584, 585, 586, 589, 596, 598, 599, 600, 602, 603, 605, 607, 608, 610, 612, 614, 615, 616, 618, 619, 621, 623, 625, 626, 627, 628, 630, 631, 633, 635, 637, 643, 644, 647, 655, 680, 684, 685, 686, 688, 689, 690, 693, 700, 734, 738, 739, 740, 742, 743, 744, 745, 753, 767, 781, 782, 783, 784, 785, 786, 787, 789, 790, 791, 793, 794, 797, 804, 805, 806, 807, 808, 809, 810, 819, 820, 822, 823, 824, 825, 826, 827, 829, 830, 832, 833, 834, 835, 836, 837, 844, 847, 848, 849, 850, 851, 852, 854, 855, 863, 864, 866, 867, 868, 869, 870, 873, 876, 877, 878, 879, 880, 881, 883, 885, 886, 888, 889, 891, 892, 893, 899, 900, 902, 903, 904, 905, 907, 908, 912, 913, 914, 921, 924, 925, 926, 928, 929, 930, 931, 934, 935, 937, 938, 944, 953, 954, 956, 957, 958, 959, 960, 962, 963, 964, 966, 967, 969, 971, 972, 973, 975, 982, 985, 987, 989, 990, 991, 992, 994, 996, 998, 999, 1000, 1001, 1003, 1005, 1007, 1008, 1009, 1010, 1012, 1013, 1015, 1020, 1021, 1022, 1023, 1024, 1025, 1027, 1028, 1029, 1032, 1033, 1034, 1040, 1048, 1053, 1054, 1055, 1059, 1062, 1069, 1092, 1100, 1101, 1102, 1103, 1104, 1106, 1108, 1110, 1111, 1112, 1113, 1114, 1115, 1116, 1117, 1119, 1121, 1122, 1123, 1124, 1126, 1128, 1129, 1130, 1131, 1132, 1134, 1136, 1137, 1138, 1140, 1142, 1143, 1145, 1154, 1156, 1157, 1158, 1159, 1161, 1162, 1164, 1166, 1167, 1168, 1169, 1170, 1171, 1172, 1173, 1174, 1176, 1178, 1179, 1180, 1181, 1182, 1183, 1184, 1185, 1187, 1189, 1190, 1191, 1192, 1194, 1196, 1197, 1198, 1199, 1200, 1202, 1203, 1205, 1207, 1208, 1209, 1210, 1211, 1212, 1214, 1215, 1217, 1218, 1223, 1224, 1225, 1231, 1239, 1241, 1243, 1252, 1253, 1254, 1255, 1257, 1259, 1261, 1263, 1270, 1271, 1272, 1274, 1277, 1279, 1281, 1283, 1285, 1294, 1295, 1296, 1298, 1301, 1303, 1305, 1307, 1309, 1310, 1311, 1312, 1313, 1314, 1316, 1319, 1321, 1330, 1334, 1336, 1337, 1338, 1339, 1340, 1342, 1351, 1355, 1357, 1358, 1359, 1360, 1361, 1363, 1365, 1367, 1369, 1370, 1371, 1372, 1373, 1375, 1378, 1380, 1381, 1383, 1385, 1387, 1388, 1389, 1390, 1391, 1393, 1394, 1395, 1396, 1398, 1403, 1404, 1410, 1419, 1423, 1425, 1427, 1428, 1429, 1430, 1431, 1433, 1438, 1440, 1449, 1453, 1455, 1457, 1458, 1459, 1460, 1461, 1463, 1468, 1470, 1477, 1484, 1486, 1487, 1488, 1489, 1491, 1492, 1494, 1496, 1498, 1499, 1500, 1501, 1502, 1504, 1506, 1507, 1508, 1510, 1516, 1518, 1522, 1524, 1526, 1527, 1528, 1529, 1530, 1535, 1536, 1537, 1540, 1541, 1544, 1547, 1549, 1550, 1551, 1552, 1553, 1554, 1555, 1556, 1558, 1559, 1561, 1562, 1564, 1565, 1567, 1569, 1570, 1571, 1572, 1574, 1575, 1576, 1577, 1578, 1579, 1580, 1582, 1583, 1585, 1586, 1587, 1590, 1591], "summary": {"covered_lines": 752, "num_statements": 752, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 32, "num_partial_branches": 0, "covered_branches": 32, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [[68, 69], [68, 73], [193, 194], [193, 199], [602, 603], [602, 605], [782, 783], [782, 793], [789, 790], [789, 791], [836, -829], [836, 837], [885, 886], [885, 888], [972, 973], [972, 975], [1028, 1029], [1028, 1032], [1131, -1119], [1131, 1132], [1181, -1164], [1181, 1182], [1217, -1202], [1217, 1218], [1491, 1492], [1491, 1494], [1552, 1553], [1552, 1555], [1564, -1547], [1564, 1565], [1576, 1577], [1576, 1579]], "missing_branches": [], "functions": {"_make_cm": {"executed_lines": [30, 31, 32, 33], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 28, "executed_branches": [], "missing_branches": []}, "TestRleHelpers.test_encode_decode_round_trip": {"executed_lines": [68, 69, 70, 71, 73, 74, 75, 76], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 64, "executed_branches": [[68, 69], [68, 73]], "missing_branches": []}, "TestRleHelpers.test_area_matches_numpy_sum": {"executed_lines": [91, 92], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 89, "executed_branches": [], "missing_branches": []}, "TestRleHelpers.test_encode_matches_coco_f_order": {"executed_lines": [117], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 113, "executed_branches": [], "missing_branches": []}, "TestRleHelpers.test_encode_agrees_with_mask_to_rle": {"executed_lines": [130], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 128, "executed_branches": [], "missing_branches": []}, "TestFromDenseToDense.test_round_trip": {"executed_lines": [150, 151, 152, 153, 154], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 149, "executed_branches": [], "missing_branches": []}, "TestFromDenseToDense.test_round_trip_with_mask_to_xyxy": {"executed_lines": [158, 159, 160, 162, 163, 165], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 156, "executed_branches": [], "missing_branches": []}, "TestGetItem.test_int_returns_2d_dense": {"executed_lines": [179, 180, 181, 182, 184, 185, 186, 187, 188], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 178, "executed_branches": [], "missing_branches": []}, "TestGetItem.test_list_returns_compact_mask": {"executed_lines": [191, 192, 193, 194, 199, 201, 202, 203, 204, 205], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 190, "executed_branches": [[193, 194], [193, 199]], "missing_branches": []}, "TestGetItem.test_slice_returns_compact_mask": {"executed_lines": [208, 209, 210, 212, 213, 214], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 207, "executed_branches": [], "missing_branches": []}, "TestGetItem.test_bool_ndarray": {"executed_lines": [217, 218, 219, 220, 222, 223, 224, 225, 226, 227], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 216, "executed_branches": [], "missing_branches": []}, "TestGetItem.test_bool_list": {"executed_lines": [231, 232, 233, 234, 236, 237, 238, 239, 240], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 229, "executed_branches": [], "missing_branches": []}, "TestProperties.test_len": {"executed_lines": [252, 253, 254], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 251, "executed_branches": [], "missing_branches": []}, "TestProperties.test_shape": {"executed_lines": [257, 258, 259], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 256, "executed_branches": [], "missing_branches": []}, "TestProperties.test_shape_empty": {"executed_lines": [262, 268], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 261, "executed_branches": [], "missing_branches": []}, "TestProperties.test_dtype": {"executed_lines": [271, 272], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 270, "executed_branches": [], "missing_branches": []}, "TestProperties.test_area_matches_dense": {"executed_lines": [275, 276, 277, 278, 280, 281], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 274, "executed_branches": [], "missing_branches": []}, "TestProperties.test_area_empty": {"executed_lines": [284, 290], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 283, "executed_branches": [], "missing_branches": []}, "TestCrop.test_returns_crop_shape": {"executed_lines": [302, 303, 304, 305, 306, 308, 309, 310], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 301, "executed_branches": [], "missing_branches": []}, "TestArrayProtocol.test_array_protocol": {"executed_lines": [321, 322, 323, 324, 326, 327, 328], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 320, "executed_branches": [], "missing_branches": []}, "TestArrayProtocol.test_dtype_cast": {"executed_lines": [331, 332, 333, 334, 335], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 330, "executed_branches": [], "missing_branches": []}, "TestMerge.test_merge": {"executed_lines": [348, 349, 350, 351, 352, 354, 355, 356, 357], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 347, "executed_branches": [], "missing_branches": []}, "TestMerge.test_merge_with_empty": {"executed_lines": [362, 363, 369, 370, 372, 373], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 361, "executed_branches": [], "missing_branches": []}, "TestMerge.test_merge_empty_list_raises": {"executed_lines": [376, 377], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 375, "executed_branches": [], "missing_branches": []}, "TestMerge.test_merge_mismatched_image_shape_raises": {"executed_lines": [380, 386, 392, 393], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 379, "executed_branches": [], "missing_branches": []}, "TestEquality.test_eq_identical": {"executed_lines": [404, 405, 406, 407, 408], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 403, "executed_branches": [], "missing_branches": []}, "TestEquality.test_eq_different": {"executed_lines": [411, 412, 413, 414, 415, 416, 417], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 410, "executed_branches": [], "missing_branches": []}, "TestEquality.test_eq_with_dense_array": {"executed_lines": [420, 421, 422, 423], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 419, "executed_branches": [], "missing_branches": []}, "TestEdgeCases.test_zero_area_mask_clipped_to_1x1": {"executed_lines": [437, 438, 439, 440, 441], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 435, "executed_branches": [], "missing_branches": []}, "TestEdgeCases.test_mask_at_image_boundary": {"executed_lines": [444, 445, 446, 447, 448, 449], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 443, "executed_branches": [], "missing_branches": []}, "TestEdgeCases.test_xyxy_beyond_image_clipped": {"executed_lines": [453, 454, 455, 456, 457, 458, 459], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 451, "executed_branches": [], "missing_branches": []}, "TestEdgeCases.test_empty_compact_mask_to_dense": {"executed_lines": [462, 468, 469, 470], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 461, "executed_branches": [], "missing_branches": []}, "TestEdgeCases.test_sum_axis_1_2_equals_area": {"executed_lines": [473, 474, 475, 476], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 472, "executed_branches": [], "missing_branches": []}, "TestEdgeCases.test_with_offset": {"executed_lines": [479, 480, 481, 482, 483, 485, 486, 487, 488], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 478, "executed_branches": [], "missing_branches": []}, "TestEdgeCases.test_with_offset_clips_partial_overlap_like_move_masks": {"executed_lines": [492, 493, 494, 495, 496, 498, 499, 500, 506], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 490, "executed_branches": [], "missing_branches": []}, "TestEdgeCases.test_with_offset_clips_full_outside_like_move_masks": {"executed_lines": [510, 511, 512, 513, 514, 516, 517, 518, 524], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 508, "executed_branches": [], "missing_branches": []}, "TestEdgeCases.test_repack_tightens_loose_bbox": {"executed_lines": [528, 529, 530, 533, 534, 537, 539, 542, 543, 545], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 526, "executed_branches": [], "missing_branches": []}, "TestEdgeCases.test_repack_preserves_all_false_mask": {"executed_lines": [549, 550, 551, 553, 554, 555, 557, 558, 559], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 547, "executed_branches": [], "missing_branches": []}, "TestEdgeCases.test_repack_empty_collection": {"executed_lines": [563, 569, 570, 571], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 561, "executed_branches": [], "missing_branches": []}, "TestEdgeCases.test_repack_already_tight": {"executed_lines": [575, 576, 577, 580, 581, 582, 584, 585, 586], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 573, "executed_branches": [], "missing_branches": []}, "TestCalculateMasksCentroidsCompact.test_centroids_compact_matches_dense": {"executed_lines": [598, 599, 600, 602, 603, 605, 607, 608, 610], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 596, "executed_branches": [[602, 603], [602, 605]], "missing_branches": []}, "TestCalculateMasksCentroidsCompact.test_centroids_empty_mask": {"executed_lines": [614, 615, 616, 618, 619, 621], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 612, "executed_branches": [], "missing_branches": []}, "TestCalculateMasksCentroidsCompact.test_centroids_empty_mask_with_tight_bbox": {"executed_lines": [625, 626, 627, 628, 630, 631, 633], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 623, "executed_branches": [], "missing_branches": []}, "TestCalculateMasksCentroidsCompact.test_centroids_zero_masks_returns_empty": {"executed_lines": [637, 643, 644], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 635, "executed_branches": [], "missing_branches": []}, "TestContainsHolesCompact.test_contains_holes_compact_roundtrip": {"executed_lines": [684, 685, 686, 688, 689, 690], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 680, "executed_branches": [], "missing_branches": []}, "TestContainsMultipleSegmentsCompact.test_contains_multiple_segments_compact_roundtrip": {"executed_lines": [738, 739, 740, 742, 743, 744, 745], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 734, "executed_branches": [], "missing_branches": []}, "_random_masks_and_xyxy": {"executed_lines": [781, 782, 783, 784, 785, 786, 787, 789, 790, 791, 793, 794], "summary": {"covered_lines": 12, "num_statements": 12, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 767, "executed_branches": [[782, 783], [782, 793], [789, 790], [789, 791]], "missing_branches": []}, "TestCompactMaskRoundtripRandom.test_parity_seed": {"executed_lines": [806, 807, 808, 809, 810], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 805, "executed_branches": [], "missing_branches": []}, "TestCompactMaskRoundtripRandom.test_shape_and_len": {"executed_lines": [822, 823, 824, 825, 826, 827], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 820, "executed_branches": [], "missing_branches": []}, "TestCompactMaskRoundtripRandom.test_individual_mask_access": {"executed_lines": [832, 833, 834, 835, 836, 837], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 830, "executed_branches": [[836, -829], [836, 837]], "missing_branches": []}, "TestCompactMaskAreaRandom.test_parity_seed": {"executed_lines": [849, 850, 851, 852, 854, 855], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 848, "executed_branches": [], "missing_branches": []}, "TestCompactMaskAreaRandom.test_sum_axis_matches_area": {"executed_lines": [866, 867, 868, 869, 870], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 864, "executed_branches": [], "missing_branches": []}, "TestCompactMaskFilterRandom.test_parity_seed": {"executed_lines": [878, 879, 880, 881, 883, 885, 886, 888, 889, 891, 892, 893], "summary": {"covered_lines": 12, "num_statements": 12, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 877, "executed_branches": [[885, 886], [885, 888]], "missing_branches": []}, "TestCompactMaskFilterRandom.test_list_index": {"executed_lines": [902, 903, 904, 905, 907, 908, 912, 913, 914], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 900, "executed_branches": [], "missing_branches": []}, "TestCompactMaskWithOffsetRandom.test_parity_seed": {"executed_lines": [926, 928, 929, 930, 931, 934, 935, 937, 938, 944], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 925, "executed_branches": [], "missing_branches": []}, "TestCompactMaskWithOffsetRandom.test_offset_into_larger_canvas": {"executed_lines": [956, 957, 958, 959, 960, 962, 963, 964, 966, 967, 969, 971, 972, 973, 975], "summary": {"covered_lines": 15, "num_statements": 15, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 954, "executed_branches": [[972, 973], [972, 975]], "missing_branches": []}, "TestRleSplitCols.test_all_true_2x2": {"executed_lines": [987, 989, 990, 991, 992], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 985, "executed_branches": [], "missing_branches": []}, "TestRleSplitCols.test_all_false_3x3": {"executed_lines": [996, 998, 999, 1000, 1001], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 994, "executed_branches": [], "missing_branches": []}, "TestRleSplitCols.test_mixed_2x2": {"executed_lines": [1005, 1007, 1008, 1009, 1010], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1003, "executed_branches": [], "missing_branches": []}, "TestRleSplitCols.test_round_trip_random": {"executed_lines": [1015, 1020, 1021, 1022, 1023, 1024, 1025, 1027, 1028, 1029, 1032, 1033, 1034], "summary": {"covered_lines": 13, "num_statements": 13, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1013, "executed_branches": [[1028, 1029], [1028, 1032]], "missing_branches": []}, "TestRleSplitCols.test_join_true_true_junction_no_zero_run": {"executed_lines": [1048, 1053, 1054, 1055, 1059], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1040, "executed_branches": [], "missing_branches": []}, "TestCompactMaskResize.test_scale_shape_and_offsets": {"executed_lines": [1100, 1101, 1102, 1103, 1104, 1106, 1108, 1110, 1111, 1112, 1113, 1114, 1115, 1116, 1117], "summary": {"covered_lines": 15, "num_statements": 15, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1092, "executed_branches": [], "missing_branches": []}, "TestCompactMaskResize.test_identity_preserves_rle": {"executed_lines": [1121, 1122, 1123, 1124, 1126, 1128, 1129, 1130, 1131, 1132], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1119, "executed_branches": [[1131, -1119], [1131, 1132]], "missing_branches": []}, "TestCompactMaskResize.test_empty_n0": {"executed_lines": [1136, 1137, 1138, 1140, 1142, 1143], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1134, "executed_branches": [], "missing_branches": []}, "TestCompactMaskResize.test_invalid_dimensions_raises": {"executed_lines": [1156, 1157, 1158, 1159, 1161, 1162], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1154, "executed_branches": [], "missing_branches": []}, "TestCompactMaskResize.test_multi_mask_each_scales_independently": {"executed_lines": [1166, 1167, 1168, 1169, 1170, 1171, 1172, 1173, 1174, 1176, 1178, 1179, 1180, 1181, 1182, 1183, 1184, 1185], "summary": {"covered_lines": 18, "num_statements": 18, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1164, "executed_branches": [[1181, -1164], [1181, 1182]], "missing_branches": []}, "TestCompactMaskResize.test_zero_extent_extreme_downscale": {"executed_lines": [1189, 1190, 1191, 1192, 1194, 1196, 1197, 1198, 1199, 1200], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1187, "executed_branches": [], "missing_branches": []}, "TestCompactMaskResize.test_dense_parity_roundtrip": {"executed_lines": [1205, 1207, 1208, 1209, 1210, 1211, 1212, 1214, 1215, 1217, 1218, 1223, 1224, 1225], "summary": {"covered_lines": 14, "num_statements": 14, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1203, "executed_branches": [[1217, -1202], [1217, 1218]], "missing_branches": []}, "TestRleResize.test_identity_4x4": {"executed_lines": [1241, 1243, 1252, 1253, 1254, 1255], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1239, "executed_branches": [], "missing_branches": []}, "TestRleResize.test_2x_upscale": {"executed_lines": [1259, 1261, 1263, 1270, 1271, 1272, 1274, 1277], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1257, "executed_branches": [], "missing_branches": []}, "TestRleResize.test_2x_downscale": {"executed_lines": [1281, 1283, 1285, 1294, 1295, 1296, 1298, 1301], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1279, "executed_branches": [], "missing_branches": []}, "TestRleResize.test_non_square_scale": {"executed_lines": [1305, 1307, 1309, 1310, 1311, 1312, 1313, 1314, 1316, 1319], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1303, "executed_branches": [], "missing_branches": []}, "TestRleResize.test_all_false": {"executed_lines": [1334, 1336, 1337, 1338, 1339, 1340], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1330, "executed_branches": [], "missing_branches": []}, "TestRleResize.test_all_true": {"executed_lines": [1355, 1357, 1358, 1359, 1360, 1361], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1351, "executed_branches": [], "missing_branches": []}, "TestRleResize.test_single_pixel_true_upscale": {"executed_lines": [1365, 1367, 1369, 1370, 1371, 1372, 1373, 1375, 1378], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1363, "executed_branches": [], "missing_branches": []}, "TestRleResize.test_roundtrip_parity_with_cv2": {"executed_lines": [1383, 1385, 1387, 1388, 1389, 1390, 1391, 1393, 1394, 1395, 1396, 1398, 1403, 1404], "summary": {"covered_lines": 14, "num_statements": 14, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1381, "executed_branches": [], "missing_branches": []}, "TestRleResize.test_tall_and_wide_crops": {"executed_lines": [1423, 1425, 1427, 1428, 1429, 1430, 1431, 1433, 1438], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1419, "executed_branches": [], "missing_branches": []}, "TestRleResize.test_prime_sized_crops": {"executed_lines": [1453, 1455, 1457, 1458, 1459, 1460, 1461, 1463, 1468], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1449, "executed_branches": [], "missing_branches": []}, "TestRleResize.test_large_scale_ratio": {"executed_lines": [1484, 1486, 1487, 1488, 1489, 1491, 1492, 1494], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1477, "executed_branches": [[1491, 1492], [1491, 1494]], "missing_branches": []}, "TestRleResize.test_resize_dispatch_uses_l3_for_sparse": {"executed_lines": [1498, 1499, 1500, 1501, 1502, 1504, 1506, 1507, 1508], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1496, "executed_branches": [], "missing_branches": []}, "TestRleResize.test_resize_dispatch_uses_cv2_for_dense": {"executed_lines": [1516, 1518, 1522, 1524, 1526, 1527, 1528, 1529, 1530, 1535, 1536, 1537, 1540, 1541], "summary": {"covered_lines": 14, "num_statements": 14, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1510, "executed_branches": [], "missing_branches": []}, "TestResizeParallelPath.test_parallel_resize_correctness": {"executed_lines": [1549, 1550, 1551, 1552, 1553, 1554, 1555, 1556, 1558, 1559, 1561, 1562, 1564, 1565], "summary": {"covered_lines": 14, "num_statements": 14, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1547, "executed_branches": [[1552, 1553], [1552, 1555], [1564, -1547], [1564, 1565]], "missing_branches": []}, "TestResizeParallelPath.test_parallel_matches_sequential": {"executed_lines": [1569, 1570, 1571, 1572, 1574, 1582, 1583, 1585, 1586, 1587, 1590, 1591], "summary": {"covered_lines": 12, "num_statements": 12, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1567, "executed_branches": [], "missing_branches": []}, "TestResizeParallelPath.test_parallel_matches_sequential._make_masks": {"executed_lines": [1575, 1576, 1577, 1578, 1579, 1580], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1574, "executed_branches": [[1576, 1577], [1576, 1579]], "missing_branches": []}, "": {"executed_lines": [3, 5, 7, 8, 10, 14, 20, 28, 36, 45, 64, 80, 89, 94, 113, 119, 128, 133, 141, 149, 156, 168, 178, 190, 207, 216, 229, 243, 251, 256, 261, 270, 274, 283, 293, 301, 313, 320, 330, 338, 347, 361, 375, 379, 396, 403, 410, 419, 426, 435, 443, 451, 461, 472, 478, 490, 508, 526, 547, 561, 573, 589, 596, 612, 623, 635, 647, 655, 680, 693, 700, 734, 753, 767, 797, 804, 805, 819, 820, 829, 830, 844, 847, 848, 863, 864, 873, 876, 877, 899, 900, 921, 924, 925, 953, 954, 982, 985, 994, 1003, 1012, 1013, 1040, 1062, 1069, 1092, 1119, 1134, 1145, 1154, 1164, 1187, 1202, 1203, 1231, 1239, 1257, 1279, 1303, 1321, 1330, 1342, 1351, 1363, 1380, 1381, 1410, 1419, 1440, 1449, 1470, 1477, 1496, 1510, 1544, 1547, 1567], "summary": {"covered_lines": 137, "num_statements": 137, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"TestRleHelpers": {"executed_lines": [68, 69, 70, 71, 73, 74, 75, 76, 91, 92, 117, 130], "summary": {"covered_lines": 12, "num_statements": 12, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 36, "executed_branches": [[68, 69], [68, 73]], "missing_branches": []}, "TestFromDenseToDense": {"executed_lines": [150, 151, 152, 153, 154, 158, 159, 160, 162, 163, 165], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 133, "executed_branches": [], "missing_branches": []}, "TestGetItem": {"executed_lines": [179, 180, 181, 182, 184, 185, 186, 187, 188, 191, 192, 193, 194, 199, 201, 202, 203, 204, 205, 208, 209, 210, 212, 213, 214, 217, 218, 219, 220, 222, 223, 224, 225, 226, 227, 231, 232, 233, 234, 236, 237, 238, 239, 240], "summary": {"covered_lines": 44, "num_statements": 44, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 168, "executed_branches": [[193, 194], [193, 199]], "missing_branches": []}, "TestProperties": {"executed_lines": [252, 253, 254, 257, 258, 259, 262, 268, 271, 272, 275, 276, 277, 278, 280, 281, 284, 290], "summary": {"covered_lines": 18, "num_statements": 18, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 243, "executed_branches": [], "missing_branches": []}, "TestCrop": {"executed_lines": [302, 303, 304, 305, 306, 308, 309, 310], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 293, "executed_branches": [], "missing_branches": []}, "TestArrayProtocol": {"executed_lines": [321, 322, 323, 324, 326, 327, 328, 331, 332, 333, 334, 335], "summary": {"covered_lines": 12, "num_statements": 12, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 313, "executed_branches": [], "missing_branches": []}, "TestMerge": {"executed_lines": [348, 349, 350, 351, 352, 354, 355, 356, 357, 362, 363, 369, 370, 372, 373, 376, 377, 380, 386, 392, 393], "summary": {"covered_lines": 21, "num_statements": 21, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 338, "executed_branches": [], "missing_branches": []}, "TestEquality": {"executed_lines": [404, 405, 406, 407, 408, 411, 412, 413, 414, 415, 416, 417, 420, 421, 422, 423], "summary": {"covered_lines": 16, "num_statements": 16, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 396, "executed_branches": [], "missing_branches": []}, "TestEdgeCases": {"executed_lines": [437, 438, 439, 440, 441, 444, 445, 446, 447, 448, 449, 453, 454, 455, 456, 457, 458, 459, 462, 468, 469, 470, 473, 474, 475, 476, 479, 480, 481, 482, 483, 485, 486, 487, 488, 492, 493, 494, 495, 496, 498, 499, 500, 506, 510, 511, 512, 513, 514, 516, 517, 518, 524, 528, 529, 530, 533, 534, 537, 539, 542, 543, 545, 549, 550, 551, 553, 554, 555, 557, 558, 559, 563, 569, 570, 571, 575, 576, 577, 580, 581, 582, 584, 585, 586], "summary": {"covered_lines": 85, "num_statements": 85, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 426, "executed_branches": [], "missing_branches": []}, "TestCalculateMasksCentroidsCompact": {"executed_lines": [598, 599, 600, 602, 603, 605, 607, 608, 610, 614, 615, 616, 618, 619, 621, 625, 626, 627, 628, 630, 631, 633, 637, 643, 644], "summary": {"covered_lines": 25, "num_statements": 25, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 589, "executed_branches": [[602, 603], [602, 605]], "missing_branches": []}, "TestContainsHolesCompact": {"executed_lines": [684, 685, 686, 688, 689, 690], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 647, "executed_branches": [], "missing_branches": []}, "TestContainsMultipleSegmentsCompact": {"executed_lines": [738, 739, 740, 742, 743, 744, 745], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 693, "executed_branches": [], "missing_branches": []}, "TestCompactMaskRoundtripRandom": {"executed_lines": [806, 807, 808, 809, 810, 822, 823, 824, 825, 826, 827, 832, 833, 834, 835, 836, 837], "summary": {"covered_lines": 17, "num_statements": 17, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 797, "executed_branches": [[836, -829], [836, 837]], "missing_branches": []}, "TestCompactMaskAreaRandom": {"executed_lines": [849, 850, 851, 852, 854, 855, 866, 867, 868, 869, 870], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 844, "executed_branches": [], "missing_branches": []}, "TestCompactMaskFilterRandom": {"executed_lines": [878, 879, 880, 881, 883, 885, 886, 888, 889, 891, 892, 893, 902, 903, 904, 905, 907, 908, 912, 913, 914], "summary": {"covered_lines": 21, "num_statements": 21, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 873, "executed_branches": [[885, 886], [885, 888]], "missing_branches": []}, "TestCompactMaskWithOffsetRandom": {"executed_lines": [926, 928, 929, 930, 931, 934, 935, 937, 938, 944, 956, 957, 958, 959, 960, 962, 963, 964, 966, 967, 969, 971, 972, 973, 975], "summary": {"covered_lines": 25, "num_statements": 25, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 921, "executed_branches": [[972, 973], [972, 975]], "missing_branches": []}, "TestRleSplitCols": {"executed_lines": [987, 989, 990, 991, 992, 996, 998, 999, 1000, 1001, 1005, 1007, 1008, 1009, 1010, 1015, 1020, 1021, 1022, 1023, 1024, 1025, 1027, 1028, 1029, 1032, 1033, 1034, 1048, 1053, 1054, 1055, 1059], "summary": {"covered_lines": 33, "num_statements": 33, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 982, "executed_branches": [[1028, 1029], [1028, 1032]], "missing_branches": []}, "TestCompactMaskResize": {"executed_lines": [1100, 1101, 1102, 1103, 1104, 1106, 1108, 1110, 1111, 1112, 1113, 1114, 1115, 1116, 1117, 1121, 1122, 1123, 1124, 1126, 1128, 1129, 1130, 1131, 1132, 1136, 1137, 1138, 1140, 1142, 1143, 1156, 1157, 1158, 1159, 1161, 1162, 1166, 1167, 1168, 1169, 1170, 1171, 1172, 1173, 1174, 1176, 1178, 1179, 1180, 1181, 1182, 1183, 1184, 1185, 1189, 1190, 1191, 1192, 1194, 1196, 1197, 1198, 1199, 1200, 1205, 1207, 1208, 1209, 1210, 1211, 1212, 1214, 1215, 1217, 1218, 1223, 1224, 1225], "summary": {"covered_lines": 79, "num_statements": 79, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 6, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1062, "executed_branches": [[1131, -1119], [1131, 1132], [1181, -1164], [1181, 1182], [1217, -1202], [1217, 1218]], "missing_branches": []}, "TestRleResize": {"executed_lines": [1241, 1243, 1252, 1253, 1254, 1255, 1259, 1261, 1263, 1270, 1271, 1272, 1274, 1277, 1281, 1283, 1285, 1294, 1295, 1296, 1298, 1301, 1305, 1307, 1309, 1310, 1311, 1312, 1313, 1314, 1316, 1319, 1334, 1336, 1337, 1338, 1339, 1340, 1355, 1357, 1358, 1359, 1360, 1361, 1365, 1367, 1369, 1370, 1371, 1372, 1373, 1375, 1378, 1383, 1385, 1387, 1388, 1389, 1390, 1391, 1393, 1394, 1395, 1396, 1398, 1403, 1404, 1423, 1425, 1427, 1428, 1429, 1430, 1431, 1433, 1438, 1453, 1455, 1457, 1458, 1459, 1460, 1461, 1463, 1468, 1484, 1486, 1487, 1488, 1489, 1491, 1492, 1494, 1498, 1499, 1500, 1501, 1502, 1504, 1506, 1507, 1508, 1516, 1518, 1522, 1524, 1526, 1527, 1528, 1529, 1530, 1535, 1536, 1537, 1540, 1541], "summary": {"covered_lines": 116, "num_statements": 116, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1231, "executed_branches": [[1491, 1492], [1491, 1494]], "missing_branches": []}, "TestResizeParallelPath": {"executed_lines": [1549, 1550, 1551, 1552, 1553, 1554, 1555, 1556, 1558, 1559, 1561, 1562, 1564, 1565, 1569, 1570, 1571, 1572, 1574, 1575, 1576, 1577, 1578, 1579, 1580, 1582, 1583, 1585, 1586, 1587, 1590, 1591], "summary": {"covered_lines": 32, "num_statements": 32, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 6, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1544, "executed_branches": [[1552, 1553], [1552, 1555], [1564, -1547], [1564, 1565], [1576, 1577], [1576, 1579]], "missing_branches": []}, "": {"executed_lines": [3, 5, 7, 8, 10, 14, 20, 28, 30, 31, 32, 33, 36, 45, 64, 80, 89, 94, 113, 119, 128, 133, 141, 149, 156, 168, 178, 190, 207, 216, 229, 243, 251, 256, 261, 270, 274, 283, 293, 301, 313, 320, 330, 338, 347, 361, 375, 379, 396, 403, 410, 419, 426, 435, 443, 451, 461, 472, 478, 490, 508, 526, 547, 561, 573, 589, 596, 612, 623, 635, 647, 655, 680, 693, 700, 734, 753, 767, 781, 782, 783, 784, 785, 786, 787, 789, 790, 791, 793, 794, 797, 804, 805, 819, 820, 829, 830, 844, 847, 848, 863, 864, 873, 876, 877, 899, 900, 921, 924, 925, 953, 954, 982, 985, 994, 1003, 1012, 1013, 1040, 1062, 1069, 1092, 1119, 1134, 1145, 1154, 1164, 1187, 1202, 1203, 1231, 1239, 1257, 1279, 1303, 1321, 1330, 1342, 1351, 1363, 1380, 1381, 1410, 1419, 1440, 1449, 1470, 1477, 1496, 1510, 1544, 1547, 1567], "summary": {"covered_lines": 153, "num_statements": 153, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [[782, 783], [782, 793], [789, 790], [789, 791]], "missing_branches": []}}}, "tests\\detection\\test_compact_mask_integration.py": {"executed_lines": [3, 5, 7, 8, 10, 11, 12, 15, 17, 20, 28, 29, 30, 31, 32, 38, 41, 49, 50, 51, 52, 53, 55, 56, 57, 58, 59, 60, 61, 64, 71, 72, 74, 75, 76, 78, 79, 80, 81, 82, 83, 85, 86, 87, 88, 89, 90, 91, 94, 102, 103, 104, 105, 106, 107, 108, 109, 110, 113, 120, 121, 122, 123, 124, 130, 133, 140, 141, 142, 143, 146, 156, 157, 158, 160, 161, 162, 163, 164, 171, 172, 173, 174, 175, 177, 179, 180, 181, 182, 183, 190, 191, 192, 194, 195, 197, 198, 199, 200, 201, 202, 209, 210, 211, 212, 213, 220, 221, 222, 225, 234, 235, 236, 237, 244, 245, 247, 248, 250, 256, 257, 259, 260, 261, 262, 263, 265, 266, 268, 269, 271, 272, 274], "summary": {"covered_lines": 133, "num_statements": 133, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [[105, -102], [105, 106]], "missing_branches": [], "functions": {"_full_xyxy": {"executed_lines": [17], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 15, "executed_branches": [], "missing_branches": []}, "_make_compact_detections": {"executed_lines": [28, 29, 30, 31, 32, 38], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 20, "executed_branches": [], "missing_branches": []}, "TestConstruction.test_detections_construction_with_compact_mask": {"executed_lines": [50, 51, 52, 53], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 49, "executed_branches": [], "missing_branches": []}, "TestConstruction.test_detections_compact_mask_validation_mismatch": {"executed_lines": [56, 57, 58, 59, 60, 61], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 55, "executed_branches": [], "missing_branches": []}, "TestFiltering.test_int_wraps_to_compact_mask": {"executed_lines": [72, 74, 75, 76], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 71, "executed_branches": [], "missing_branches": []}, "TestFiltering.test_slice_preserves_compact_mask": {"executed_lines": [79, 80, 81, 82, 83], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 78, "executed_branches": [], "missing_branches": []}, "TestFiltering.test_bool_array_preserves_compact_mask": {"executed_lines": [86, 87, 88, 89, 90, 91], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 85, "executed_branches": [], "missing_branches": []}, "TestIteration.test_iter_yields_2d_dense": {"executed_lines": [103, 104, 105, 106, 107, 108, 109, 110], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 102, "executed_branches": [[105, -102], [105, 106]], "missing_branches": []}, "TestEquality.test_compact_vs_dense": {"executed_lines": [121, 122, 123, 124, 130], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 120, "executed_branches": [], "missing_branches": []}, "TestArea.test_compact_matches_dense": {"executed_lines": [141, 142, 143], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 140, "executed_branches": [], "missing_branches": []}, "TestMerge.test_all_compact": {"executed_lines": [157, 158, 160, 161, 162, 163, 164, 171, 172, 173, 174, 175], "summary": {"covered_lines": 12, "num_statements": 12, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 156, "executed_branches": [], "missing_branches": []}, "TestMerge.test_mixed_compact_and_dense": {"executed_lines": [179, 180, 181, 182, 183, 190, 191, 192], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 177, "executed_branches": [], "missing_branches": []}, "TestMerge.test_inner_pair_with_compact": {"executed_lines": [195, 197, 198, 199, 200, 201, 202, 209, 210, 211, 212, 213, 220, 221, 222], "summary": {"covered_lines": 15, "num_statements": 15, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 194, "executed_branches": [], "missing_branches": []}, "TestAnnotators.test_mask_annotator": {"executed_lines": [235, 236, 237, 244, 245, 247, 248, 250], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 234, "executed_branches": [], "missing_branches": []}, "TestAnnotators.test_polygon_annotator": {"executed_lines": [257, 259, 260, 261, 262, 263, 265, 266, 268, 269, 271, 272, 274], "summary": {"covered_lines": 13, "num_statements": 13, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 256, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [3, 5, 7, 8, 10, 11, 12, 15, 20, 41, 49, 55, 64, 71, 78, 85, 94, 102, 113, 120, 133, 140, 146, 156, 177, 194, 225, 234, 256], "summary": {"covered_lines": 29, "num_statements": 29, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"TestConstruction": {"executed_lines": [50, 51, 52, 53, 56, 57, 58, 59, 60, 61], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 41, "executed_branches": [], "missing_branches": []}, "TestFiltering": {"executed_lines": [72, 74, 75, 76, 79, 80, 81, 82, 83, 86, 87, 88, 89, 90, 91], "summary": {"covered_lines": 15, "num_statements": 15, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 64, "executed_branches": [], "missing_branches": []}, "TestIteration": {"executed_lines": [103, 104, 105, 106, 107, 108, 109, 110], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 94, "executed_branches": [[105, -102], [105, 106]], "missing_branches": []}, "TestEquality": {"executed_lines": [121, 122, 123, 124, 130], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 113, "executed_branches": [], "missing_branches": []}, "TestArea": {"executed_lines": [141, 142, 143], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 133, "executed_branches": [], "missing_branches": []}, "TestMerge": {"executed_lines": [157, 158, 160, 161, 162, 163, 164, 171, 172, 173, 174, 175, 179, 180, 181, 182, 183, 190, 191, 192, 195, 197, 198, 199, 200, 201, 202, 209, 210, 211, 212, 213, 220, 221, 222], "summary": {"covered_lines": 35, "num_statements": 35, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 146, "executed_branches": [], "missing_branches": []}, "TestAnnotators": {"executed_lines": [235, 236, 237, 244, 245, 247, 248, 250, 257, 259, 260, 261, 262, 263, 265, 266, 268, 269, 271, 272, 274], "summary": {"covered_lines": 21, "num_statements": 21, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 225, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [3, 5, 7, 8, 10, 11, 12, 15, 17, 20, 28, 29, 30, 31, 32, 38, 41, 49, 55, 64, 71, 78, 85, 94, 102, 113, 120, 133, 140, 146, 156, 177, 194, 225, 234, 256], "summary": {"covered_lines": 36, "num_statements": 36, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\detection\\test_compact_mask_iou.py": {"executed_lines": [11, 13, 14, 16, 17, 30, 32, 33, 34, 37, 40, 42, 44, 45, 48, 54, 57, 65, 67, 68, 69, 71, 72, 74, 75, 77, 78, 79, 81, 83, 84, 85, 86, 88, 89, 91, 92, 94, 96, 97, 98, 99, 101, 102, 104, 105, 107, 108, 110, 112, 113, 114, 115, 117, 118, 120, 121, 123, 125, 127, 130, 131, 133, 134, 136, 137, 139, 141, 142, 144, 146, 147, 148, 149, 151, 152, 154, 155, 157, 159, 161, 162, 163, 165, 166, 168, 169, 170, 172, 174, 175, 181, 182, 184, 185, 187, 188, 190, 192, 193, 194, 196, 197, 199, 200, 202, 203, 204, 207, 216, 217, 218, 219, 220, 222, 223, 225, 226, 228, 230, 232, 233, 234, 235, 237, 239, 240, 241, 244, 252, 255, 256, 257, 258, 259, 261, 262, 266, 268, 269, 271, 273, 280, 281, 283, 284, 286, 287, 288, 290, 291, 293, 295, 297, 298, 299, 300, 301, 303, 304, 305, 307, 308, 310, 312, 313, 314, 316, 317, 318, 319, 321, 322, 323, 326, 333, 335, 336, 337, 338, 339, 341, 342, 343, 345, 346, 348, 349, 351, 353, 355, 356, 357, 358, 359, 361, 362, 363, 365, 366, 367, 369, 371, 372, 373, 374, 376, 377, 378, 380, 381, 382, 390, 404, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 425, 432, 433, 434, 435, 436, 438, 439, 441, 442, 444, 445, 447, 450, 457, 458, 460, 461, 462, 464, 465, 467, 474, 475, 477, 479, 480, 481, 483, 484, 486, 487, 489, 490, 492, 493, 495], "summary": {"covered_lines": 262, "num_statements": 262, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 6, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [[196, 197], [196, 199], [413, 414], [413, 422], [419, 420], [419, 421]], "missing_branches": [], "functions": {"_cm_from_masks": {"executed_lines": [32, 33, 34, 37], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 30, "executed_branches": [], "missing_branches": []}, "_cm_tight": {"executed_lines": [42, 44, 45], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 40, "executed_branches": [], "missing_branches": []}, "_dense_iou": {"executed_lines": [54], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 48, "executed_branches": [], "missing_branches": []}, "TestCompactMaskIouBatch.test_no_overlap_gives_zero": {"executed_lines": [67, 68, 69, 71, 72, 74, 75, 77, 78, 79], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 65, "executed_branches": [], "missing_branches": []}, "TestCompactMaskIouBatch.test_identical_masks_give_one": {"executed_lines": [83, 84, 85, 86, 88, 89, 91, 92], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 81, "executed_branches": [], "missing_branches": []}, "TestCompactMaskIouBatch.test_matches_dense_random": {"executed_lines": [96, 97, 98, 99, 101, 102, 104, 105, 107, 108], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 94, "executed_branches": [], "missing_branches": []}, "TestCompactMaskIouBatch.test_matches_dense_with_tight_bboxes": {"executed_lines": [112, 113, 114, 115, 117, 118, 120, 121, 123], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 110, "executed_branches": [], "missing_branches": []}, "TestCompactMaskIouBatch.test_partial_overlap": {"executed_lines": [127, 130, 131, 133, 134, 136, 137, 139, 141, 142], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 125, "executed_branches": [], "missing_branches": []}, "TestCompactMaskIouBatch.test_ios_metric": {"executed_lines": [146, 147, 148, 149, 151, 152, 154, 155, 157], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 144, "executed_branches": [], "missing_branches": []}, "TestCompactMaskIouBatch.test_all_false_masks": {"executed_lines": [161, 162, 163, 165, 166, 168, 169, 170], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 159, "executed_branches": [], "missing_branches": []}, "TestCompactMaskIouBatch.test_empty_inputs": {"executed_lines": [174, 175, 181, 182, 184, 185, 187, 188], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 172, "executed_branches": [], "missing_branches": []}, "TestCompactMaskIouBatch.test_n_by_n_pairwise": {"executed_lines": [192, 193, 194, 196, 197, 199, 200, 202, 203, 204], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 190, "executed_branches": [[196, 197], [196, 199]], "missing_branches": []}, "TestMaskIouBatchDispatch.test_both_compact_dispatches_to_rle": {"executed_lines": [217, 218, 219, 220, 222, 223, 225, 226, 228], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 216, "executed_branches": [], "missing_branches": []}, "TestMaskIouBatchDispatch.test_mixed_compact_and_dense": {"executed_lines": [232, 233, 234, 235, 237, 239, 240, 241], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 230, "executed_branches": [], "missing_branches": []}, "TestNmsWithCompactMask.test_nms_compact_matches_dense": {"executed_lines": [255, 256, 257, 258, 259, 261, 262, 266, 268, 269, 271], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 252, "executed_branches": [], "missing_branches": []}, "TestNmsWithCompactMask.test_nms_compact_matches_dense_borderline": {"executed_lines": [280, 281, 283, 284, 286, 287, 288, 290, 291, 293], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 273, "executed_branches": [], "missing_branches": []}, "TestNmsWithCompactMask.test_nms_compact_no_suppression": {"executed_lines": [297, 298, 299, 300, 301, 303, 304, 305, 307, 308], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 295, "executed_branches": [], "missing_branches": []}, "TestNmsWithCompactMask.test_nms_compact_full_suppression": {"executed_lines": [312, 313, 314, 316, 317, 318, 319, 321, 322, 323], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 310, "executed_branches": [], "missing_branches": []}, "TestNmmWithCompactMask.test_nmm_compact_matches_dense": {"executed_lines": [335, 336, 337, 338, 339, 341, 342, 343, 345, 346, 348, 351], "summary": {"covered_lines": 12, "num_statements": 12, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 333, "executed_branches": [], "missing_branches": []}, "TestNmmWithCompactMask.test_nmm_compact_matches_dense.normalise": {"executed_lines": [349], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 348, "executed_branches": [], "missing_branches": []}, "TestNmmWithCompactMask.test_nmm_no_merge": {"executed_lines": [355, 356, 357, 358, 359, 361, 362, 363, 365, 366, 367], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 353, "executed_branches": [], "missing_branches": []}, "TestNmmWithCompactMask.test_nmm_full_merge": {"executed_lines": [371, 372, 373, 374, 376, 377, 378, 380, 381, 382], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 369, "executed_branches": [], "missing_branches": []}, "_random_masks": {"executed_lines": [412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 404, "executed_branches": [[413, 414], [413, 422], [419, 420], [419, 421]], "missing_branches": []}, "TestCompactMaskIouRandom.test_parity_seed": {"executed_lines": [434, 435, 436, 438, 439, 441, 442, 444, 445, 447, 450], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 433, "executed_branches": [], "missing_branches": []}, "TestCompactMaskIouRandom.test_self_iou_diagonal": {"executed_lines": [460, 461, 462, 464, 465, 467], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 458, "executed_branches": [], "missing_branches": []}, "TestCompactMaskIouRandom.test_tight_bbox_parity": {"executed_lines": [477, 479, 480, 481, 483, 484, 486, 487, 489, 490, 492, 493, 495], "summary": {"covered_lines": 13, "num_statements": 13, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 475, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [11, 13, 14, 16, 17, 30, 40, 48, 57, 65, 81, 94, 110, 125, 144, 159, 172, 190, 207, 216, 230, 244, 252, 273, 295, 310, 326, 333, 353, 369, 390, 404, 425, 432, 433, 457, 458, 474, 475], "summary": {"covered_lines": 39, "num_statements": 39, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"TestCompactMaskIouBatch": {"executed_lines": [67, 68, 69, 71, 72, 74, 75, 77, 78, 79, 83, 84, 85, 86, 88, 89, 91, 92, 96, 97, 98, 99, 101, 102, 104, 105, 107, 108, 112, 113, 114, 115, 117, 118, 120, 121, 123, 127, 130, 131, 133, 134, 136, 137, 139, 141, 142, 146, 147, 148, 149, 151, 152, 154, 155, 157, 161, 162, 163, 165, 166, 168, 169, 170, 174, 175, 181, 182, 184, 185, 187, 188, 192, 193, 194, 196, 197, 199, 200, 202, 203, 204], "summary": {"covered_lines": 82, "num_statements": 82, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 57, "executed_branches": [[196, 197], [196, 199]], "missing_branches": []}, "TestMaskIouBatchDispatch": {"executed_lines": [217, 218, 219, 220, 222, 223, 225, 226, 228, 232, 233, 234, 235, 237, 239, 240, 241], "summary": {"covered_lines": 17, "num_statements": 17, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 207, "executed_branches": [], "missing_branches": []}, "TestNmsWithCompactMask": {"executed_lines": [255, 256, 257, 258, 259, 261, 262, 266, 268, 269, 271, 280, 281, 283, 284, 286, 287, 288, 290, 291, 293, 297, 298, 299, 300, 301, 303, 304, 305, 307, 308, 312, 313, 314, 316, 317, 318, 319, 321, 322, 323], "summary": {"covered_lines": 41, "num_statements": 41, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 244, "executed_branches": [], "missing_branches": []}, "TestNmmWithCompactMask": {"executed_lines": [335, 336, 337, 338, 339, 341, 342, 343, 345, 346, 348, 349, 351, 355, 356, 357, 358, 359, 361, 362, 363, 365, 366, 367, 371, 372, 373, 374, 376, 377, 378, 380, 381, 382], "summary": {"covered_lines": 34, "num_statements": 34, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 326, "executed_branches": [], "missing_branches": []}, "TestCompactMaskIouRandom": {"executed_lines": [434, 435, 436, 438, 439, 441, 442, 444, 445, 447, 450, 460, 461, 462, 464, 465, 467, 477, 479, 480, 481, 483, 484, 486, 487, 489, 490, 492, 493, 495], "summary": {"covered_lines": 30, "num_statements": 30, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 425, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [11, 13, 14, 16, 17, 30, 32, 33, 34, 37, 40, 42, 44, 45, 48, 54, 57, 65, 81, 94, 110, 125, 144, 159, 172, 190, 207, 216, 230, 244, 252, 273, 295, 310, 326, 333, 353, 369, 390, 404, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 425, 432, 433, 457, 458, 474, 475], "summary": {"covered_lines": 58, "num_statements": 58, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [[413, 414], [413, 422], [419, 420], [419, 421]], "missing_branches": []}}}, "tests\\detection\\test_core.py": {"executed_lines": [1, 3, 4, 6, 7, 9, 10, 16, 17, 18, 19, 20, 22, 37, 45, 46, 47, 58, 69, 88, 99, 102, 110, 120, 126, 131, 135, 142, 143, 144, 145, 146, 150, 155, 156, 160, 166, 299, 310, 311, 312, 315, 579, 584, 585, 586, 589, 660, 666, 667, 668, 671, 716, 719, 722, 880, 886, 887, 888, 891, 941, 943, 946, 948, 949, 963, 964, 967, 968, 971, 974, 975, 976, 979, 980, 983, 986, 987, 988, 990, 991, 992, 995, 998, 999, 1000, 1001, 1004, 1007, 1011, 1012, 1013, 1021, 1024, 1031, 1035, 1036, 1037, 1039, 1041, 1043, 1050, 1052, 1058, 1060, 1063, 1066, 1125, 1129, 1130, 1131, 1132, 1134, 1137, 1140, 1445, 1451, 1452, 1453, 1454, 1455, 1459, 1460, 1461, 1463, 1464, 1465, 1467, 1468, 1469, 1471, 1472, 1473, 1474, 1475, 1476, 1479, 1482, 1655, 1668, 1669, 1673, 1680, 1687, 1688, 1690, 1691, 1697, 1698, 1699, 1700, 1701, 1702, 1703, 1704, 1710, 1712, 1713, 1714, 1716, 1721, 1736, 1737, 1739, 1740, 1741, 1743, 1745, 1759, 1761, 1763, 1764, 1766, 1768, 1775, 1777, 1780, 1783, 1792, 1796, 1797, 1799, 1801, 1803, 1808, 1809, 1811, 1814, 1815, 1816, 1817, 1824, 1826, 1829, 1835, 1837, 1840, 1841, 1843, 1845, 1849, 1854, 1856, 1858, 1865, 1867, 1868, 1874, 1875, 1877, 1885, 1889, 1890, 1891, 1892, 1893, 1898, 1899, 1900, 1906], "summary": {"covered_lines": 220, "num_statements": 220, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 24, "num_partial_branches": 0, "covered_branches": 24, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [[975, 976], [975, 979], [1131, 1132], [1131, 1134], [1454, 1455], [1454, 1459], [1460, 1461], [1460, 1463], [1464, 1465], [1464, 1467], [1468, 1469], [1468, 1471], [1472, 1473], [1472, 1474], [1474, -1140], [1474, 1475], [1668, 1669], [1668, 1687], [1700, 1701], [1700, 1702], [1889, 1890], [1889, 1892], [1892, 1893], [1892, 1898]], "missing_branches": [], "functions": {"test_detections_bool_mask_types_do_not_warn": {"executed_lines": [144, 145, 146, 150], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 143, "executed_branches": [], "missing_branches": []}, "test_detections_non_bool_mask_warns_with_migration_path": {"executed_lines": [156, 160], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 155, "executed_branches": [], "missing_branches": []}, "test_getitem": {"executed_lines": [310, 311, 312], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 299, "executed_branches": [], "missing_branches": []}, "test_merge": {"executed_lines": [584, 585, 586], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 579, "executed_branches": [], "missing_branches": []}, "test_get_anchor_coordinates": {"executed_lines": [666, 667, 668], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 660, "executed_branches": [], "missing_branches": []}, "test_equal": {"executed_lines": [719], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 716, "executed_branches": [], "missing_branches": []}, "test_merge_inner_detection_object_pair": {"executed_lines": [886, 887, 888], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 880, "executed_branches": [], "missing_branches": []}, "test_is_empty": {"executed_lines": [943], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 941, "executed_branches": [], "missing_branches": []}, "test_from_inference_empty_class_name_dtype_matches_non_empty": {"executed_lines": [948, 949, 963, 964, 967, 968, 971, 974, 975, 976, 979, 980], "summary": {"covered_lines": 12, "num_statements": 12, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 946, "executed_branches": [[975, 976], [975, 979]], "missing_branches": []}, "test_from_inference_sdk_dict_path_empty_preserves_class_name_dtype": {"executed_lines": [986, 987, 990, 991, 992], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 983, "executed_branches": [], "missing_branches": []}, "test_from_inference_sdk_dict_path_empty_preserves_class_name_dtype._FakeSdkResult.dict": {"executed_lines": [988], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 987, "executed_branches": [], "missing_branches": []}, "_rotated_rect": {"executed_lines": [998, 999, 1000, 1001, 1004], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 995, "executed_branches": [], "missing_branches": []}, "_make_obb_detections": {"executed_lines": [1011, 1012, 1013], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1007, "executed_branches": [], "missing_branches": []}, "TestDetectionsObbDispatch.test_uses_obb_iou_when_oriented_box_coordinates_present": {"executed_lines": [1035, 1036, 1037, 1039, 1041], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1031, "executed_branches": [], "missing_branches": []}, "TestDetectionsObbDispatch.test_falls_back_without_obb_data": {"executed_lines": [1052, 1058, 1060], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1050, "executed_branches": [], "missing_branches": []}, "TestMergeObbCorners.test_merge": {"executed_lines": [1129, 1130, 1131, 1132, 1134], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1125, "executed_branches": [[1131, 1132], [1131, 1134]], "missing_branches": []}, "TestMergeDetectionGroup.test_merge": {"executed_lines": [1451, 1452, 1453, 1454, 1455, 1459, 1460, 1461, 1463, 1464, 1465, 1467, 1468, 1469, 1471, 1472, 1473, 1474, 1475, 1476], "summary": {"covered_lines": 20, "num_statements": 20, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 12, "num_partial_branches": 0, "covered_branches": 12, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1445, "executed_branches": [[1454, 1455], [1454, 1459], [1460, 1461], [1460, 1463], [1464, 1465], [1464, 1467], [1468, 1469], [1468, 1471], [1472, 1473], [1472, 1474], [1474, -1140], [1474, 1475]], "missing_branches": []}, "TestDetectionsWithNMM.test_obb_nmm_merge": {"executed_lines": [1668, 1669, 1673, 1680, 1687, 1688, 1690, 1691, 1697, 1698, 1699, 1700, 1701, 1702, 1703, 1704], "summary": {"covered_lines": 16, "num_statements": 16, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1655, "executed_branches": [[1668, 1669], [1668, 1687], [1700, 1701], [1700, 1702]], "missing_branches": []}, "TestDetectionsWithNMM.test_obb_nmm_matches_aabb_for_axis_aligned": {"executed_lines": [1712, 1713, 1714, 1716, 1721, 1736, 1737, 1739, 1740, 1741], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1710, "executed_branches": [], "missing_branches": []}, "TestDetectionsWithNMM.test_staircase_obb_merge_within_union": {"executed_lines": [1745, 1759, 1761, 1763, 1764], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1743, "executed_branches": [], "missing_branches": []}, "TestDetectionsWithNMM.test_obb_nmm_empty_detections": {"executed_lines": [1768, 1775, 1777], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1766, "executed_branches": [], "missing_branches": []}, "TestDetectionsArea.test_uses_oriented_box_corners_when_present": {"executed_lines": [1796, 1797, 1799], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1792, "executed_branches": [], "missing_branches": []}, "TestDetectionsArea.test_falls_back_to_box_area_without_obb_data": {"executed_lines": [1803, 1808, 1809], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1801, "executed_branches": [], "missing_branches": []}, "TestDetectionsArea.test_mask_takes_precedence_over_oriented_box": {"executed_lines": [1814, 1815, 1816, 1817, 1824], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1811, "executed_branches": [], "missing_branches": []}, "TestDetectionsArea.test_empty_detections_with_obb_data_returns_empty_array": {"executed_lines": [1829, 1835], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1826, "executed_branches": [], "missing_branches": []}, "TestDetectionsArea.test_degenerate_oriented_box_has_zero_area": {"executed_lines": [1840, 1841, 1843], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1837, "executed_branches": [], "missing_branches": []}, "TestDetectionsArea.test_handles_batched_oriented_boxes": {"executed_lines": [1849, 1854, 1856], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1845, "executed_branches": [], "missing_branches": []}, "TestDetectionsArea.test_raises_on_malformed_obb_coordinates_shape": {"executed_lines": [1867, 1868, 1874, 1875], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1865, "executed_branches": [], "missing_branches": []}, "TestDetectionsArea.test_area_return_dtype_per_branch": {"executed_lines": [1889, 1890, 1891, 1892, 1893, 1898, 1899, 1900, 1906], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1885, "executed_branches": [[1889, 1890], [1889, 1892], [1892, 1893], [1892, 1898]], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 6, 7, 9, 10, 16, 17, 18, 19, 20, 22, 37, 45, 46, 47, 58, 69, 88, 99, 102, 110, 120, 126, 131, 135, 142, 143, 155, 166, 299, 315, 579, 589, 660, 671, 716, 722, 880, 891, 941, 946, 983, 995, 1007, 1021, 1024, 1031, 1043, 1050, 1063, 1066, 1125, 1137, 1140, 1445, 1479, 1482, 1655, 1710, 1743, 1766, 1780, 1783, 1792, 1801, 1811, 1826, 1837, 1845, 1858, 1865, 1877, 1885], "summary": {"covered_lines": 75, "num_statements": 75, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"test_from_inference_sdk_dict_path_empty_preserves_class_name_dtype._FakeSdkResult": {"executed_lines": [988], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 986, "executed_branches": [], "missing_branches": []}, "TestDetectionsObbDispatch": {"executed_lines": [1035, 1036, 1037, 1039, 1041, 1052, 1058, 1060], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1021, "executed_branches": [], "missing_branches": []}, "TestMergeObbCorners": {"executed_lines": [1129, 1130, 1131, 1132, 1134], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1063, "executed_branches": [[1131, 1132], [1131, 1134]], "missing_branches": []}, "TestMergeDetectionGroup": {"executed_lines": [1451, 1452, 1453, 1454, 1455, 1459, 1460, 1461, 1463, 1464, 1465, 1467, 1468, 1469, 1471, 1472, 1473, 1474, 1475, 1476], "summary": {"covered_lines": 20, "num_statements": 20, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 12, "num_partial_branches": 0, "covered_branches": 12, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1137, "executed_branches": [[1454, 1455], [1454, 1459], [1460, 1461], [1460, 1463], [1464, 1465], [1464, 1467], [1468, 1469], [1468, 1471], [1472, 1473], [1472, 1474], [1474, -1140], [1474, 1475]], "missing_branches": []}, "TestDetectionsWithNMM": {"executed_lines": [1668, 1669, 1673, 1680, 1687, 1688, 1690, 1691, 1697, 1698, 1699, 1700, 1701, 1702, 1703, 1704, 1712, 1713, 1714, 1716, 1721, 1736, 1737, 1739, 1740, 1741, 1745, 1759, 1761, 1763, 1764, 1768, 1775, 1777], "summary": {"covered_lines": 34, "num_statements": 34, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1479, "executed_branches": [[1668, 1669], [1668, 1687], [1700, 1701], [1700, 1702]], "missing_branches": []}, "TestDetectionsArea": {"executed_lines": [1796, 1797, 1799, 1803, 1808, 1809, 1814, 1815, 1816, 1817, 1824, 1829, 1835, 1840, 1841, 1843, 1849, 1854, 1856, 1867, 1868, 1874, 1875, 1889, 1890, 1891, 1892, 1893, 1898, 1899, 1900, 1906], "summary": {"covered_lines": 32, "num_statements": 32, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1780, "executed_branches": [[1889, 1890], [1889, 1892], [1892, 1893], [1892, 1898]], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 6, 7, 9, 10, 16, 17, 18, 19, 20, 22, 37, 45, 46, 47, 58, 69, 88, 99, 102, 110, 120, 126, 131, 135, 142, 143, 144, 145, 146, 150, 155, 156, 160, 166, 299, 310, 311, 312, 315, 579, 584, 585, 586, 589, 660, 666, 667, 668, 671, 716, 719, 722, 880, 886, 887, 888, 891, 941, 943, 946, 948, 949, 963, 964, 967, 968, 971, 974, 975, 976, 979, 980, 983, 986, 987, 990, 991, 992, 995, 998, 999, 1000, 1001, 1004, 1007, 1011, 1012, 1013, 1021, 1024, 1031, 1043, 1050, 1063, 1066, 1125, 1137, 1140, 1445, 1479, 1482, 1655, 1710, 1743, 1766, 1780, 1783, 1792, 1801, 1811, 1826, 1837, 1845, 1858, 1865, 1877, 1885], "summary": {"covered_lines": 120, "num_statements": 120, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [[975, 976], [975, 979]], "missing_branches": []}}}, "tests\\detection\\test_csv.py": {"executed_lines": [1, 3, 4, 5, 7, 8, 10, 11, 12, 15, 293, 301, 302, 303, 305, 306, 307, 309, 311, 314, 501, 509, 510, 511, 512, 513, 515, 518, 519, 520, 521, 522, 526, 529, 540, 541], "summary": {"covered_lines": 36, "num_statements": 36, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 6, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [[302, 303], [302, 305], [306, 307], [306, 309], [521, 522], [521, 526]], "missing_branches": [], "functions": {"test_csv_sink": {"executed_lines": [301, 302, 303, 305, 306, 307, 309, 311], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 293, "executed_branches": [[302, 303], [302, 305], [306, 307], [306, 309]], "missing_branches": []}, "test_csv_sink_manual": {"executed_lines": [509, 510, 511, 512, 513, 515], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 501, "executed_branches": [], "missing_branches": []}, "assert_csv_equal": {"executed_lines": [519, 520, 521, 522, 526], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 518, "executed_branches": [[521, 522], [521, 526]], "missing_branches": []}, "test_csv_sink_slice_value": {"executed_lines": [541], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 540, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 5, 7, 8, 10, 11, 12, 15, 293, 314, 501, 518, 529, 540], "summary": {"covered_lines": 16, "num_statements": 16, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 3, 4, 5, 7, 8, 10, 11, 12, 15, 293, 301, 302, 303, 305, 306, 307, 309, 311, 314, 501, 509, 510, 511, 512, 513, 515, 518, 519, 520, 521, 522, 526, 529, 540, 541], "summary": {"covered_lines": 36, "num_statements": 36, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 6, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [[302, 303], [302, 305], [306, 307], [306, 309], [521, 522], [521, 526]], "missing_branches": []}}}, "tests\\detection\\test_from_adapters.py": {"executed_lines": [1, 3, 4, 6, 7, 8, 9, 18, 19, 26, 28, 30, 31, 32, 33, 36, 37, 38, 39, 40, 42, 43, 45, 47, 48, 49, 50, 52, 53, 54, 57, 60, 62, 63, 65, 68, 70, 72, 73, 74, 77, 94, 100, 105, 107, 109, 110, 111, 112, 113], "summary": {"covered_lines": 50, "num_statements": 50, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [[110, -77], [110, 111]], "missing_branches": [], "functions": {"test_from_yolov5_maps_columns_correctly": {"executed_lines": [19, 26, 28, 30, 31, 32, 33], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 18, "executed_branches": [], "missing_branches": []}, "test_from_ultralytics_boxes_branch_maps_fields_and_class_names": {"executed_lines": [37, 38, 39, 40, 42, 43, 45, 47, 48, 49, 50, 52, 53, 54], "summary": {"covered_lines": 14, "num_statements": 14, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 36, "executed_branches": [], "missing_branches": []}, "test_from_ultralytics_segmentation_only_branch_uses_masks_and_arange": {"executed_lines": [60, 62, 63, 65, 68, 70, 72, 73, 74], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 57, "executed_branches": [], "missing_branches": []}, "test_from_yolo_nas_handles_empty_and_non_empty": {"executed_lines": [100, 105, 107, 109, 110, 111, 112, 113], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 94, "executed_branches": [[110, -77], [110, 111]], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 6, 7, 8, 9, 18, 36, 57, 77, 94], "summary": {"covered_lines": 12, "num_statements": 12, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 3, 4, 6, 7, 8, 9, 18, 19, 26, 28, 30, 31, 32, 33, 36, 37, 38, 39, 40, 42, 43, 45, 47, 48, 49, 50, 52, 53, 54, 57, 60, 62, 63, 65, 68, 70, 72, 73, 74, 77, 94, 100, 105, 107, 109, 110, 111, 112, 113], "summary": {"covered_lines": 50, "num_statements": 50, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [[110, -77], [110, 111]], "missing_branches": []}}}, "tests\\detection\\test_from_sam.py": {"executed_lines": [1, 3, 5, 6, 8, 10, 42, 68, 83, 99, 116, 121, 123, 124, 125, 127, 130, 202, 209, 213, 214, 215, 218, 219, 220, 223], "summary": {"covered_lines": 26, "num_statements": 26, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [[124, 125], [124, 127]], "missing_branches": [], "functions": {"test_from_sam": {"executed_lines": [121, 123, 124, 125, 127], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 116, "executed_branches": [[124, 125], [124, 127]], "missing_branches": []}, "test_from_sam3": {"executed_lines": [209, 213, 214, 215], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 202, "executed_branches": [], "missing_branches": []}, "test_from_sam3_invalid_resolution": {"executed_lines": [219, 220, 223], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 218, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 5, 6, 8, 10, 42, 68, 83, 99, 116, 130, 202, 218], "summary": {"covered_lines": 14, "num_statements": 14, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 3, 5, 6, 8, 10, 42, 68, 83, 99, 116, 121, 123, 124, 125, 127, 130, 202, 209, 213, 214, 215, 218, 219, 220, 223], "summary": {"covered_lines": 26, "num_statements": 26, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [[124, 125], [124, 127]], "missing_branches": []}}}, "tests\\detection\\test_inference_slicer_compact.py": {"executed_lines": [9, 11, 13, 14, 15, 18, 20, 21, 22, 23, 24, 25, 33, 45, 47, 48, 55, 56, 60, 62, 63, 70, 71, 72, 74, 76, 78, 86, 95, 96, 98, 100, 101, 104, 105, 107, 108, 110, 116, 118, 120, 122, 124, 125, 127, 135, 137, 138, 142, 145, 146, 147, 153, 154, 161, 162], "summary": {"covered_lines": 56, "num_statements": 56, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"_fake_seg_callback": {"executed_lines": [20, 21, 22, 23, 24, 25], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 18, "executed_branches": [], "missing_branches": []}, "TestInferenceSlicerCompactMasks.test_compact_masks_flag_converts_dense_to_compact": {"executed_lines": [47, 48, 55, 56], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 45, "executed_branches": [], "missing_branches": []}, "TestInferenceSlicerCompactMasks.test_compact_masks_false_keeps_dense": {"executed_lines": [62, 63, 70, 71, 72], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 60, "executed_branches": [], "missing_branches": []}, "TestInferenceSlicerCompactMasks.test_compact_and_dense_pipelines_give_same_masks": {"executed_lines": [76, 78, 86, 95, 96, 98, 100, 101, 104, 107, 108, 110], "summary": {"covered_lines": 12, "num_statements": 12, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 74, "executed_branches": [], "missing_branches": []}, "TestInferenceSlicerCompactMasks.test_compact_and_dense_pipelines_give_same_masks._sort_key": {"executed_lines": [105], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 104, "executed_branches": [], "missing_branches": []}, "TestInferenceSlicerCompactMasks.test_nms_with_overlapping_tiles_uses_rle_iou": {"executed_lines": [118, 120, 122, 127, 135, 137, 138], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 116, "executed_branches": [], "missing_branches": []}, "TestInferenceSlicerCompactMasks.test_nms_with_overlapping_tiles_uses_rle_iou.counting_callback": {"executed_lines": [124, 125], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 122, "executed_branches": [], "missing_branches": []}, "TestInferenceSlicerCompactMasks.test_no_mask_callback_unaffected": {"executed_lines": [145, 153, 154, 161, 162], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 142, "executed_branches": [], "missing_branches": []}, "TestInferenceSlicerCompactMasks.test_no_mask_callback_unaffected.box_only_callback": {"executed_lines": [146, 147], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 145, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [9, 11, 13, 14, 15, 18, 33, 45, 60, 74, 116, 142], "summary": {"covered_lines": 12, "num_statements": 12, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"TestInferenceSlicerCompactMasks": {"executed_lines": [47, 48, 55, 56, 62, 63, 70, 71, 72, 76, 78, 86, 95, 96, 98, 100, 101, 104, 105, 107, 108, 110, 118, 120, 122, 124, 125, 127, 135, 137, 138, 145, 146, 147, 153, 154, 161, 162], "summary": {"covered_lines": 38, "num_statements": 38, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 33, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [9, 11, 13, 14, 15, 18, 20, 21, 22, 23, 24, 25, 33, 45, 60, 74, 116, 142], "summary": {"covered_lines": 18, "num_statements": 18, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\detection\\test_json.py": {"executed_lines": [1, 3, 4, 5, 7, 8, 10, 11, 14, 377, 385, 386, 387, 389, 390, 391, 393, 395, 398, 408, 412, 413, 418, 419, 420, 421, 422, 425, 427, 428, 432, 433, 434, 435, 436, 439, 441, 442, 445, 446, 447, 448, 452], "summary": {"covered_lines": 43, "num_statements": 43, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [[386, 387], [386, 389], [390, 391], [390, 393]], "missing_branches": [], "functions": {"test_json_sink": {"executed_lines": [385, 386, 387, 389, 390, 391, 393, 395], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 377, "executed_branches": [[386, 387], [386, 389], [390, 391], [390, 393]], "missing_branches": []}, "test_json_sink_serializes_numpy_scalar_custom_data": {"executed_lines": [412, 413, 418, 419, 420, 421, 422], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 408, "executed_branches": [], "missing_branches": []}, "test_json_sink_serializes_nested_numpy_array_custom_data": {"executed_lines": [427, 428, 432, 433, 434, 435, 436], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 425, "executed_branches": [], "missing_branches": []}, "test_json_default_raises_for_unserializable_type": {"executed_lines": [441, 442], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 439, "executed_branches": [], "missing_branches": []}, "assert_json_equal": {"executed_lines": [446, 447, 448, 452], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 445, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 5, 7, 8, 10, 11, 14, 377, 398, 408, 425, 439, 445], "summary": {"covered_lines": 15, "num_statements": 15, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 3, 4, 5, 7, 8, 10, 11, 14, 377, 385, 386, 387, 389, 390, 391, 393, 395, 398, 408, 412, 413, 418, 419, 420, 421, 422, 425, 427, 428, 432, 433, 434, 435, 436, 439, 441, 442, 445, 446, 447, 448, 452], "summary": {"covered_lines": 43, "num_statements": 43, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [[386, 387], [386, 389], [390, 391], [390, 393]], "missing_branches": []}}}, "tests\\detection\\test_line_counter.py": {"executed_lines": [1, 3, 4, 6, 7, 9, 10, 11, 14, 69, 74, 75, 76, 79, 237, 243, 245, 246, 247, 248, 252, 253, 254, 256, 259, 264, 404, 411, 415, 416, 417, 418, 422, 423, 424, 426, 429, 434, 482, 490, 491, 494, 495, 496, 497, 501, 502, 503, 505, 506, 509, 597, 605, 612, 613, 614, 615, 619, 620, 621, 623, 626, 631, 770, 781, 782, 788, 789, 790, 791, 792, 793, 797, 798, 799, 800, 801, 803, 804, 805, 806, 809, 864, 871, 873, 876, 879, 881, 882, 885, 886, 892, 894, 895, 896, 897, 898, 899, 901, 902, 905, 907, 913, 920, 921, 923, 924, 925, 926], "summary": {"covered_lines": 109, "num_statements": 109, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 12, "num_partial_branches": 0, "covered_branches": 12, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [[247, 248], [247, 256], [417, 418], [417, 426], [496, 497], [496, 505], [614, 615], [614, 623], [792, 793], [792, 803], [873, 876], [873, 881]], "missing_branches": [], "functions": {"test_calculate_region_of_interest_limits": {"executed_lines": [74, 75, 76], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 69, "executed_branches": [], "missing_branches": []}, "test_line_zone_one_detection_default_anchors": {"executed_lines": [243, 245, 246, 247, 248, 252, 253, 254, 256, 259], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 237, "executed_branches": [[247, 248], [247, 256]], "missing_branches": []}, "test_line_zone_one_detection": {"executed_lines": [411, 415, 416, 417, 418, 422, 423, 424, 426, 429], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 404, "executed_branches": [[417, 418], [417, 426]], "missing_branches": []}, "test_line_zone_multiple_detections": {"executed_lines": [490, 491, 494, 495, 496, 497, 501, 502, 503, 505, 506], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 482, "executed_branches": [[496, 497], [496, 505]], "missing_branches": []}, "test_line_zone_one_detection_long_horizon": {"executed_lines": [605, 612, 613, 614, 615, 619, 620, 621, 623, 626], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 597, "executed_branches": [[614, 615], [614, 623]], "missing_branches": []}, "test_line_zone_long_horizon_disappearing_detections": {"executed_lines": [781, 782, 788, 789, 790, 791, 792, 793, 797, 798, 799, 800, 801, 803, 804, 805, 806], "summary": {"covered_lines": 17, "num_statements": 17, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 770, "executed_branches": [[792, 793], [792, 803]], "missing_branches": []}, "test_line_zone_tracker_id_reuse_with_different_classes": {"executed_lines": [871, 873, 876, 879, 881, 882], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 864, "executed_branches": [[873, 876], [873, 881]], "missing_branches": []}, "test_line_zone_annotator_multiclass_supports_none_class_id": {"executed_lines": [886, 892, 894, 895, 896, 897, 898, 899, 901, 902], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 885, "executed_branches": [], "missing_branches": []}, "test_line_zone_annotator_uses_custom_text_configuration": {"executed_lines": [907, 913, 920, 921, 923, 924, 925, 926], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 905, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 6, 7, 9, 10, 11, 14, 69, 79, 237, 264, 404, 434, 482, 509, 597, 631, 770, 809, 864, 885, 905], "summary": {"covered_lines": 24, "num_statements": 24, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 3, 4, 6, 7, 9, 10, 11, 14, 69, 74, 75, 76, 79, 237, 243, 245, 246, 247, 248, 252, 253, 254, 256, 259, 264, 404, 411, 415, 416, 417, 418, 422, 423, 424, 426, 429, 434, 482, 490, 491, 494, 495, 496, 497, 501, 502, 503, 505, 506, 509, 597, 605, 612, 613, 614, 615, 619, 620, 621, 623, 626, 631, 770, 781, 782, 788, 789, 790, 791, 792, 793, 797, 798, 799, 800, 801, 803, 804, 805, 806, 809, 864, 871, 873, 876, 879, 881, 882, 885, 886, 892, 894, 895, 896, 897, 898, 899, 901, 902, 905, 907, 913, 920, 921, 923, 924, 925, 926], "summary": {"covered_lines": 109, "num_statements": 109, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 12, "num_partial_branches": 0, "covered_branches": 12, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [[247, 248], [247, 256], [417, 418], [417, 426], [496, 497], [496, 505], [614, 615], [614, 623], [792, 793], [792, 803], [873, 876], [873, 881]], "missing_branches": []}}}, "tests\\detection\\test_polygon_zone_annotator.py": {"executed_lines": [1, 2, 4, 6, 7, 8, 9, 10, 16, 24, 54, 59, 60], "summary": {"covered_lines": 13, "num_statements": 13, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"test_polygon_zone_annotator": {"executed_lines": [59, 60], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 54, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 2, 4, 6, 7, 8, 9, 10, 16, 24, 54], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 2, 4, 6, 7, 8, 9, 10, 16, 24, 54, 59, 60], "summary": {"covered_lines": 13, "num_statements": 13, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\detection\\test_polygonzone.py": {"executed_lines": [1, 3, 4, 6, 7, 9, 24, 28, 31, 32, 43, 44, 45, 48, 49, 98, 105, 106, 107, 108, 110, 122, 125, 128, 133, 137, 140, 142, 144, 149, 153, 154, 156, 158, 159, 161, 165, 166], "summary": {"covered_lines": 38, "num_statements": 38, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"TestPolygonZoneInit.test_empty_anchors_raises": {"executed_lines": [44, 45], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 43, "executed_branches": [], "missing_branches": []}, "TestPolygonZoneTrigger.test_anchor_configurations": {"executed_lines": [105, 106, 107, 108], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 98, "executed_branches": [], "missing_branches": []}, "TestPolygonZoneTrigger.test_straddling_detection_assigned_to_one_zone": {"executed_lines": [122, 125, 128, 133, 137, 140], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 110, "executed_branches": [], "missing_branches": []}, "TestPolygonZoneTrigger.test_out_of_bounds_anchor_excluded": {"executed_lines": [144, 149, 153, 154], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 142, "executed_branches": [], "missing_branches": []}, "TestPolygonZoneTrigger.test_anchor_on_polygon_boundary_included": {"executed_lines": [158, 159, 161, 165, 166], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 156, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 6, 7, 9, 24, 28, 31, 32, 43, 48, 49, 98, 110, 142, 156], "summary": {"covered_lines": 17, "num_statements": 17, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"TestPolygonZoneInit": {"executed_lines": [44, 45], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 31, "executed_branches": [], "missing_branches": []}, "TestPolygonZoneTrigger": {"executed_lines": [105, 106, 107, 108, 122, 125, 128, 133, 137, 140, 144, 149, 153, 154, 158, 159, 161, 165, 166], "summary": {"covered_lines": 19, "num_statements": 19, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 48, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 6, 7, 9, 24, 28, 31, 32, 43, 48, 49, 98, 110, 142, 156], "summary": {"covered_lines": 17, "num_statements": 17, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\detection\\test_vlm.py": {"executed_lines": [1, 3, 4, 6, 7, 9, 10, 11, 22, 200, 207, 208, 211, 212, 213, 216, 410, 418, 419, 425, 426, 427, 428, 431, 565, 572, 573, 576, 577, 578, 579, 582, 679, 685, 686, 690, 691, 694, 921, 929, 930, 931, 932, 933, 935, 936, 937, 939, 940, 941, 943, 946, 1149, 1157, 1158, 1168, 1171, 1172, 1174, 1175, 1177, 1178, 1180, 1181, 1183, 1184, 1185, 1187, 1188, 1190, 1191, 1192, 1195, 1271, 1278, 1279, 1286, 1289, 1291, 1292, 1294, 1295, 1296, 1302, 1304, 1310, 1314, 1315, 1316, 1317, 1318, 1319, 1322, 1324, 1333, 1339, 1340, 1341, 1342, 1343, 1344, 1345, 1346, 1349, 1364, 1366, 1367, 1368, 1370, 1372], "summary": {"covered_lines": 110, "num_statements": 112, "percent_covered": 94.8529411764706, "percent_covered_display": "95", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 98.21428571428571, "percent_statements_covered_display": "98", "num_branches": 24, "num_partial_branches": 5, "covered_branches": 19, "missing_branches": 5, "percent_branches_covered": 79.16666666666667, "percent_branches_covered_display": "79"}, "missing_lines": [1169, 1287], "excluded_lines": [], "executed_branches": [[425, 426], [576, 577], [690, 691], [932, 933], [932, 935], [936, 937], [936, 939], [940, 941], [940, 943], [1168, 1171], [1180, 1181], [1180, 1183], [1187, 1188], [1187, 1190], [1286, 1289], [1291, 1292], [1291, 1294], [1367, 1368], [1367, 1370]], "missing_branches": [[425, -216], [576, -431], [690, -582], [1168, 1169], [1286, 1287]], "functions": {"test_from_paligemma": {"executed_lines": [207, 208, 211, 212, 213], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 200, "executed_branches": [], "missing_branches": []}, "test_from_qwen_2_5_vl": {"executed_lines": [418, 419, 425, 426, 427, 428], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 87.5, "percent_covered_display": "88", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [], "excluded_lines": [], "start_line": 410, "executed_branches": [[425, 426]], "missing_branches": [[425, -216]]}, "test_from_google_gemini": {"executed_lines": [572, 573, 576, 577, 578, 579], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 87.5, "percent_covered_display": "88", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [], "excluded_lines": [], "start_line": 565, "executed_branches": [[576, 577]], "missing_branches": [[576, -431]]}, "test_from_moondream": {"executed_lines": [685, 686, 690, 691], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 83.33333333333333, "percent_covered_display": "83", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [], "excluded_lines": [], "start_line": 679, "executed_branches": [[690, 691]], "missing_branches": [[690, -582]]}, "test_florence_2": {"executed_lines": [929, 930, 931, 932, 933, 935, 936, 937, 939, 940, 941, 943], "summary": {"covered_lines": 12, "num_statements": 12, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 6, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 921, "executed_branches": [[932, 933], [932, 935], [936, 937], [936, 939], [940, 941], [940, 943]], "missing_branches": []}, "test_from_google_gemini_2_5": {"executed_lines": [1157, 1158, 1168, 1171, 1172, 1174, 1175, 1177, 1178, 1180, 1181, 1183, 1184, 1185, 1187, 1188, 1190, 1191, 1192], "summary": {"covered_lines": 19, "num_statements": 20, "percent_covered": 92.3076923076923, "percent_covered_display": "92", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 95.0, "percent_statements_covered_display": "95", "num_branches": 6, "num_partial_branches": 1, "covered_branches": 5, "missing_branches": 1, "percent_branches_covered": 83.33333333333333, "percent_branches_covered_display": "83"}, "missing_lines": [1169], "excluded_lines": [], "start_line": 1149, "executed_branches": [[1168, 1171], [1180, 1181], [1180, 1183], [1187, 1188], [1187, 1190]], "missing_branches": [[1168, 1169]]}, "test_from_deepseek_vl_2": {"executed_lines": [1278, 1279, 1286, 1289, 1291, 1292, 1294, 1295, 1296], "summary": {"covered_lines": 9, "num_statements": 10, "percent_covered": 85.71428571428571, "percent_covered_display": "86", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 90.0, "percent_statements_covered_display": "90", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [1287], "excluded_lines": [], "start_line": 1271, "executed_branches": [[1286, 1289], [1291, 1292], [1291, 1294]], "missing_branches": [[1286, 1287]]}, "test_from_google_gemini_2_5_malformed_mask_keeps_confidence_aligned": {"executed_lines": [1304, 1310, 1314, 1315, 1316, 1317, 1318, 1319], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1302, "executed_branches": [], "missing_branches": []}, "test_from_google_gemini_2_5_filters_classes_and_keeps_arrays_aligned": {"executed_lines": [1324, 1333, 1339, 1340, 1341, 1342, 1343, 1344, 1345, 1346], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1322, "executed_branches": [], "missing_branches": []}, "test_vlm_parsers_degrade_on_malformed_json": {"executed_lines": [1366, 1367, 1368, 1370, 1372], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1364, "executed_branches": [[1367, 1368], [1367, 1370]], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 6, 7, 9, 10, 11, 22, 200, 216, 410, 431, 565, 582, 679, 694, 921, 946, 1149, 1195, 1271, 1302, 1322, 1349, 1364], "summary": {"covered_lines": 26, "num_statements": 26, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 3, 4, 6, 7, 9, 10, 11, 22, 200, 207, 208, 211, 212, 213, 216, 410, 418, 419, 425, 426, 427, 428, 431, 565, 572, 573, 576, 577, 578, 579, 582, 679, 685, 686, 690, 691, 694, 921, 929, 930, 931, 932, 933, 935, 936, 937, 939, 940, 941, 943, 946, 1149, 1157, 1158, 1168, 1171, 1172, 1174, 1175, 1177, 1178, 1180, 1181, 1183, 1184, 1185, 1187, 1188, 1190, 1191, 1192, 1195, 1271, 1278, 1279, 1286, 1289, 1291, 1292, 1294, 1295, 1296, 1302, 1304, 1310, 1314, 1315, 1316, 1317, 1318, 1319, 1322, 1324, 1333, 1339, 1340, 1341, 1342, 1343, 1344, 1345, 1346, 1349, 1364, 1366, 1367, 1368, 1370, 1372], "summary": {"covered_lines": 110, "num_statements": 112, "percent_covered": 94.8529411764706, "percent_covered_display": "95", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 98.21428571428571, "percent_statements_covered_display": "98", "num_branches": 24, "num_partial_branches": 5, "covered_branches": 19, "missing_branches": 5, "percent_branches_covered": 79.16666666666667, "percent_branches_covered_display": "79"}, "missing_lines": [1169, 1287], "excluded_lines": [], "start_line": 1, "executed_branches": [[425, 426], [576, 577], [690, 691], [932, 933], [932, 935], [936, 937], [936, 939], [940, 941], [940, 943], [1168, 1171], [1180, 1181], [1180, 1183], [1187, 1188], [1187, 1190], [1286, 1289], [1291, 1292], [1291, 1294], [1367, 1368], [1367, 1370]], "missing_branches": [[425, -216], [576, -431], [690, -582], [1168, 1169], [1286, 1287]]}}}, "tests\\detection\\tools\\test_inference_slicer.py": {"executed_lines": [1, 3, 4, 6, 7, 9, 10, 11, 12, 13, 16, 17, 26, 29, 32, 43, 44, 45, 46, 47, 48, 49, 50, 52, 53, 55, 56, 59, 222, 228, 234, 239, 243, 245, 251, 252, 254, 255, 258, 262, 263, 269, 270, 272, 273, 274, 276, 282, 285, 289, 290, 296, 297, 299, 300, 301, 303, 309, 312, 316, 319, 325, 326, 330, 331, 334, 338, 339, 346, 347, 354, 355, 356, 358, 364, 367, 371, 373, 379, 380, 382, 383, 384, 386, 392, 395, 399, 400, 406, 407, 409, 410, 411, 412, 414, 420, 423, 426, 427, 428, 429, 431, 434, 435, 436, 437, 440, 441, 443, 454, 455, 462, 463, 465, 466, 467, 470, 473, 474, 475, 476, 479, 482, 486, 497, 498, 499, 505, 512, 513, 520, 521, 530, 532], "summary": {"covered_lines": 134, "num_statements": 139, "percent_covered": 95.74468085106383, "percent_covered_display": "96", "missing_lines": 5, "excluded_lines": 0, "percent_statements_covered": 96.40287769784173, "percent_statements_covered_display": "96", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [20, 21, 23, 30, 438], "excluded_lines": [], "executed_branches": [[437, 440]], "missing_branches": [[437, 438]], "functions": {"mock_callback": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 2, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [20, 23], "excluded_lines": [], "start_line": 17, "executed_branches": [], "missing_branches": []}, "mock_callback.callback": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [21], "excluded_lines": [], "start_line": 20, "executed_branches": [], "missing_branches": []}, "test_inference_slicer_configuration_properties": {"executed_lines": [29, 32, 43, 44, 45, 46, 47, 48, 49, 50, 52, 53, 55, 56], "summary": {"covered_lines": 14, "num_statements": 14, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 26, "executed_branches": [], "missing_branches": []}, "test_inference_slicer_configuration_properties.callback": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [30], "excluded_lines": [], "start_line": 29, "executed_branches": [], "missing_branches": []}, "test_generate_offset": {"executed_lines": [228, 234], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 222, "executed_branches": [], "missing_branches": []}, "test_run_callback_warns_when_detections_outside_slice_bounds": {"executed_lines": [243, 251, 252, 254, 255], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 239, "executed_branches": [], "missing_branches": []}, "test_run_callback_warns_when_detections_outside_slice_bounds.out_of_bounds_callback": {"executed_lines": [245], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 243, "executed_branches": [], "missing_branches": []}, "test_run_callback_warns_only_once_for_out_of_bounds_detections": {"executed_lines": [262, 269, 270, 272, 273, 274, 276, 282], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 258, "executed_branches": [], "missing_branches": []}, "test_run_callback_warns_only_once_for_out_of_bounds_detections.out_of_bounds_callback": {"executed_lines": [263], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 262, "executed_branches": [], "missing_branches": []}, "test_run_callback_no_warning_when_detections_inside_slice_bounds": {"executed_lines": [289, 296, 297, 299, 300, 301, 303, 309], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 285, "executed_branches": [], "missing_branches": []}, "test_run_callback_no_warning_when_detections_inside_slice_bounds.in_bounds_callback": {"executed_lines": [290], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 289, "executed_branches": [], "missing_branches": []}, "test_run_callback_warns_when_detections_have_negative_coordinates": {"executed_lines": [316, 325, 326, 330, 331], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 312, "executed_branches": [], "missing_branches": []}, "test_run_callback_warns_when_detections_have_negative_coordinates.negative_coords_callback": {"executed_lines": [319], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 316, "executed_branches": [], "missing_branches": []}, "test_run_callback_warns_only_once_with_multiple_threads": {"executed_lines": [338, 346, 347, 354, 355, 356, 358, 364], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 334, "executed_branches": [], "missing_branches": []}, "test_run_callback_warns_only_once_with_multiple_threads.out_of_bounds_callback": {"executed_lines": [339], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 338, "executed_branches": [], "missing_branches": []}, "test_run_callback_no_warning_for_detection_exactly_at_slice_boundary": {"executed_lines": [371, 379, 380, 382, 383, 384, 386, 392], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 367, "executed_branches": [], "missing_branches": []}, "test_run_callback_no_warning_for_detection_exactly_at_slice_boundary.at_boundary_callback": {"executed_lines": [373], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 371, "executed_branches": [], "missing_branches": []}, "test_run_callback_does_not_rewarn_on_second_call": {"executed_lines": [399, 406, 407, 409, 410, 411, 412, 414, 420], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 395, "executed_branches": [], "missing_branches": []}, "test_run_callback_does_not_rewarn_on_second_call.out_of_bounds_callback": {"executed_lines": [400], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 399, "executed_branches": [], "missing_branches": []}, "test_obb_callbacks_run_sequentially_even_with_multiple_workers": {"executed_lines": [426, 427, 428, 429, 431, 454, 455, 462, 463, 465, 466, 467], "summary": {"covered_lines": 12, "num_statements": 12, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 423, "executed_branches": [], "missing_branches": []}, "test_obb_callbacks_run_sequentially_even_with_multiple_workers.obb_callback": {"executed_lines": [434, 435, 436, 437, 440, 441, 443], "summary": {"covered_lines": 7, "num_statements": 8, "percent_covered": 80.0, "percent_covered_display": "80", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 87.5, "percent_statements_covered_display": "88", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [438], "excluded_lines": [], "start_line": 431, "executed_branches": [[437, 440]], "missing_branches": [[437, 438]]}, "_rotated_rect": {"executed_lines": [473, 474, 475, 476, 479], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 470, "executed_branches": [], "missing_branches": []}, "test_inference_slicer_keeps_crossed_obb_detections": {"executed_lines": [497, 498, 499, 505, 512, 520, 521, 530, 532], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 486, "executed_branches": [], "missing_branches": []}, "test_inference_slicer_keeps_crossed_obb_detections.callback": {"executed_lines": [513], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 512, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 6, 7, 9, 10, 11, 12, 13, 16, 17, 26, 59, 222, 239, 258, 285, 312, 334, 367, 395, 423, 470, 482, 486], "summary": {"covered_lines": 26, "num_statements": 26, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 3, 4, 6, 7, 9, 10, 11, 12, 13, 16, 17, 26, 29, 32, 43, 44, 45, 46, 47, 48, 49, 50, 52, 53, 55, 56, 59, 222, 228, 234, 239, 243, 245, 251, 252, 254, 255, 258, 262, 263, 269, 270, 272, 273, 274, 276, 282, 285, 289, 290, 296, 297, 299, 300, 301, 303, 309, 312, 316, 319, 325, 326, 330, 331, 334, 338, 339, 346, 347, 354, 355, 356, 358, 364, 367, 371, 373, 379, 380, 382, 383, 384, 386, 392, 395, 399, 400, 406, 407, 409, 410, 411, 412, 414, 420, 423, 426, 427, 428, 429, 431, 434, 435, 436, 437, 440, 441, 443, 454, 455, 462, 463, 465, 466, 467, 470, 473, 474, 475, 476, 479, 482, 486, 497, 498, 499, 505, 512, 513, 520, 521, 530, 532], "summary": {"covered_lines": 134, "num_statements": 139, "percent_covered": 95.74468085106383, "percent_covered_display": "96", "missing_lines": 5, "excluded_lines": 0, "percent_statements_covered": 96.40287769784173, "percent_statements_covered_display": "96", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [20, 21, 23, 30, 438], "excluded_lines": [], "start_line": 1, "executed_branches": [[437, 440]], "missing_branches": [[437, 438]]}}}, "tests\\detection\\tools\\test_smoother.py": {"executed_lines": [3, 5, 6, 7, 9, 10, 11, 14, 15, 38, 45, 46, 53, 61, 62, 63, 65, 66, 68, 70, 71, 78, 85, 86, 88, 90, 91, 96, 97, 99, 101, 103, 104, 111, 118, 126, 127, 128], "summary": {"covered_lines": 38, "num_statements": 38, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [[62, 63], [62, 65]], "missing_branches": [], "functions": {"TestDetectionsSmoother.test_smoother_confidence_scenarios": {"executed_lines": [45, 46, 53, 61, 62, 63, 65, 66], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 38, "executed_branches": [[62, 63], [62, 65]], "missing_branches": []}, "TestDetectionsSmoother.test_smoother_multi_track_mixed_confidence_does_not_crash": {"executed_lines": [70, 71, 78, 85, 86], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 68, "executed_branches": [], "missing_branches": []}, "TestDetectionsSmoother.test_smoother_tracker_id_none_warns_and_returns_unchanged": {"executed_lines": [90, 91, 96, 97, 99], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 88, "executed_branches": [], "missing_branches": []}, "TestDetectionsSmoother.test_smoother_window_full_averages_all_frames": {"executed_lines": [103, 104, 111, 118, 126, 127, 128], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 101, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [3, 5, 6, 7, 9, 10, 11, 14, 15, 38, 68, 88, 101], "summary": {"covered_lines": 13, "num_statements": 13, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"TestDetectionsSmoother": {"executed_lines": [45, 46, 53, 61, 62, 63, 65, 66, 70, 71, 78, 85, 86, 90, 91, 96, 97, 99, 103, 104, 111, 118, 126, 127, 128], "summary": {"covered_lines": 25, "num_statements": 25, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 14, "executed_branches": [[62, 63], [62, 65]], "missing_branches": []}, "": {"executed_lines": [3, 5, 6, 7, 9, 10, 11, 14, 15, 38, 68, 88, 101], "summary": {"covered_lines": 13, "num_statements": 13, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\detection\\utils\\__init__.py": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\detection\\utils\\test_boxes.py": {"executed_lines": [1, 3, 5, 6, 8, 17, 52, 57, 58, 61, 96, 102, 103, 104, 107, 142, 148, 149, 150, 153, 222, 229, 230, 235, 238, 269, 271, 272], "summary": {"covered_lines": 28, "num_statements": 28, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"test_clip_boxes": {"executed_lines": [57, 58], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 52, "executed_branches": [], "missing_branches": []}, "test_move_boxes": {"executed_lines": [102, 103, 104], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 96, "executed_branches": [], "missing_branches": []}, "test_scale_boxes": {"executed_lines": [148, 149, 150], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 142, "executed_branches": [], "missing_branches": []}, "test_denormalize_boxes": {"executed_lines": [229, 230, 235], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 222, "executed_branches": [], "missing_branches": []}, "test_xyxyxyxy_to_xyxy": {"executed_lines": [271, 272], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 269, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 5, 6, 8, 17, 52, 61, 96, 107, 142, 153, 222, 238, 269], "summary": {"covered_lines": 15, "num_statements": 15, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 3, 5, 6, 8, 17, 52, 57, 58, 61, 96, 102, 103, 104, 107, 142, 148, 149, 150, 153, 222, 229, 230, 235, 238, 269, 271, 272], "summary": {"covered_lines": 28, "num_statements": 28, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\detection\\utils\\test_converters.py": {"executed_lines": [1, 3, 5, 6, 7, 9, 28, 46, 47, 48, 51, 69, 70, 71, 74, 120, 121, 122, 125, 143, 144, 145, 148, 312, 313, 314, 315, 316, 319, 321, 322, 323, 324, 325, 331, 334, 335, 375, 379, 381, 382, 383, 385, 386, 388, 389, 390, 392, 393, 395, 396, 399, 469, 475, 476, 477, 480, 582, 588, 589, 590, 593, 594, 602, 603, 604, 612, 625, 627, 635, 645, 647, 650, 657, 659, 660, 663, 673, 675, 678, 691, 693, 701, 713, 715, 718, 729, 731, 734, 743, 745, 753, 789, 793, 796, 850, 857, 858, 861, 877, 879, 880, 881, 882], "summary": {"covered_lines": 104, "num_statements": 104, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [[322, 323], [322, 331], [324, 322], [324, 325]], "missing_branches": [], "functions": {"test_xywh_to_xyxy": {"executed_lines": [47, 48], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 46, "executed_branches": [], "missing_branches": []}, "test_xyxy_to_xywh": {"executed_lines": [70, 71], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 69, "executed_branches": [], "missing_branches": []}, "test_xyxy_to_xcycarh": {"executed_lines": [121, 122], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 120, "executed_branches": [], "missing_branches": []}, "test_xcycwh_to_xyxy": {"executed_lines": [144, 145], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 143, "executed_branches": [], "missing_branches": []}, "test_xyxy_to_mask": {"executed_lines": [313, 314, 315, 316], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 312, "executed_branches": [], "missing_branches": []}, "_mask_to_xyxy_reference": {"executed_lines": [321, 322, 323, 324, 325, 331], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 319, "executed_branches": [[322, 323], [322, 331], [324, 322], [324, 325]], "missing_branches": []}, "TestMaskToXyxy.test_mask_to_xyxy_known_values": {"executed_lines": [379, 381, 382, 383], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 375, "executed_branches": [], "missing_branches": []}, "TestMaskToXyxy.test_mask_to_xyxy_matches_reference": {"executed_lines": [388, 389, 390, 392, 393, 395, 396], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 386, "executed_branches": [], "missing_branches": []}, "test_mask_to_rle": {"executed_lines": [475, 476, 477], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 469, "executed_branches": [], "missing_branches": []}, "test_rle_to_mask": {"executed_lines": [588, 589, 590], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 582, "executed_branches": [], "missing_branches": []}, "test_mask_rle_compressed_round_trip": {"executed_lines": [594, 602, 603, 604], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 593, "executed_branches": [], "missing_branches": []}, "test_is_compressed_rle": {"executed_lines": [627], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 625, "executed_branches": [], "missing_branches": []}, "test_base48_decode": {"executed_lines": [647], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 645, "executed_branches": [], "missing_branches": []}, "test_base48_decode_malformed": {"executed_lines": [659, 660], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 657, "executed_branches": [], "missing_branches": []}, "test_base48_encode": {"executed_lines": [675], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 673, "executed_branches": [], "missing_branches": []}, "test_base48_round_trip": {"executed_lines": [693], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 691, "executed_branches": [], "missing_branches": []}, "test_delta_decode": {"executed_lines": [715], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 713, "executed_branches": [], "missing_branches": []}, "test_delta_encode": {"executed_lines": [731], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 729, "executed_branches": [], "missing_branches": []}, "test_delta_round_trip": {"executed_lines": [745], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 743, "executed_branches": [], "missing_branches": []}, "test_mask_to_rle_counts": {"executed_lines": [793], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 789, "executed_branches": [], "missing_branches": []}, "test_rle_counts_to_mask": {"executed_lines": [857, 858], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 850, "executed_branches": [], "missing_branches": []}, "test_mask_rle_counts_round_trip": {"executed_lines": [879, 880, 881, 882], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 877, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 5, 6, 7, 9, 28, 46, 51, 69, 74, 120, 125, 143, 148, 312, 319, 334, 335, 375, 385, 386, 399, 469, 480, 582, 593, 612, 625, 635, 645, 650, 657, 663, 673, 678, 691, 701, 713, 718, 729, 734, 743, 753, 789, 796, 850, 861, 877], "summary": {"covered_lines": 49, "num_statements": 49, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"TestMaskToXyxy": {"executed_lines": [379, 381, 382, 383, 388, 389, 390, 392, 393, 395, 396], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 334, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 5, 6, 7, 9, 28, 46, 47, 48, 51, 69, 70, 71, 74, 120, 121, 122, 125, 143, 144, 145, 148, 312, 313, 314, 315, 316, 319, 321, 322, 323, 324, 325, 331, 334, 335, 375, 385, 386, 399, 469, 475, 476, 477, 480, 582, 588, 589, 590, 593, 594, 602, 603, 604, 612, 625, 627, 635, 645, 647, 650, 657, 659, 660, 663, 673, 675, 678, 691, 693, 701, 713, 715, 718, 729, 731, 734, 743, 745, 753, 789, 793, 796, 850, 857, 858, 861, 877, 879, 880, 881, 882], "summary": {"covered_lines": 93, "num_statements": 93, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [[322, 323], [322, 331], [324, 322], [324, 325]], "missing_branches": []}}}, "tests\\detection\\utils\\test_internal.py": {"executed_lines": [1, 3, 4, 6, 7, 9, 10, 17, 18, 20, 21, 23, 24, 25, 28, 454, 461, 462, 463, 464, 465, 466, 469, 472, 473, 474, 477, 488, 675, 680, 681, 682, 685, 686, 687, 691, 696, 850, 856, 857, 858, 859, 860, 864, 869, 1032, 1033, 1034, 1035, 1037, 1038, 1039, 1040, 1042], "summary": {"covered_lines": 54, "num_statements": 57, "percent_covered": 92.20779220779221, "percent_covered_display": "92", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 94.73684210526316, "percent_statements_covered_display": "95", "num_branches": 20, "num_partial_branches": 3, "covered_branches": 17, "missing_branches": 3, "percent_branches_covered": 85.0, "percent_branches_covered_display": "85"}, "missing_lines": [483, 683, 1036], "excluded_lines": [], "executed_branches": [[472, -28], [472, 473], [473, 474], [682, 685], [685, -488], [685, 686], [686, 687], [686, 691], [858, -696], [858, 859], [859, 860], [859, 864], [1035, 1037], [1037, -869], [1037, 1038], [1039, 1040], [1039, 1042]], "missing_branches": [[473, 483], [682, 683], [1035, 1036]], "functions": {"test_process_roboflow_result": {"executed_lines": [461, 462, 463, 464, 465, 466, 469, 472, 473, 474, 477], "summary": {"covered_lines": 11, "num_statements": 12, "percent_covered": 87.5, "percent_covered_display": "88", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 91.66666666666667, "percent_statements_covered_display": "92", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [483], "excluded_lines": [], "start_line": 454, "executed_branches": [[472, -28], [472, 473], [473, 474]], "missing_branches": [[473, 483]]}, "test_merge_data": {"executed_lines": [680, 681, 682, 685, 686, 687, 691], "summary": {"covered_lines": 7, "num_statements": 8, "percent_covered": 85.71428571428571, "percent_covered_display": "86", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 87.5, "percent_statements_covered_display": "88", "num_branches": 6, "num_partial_branches": 1, "covered_branches": 5, "missing_branches": 1, "percent_branches_covered": 83.33333333333333, "percent_branches_covered_display": "83"}, "missing_lines": [683], "excluded_lines": [], "start_line": 675, "executed_branches": [[682, 685], [685, -488], [685, 686], [686, 687], [686, 691]], "missing_branches": [[682, 683]]}, "test_get_data_item": {"executed_lines": [856, 857, 858, 859, 860, 864], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 850, "executed_branches": [[858, -696], [858, 859], [859, 860], [859, 864]], "missing_branches": []}, "test_merge_metadata": {"executed_lines": [1033, 1034, 1035, 1037, 1038, 1039, 1040, 1042], "summary": {"covered_lines": 8, "num_statements": 9, "percent_covered": 86.66666666666667, "percent_covered_display": "87", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 88.88888888888889, "percent_statements_covered_display": "89", "num_branches": 6, "num_partial_branches": 1, "covered_branches": 5, "missing_branches": 1, "percent_branches_covered": 83.33333333333333, "percent_branches_covered_display": "83"}, "missing_lines": [1036], "excluded_lines": [], "start_line": 1032, "executed_branches": [[1035, 1037], [1037, -869], [1037, 1038], [1039, 1040], [1039, 1042]], "missing_branches": [[1035, 1036]]}, "": {"executed_lines": [1, 3, 4, 6, 7, 9, 10, 17, 18, 20, 21, 23, 24, 25, 28, 454, 488, 675, 696, 850, 869, 1032], "summary": {"covered_lines": 22, "num_statements": 22, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 3, 4, 6, 7, 9, 10, 17, 18, 20, 21, 23, 24, 25, 28, 454, 461, 462, 463, 464, 465, 466, 469, 472, 473, 474, 477, 488, 675, 680, 681, 682, 685, 686, 687, 691, 696, 850, 856, 857, 858, 859, 860, 864, 869, 1032, 1033, 1034, 1035, 1037, 1038, 1039, 1040, 1042], "summary": {"covered_lines": 54, "num_statements": 57, "percent_covered": 92.20779220779221, "percent_covered_display": "92", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 94.73684210526316, "percent_statements_covered_display": "95", "num_branches": 20, "num_partial_branches": 3, "covered_branches": 17, "missing_branches": 3, "percent_branches_covered": 85.0, "percent_branches_covered_display": "85"}, "missing_lines": [483, 683, 1036], "excluded_lines": [], "start_line": 1, "executed_branches": [[472, -28], [472, 473], [473, 474], [682, 685], [685, -488], [685, 686], [686, 687], [686, 691], [858, -696], [858, 859], [859, 860], [859, 864], [1035, 1037], [1037, -869], [1037, 1038], [1039, 1040], [1039, 1042]], "missing_branches": [[473, 483], [682, 683], [1035, 1036]]}}}, "tests\\detection\\utils\\test_iou_and_nms.py": {"executed_lines": [1, 3, 5, 6, 8, 21, 24, 28, 29, 30, 31, 34, 37, 39, 50, 163, 169, 170, 174, 177, 269, 275, 276, 279, 282, 474, 481, 482, 485, 488, 654, 661, 662, 665, 666, 667, 670, 822, 829, 830, 835, 838, 1093, 1100, 1101, 1107, 1108, 1109, 1117, 1130, 1134, 1139, 1140, 1142, 1147, 1153, 1154, 1155, 1163, 1170, 1180, 1181, 1183, 1184, 1186, 1187, 1188, 1189, 1192, 1195, 1203, 1211, 1212, 1213, 1215, 1220, 1221, 1222, 1223, 1225, 1228, 1229, 1231, 1232, 1235, 1236, 1238, 1240, 1241, 1243, 1246, 1248, 1250, 1251, 1253, 1255, 1257, 1272, 1276, 1278, 1279, 1280, 1282, 1288, 1289, 1291, 1293, 1295, 1297, 1299, 1300, 1302, 1325, 1337, 1338, 1340, 1348, 1350, 1351, 1353, 1355, 1356, 1357, 1359, 1367, 1371, 1372, 1374, 1375, 1378, 1381, 1385, 1386, 1387, 1388, 1396, 1397, 1399, 1402, 1404, 1411, 1415, 1416, 1417, 1418, 1426, 1428, 1431, 1433, 1436, 1437, 1438, 1439, 1443, 1445, 1446, 1448, 1452, 1453, 1455, 1456, 1458, 1459, 1460, 1462, 1468, 1470, 1477, 1482, 1483, 1484, 1485, 1493, 1494, 1496, 1502, 1504, 1511, 1515, 1516, 1517, 1518, 1526, 1533, 1536, 1539, 1541, 1542, 1544, 1548, 1550, 1552, 1553, 1554, 1556, 1560, 1562, 1565, 1566, 1567, 1568, 1569, 1578, 1582, 1583, 1586, 1592, 1593, 1594, 1595, 1596, 1598, 1599, 1607, 1610, 1617, 1625, 1634, 1635, 1636, 1638, 1640, 1641, 1643, 1645, 1646, 1647, 1649, 1650, 1652, 1655, 1658, 1660, 1662, 1663, 1664, 1665, 1667, 1669, 1670, 1671, 1672, 1673, 1674, 1675, 1677, 1679, 1680, 1681, 1682, 1684, 1685, 1686, 1689, 1690, 1693, 1694, 1698, 1702, 1703, 1704, 1705, 1706, 1707, 1711, 1715, 1716, 1717, 1719, 1721, 1722, 1724, 1725, 1726, 1727, 1729, 1730, 1731, 1733, 1735, 1736, 1738, 1739, 1740, 1741], "summary": {"covered_lines": 285, "num_statements": 285, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [[1279, -1257], [1279, 1280], [1595, 1596], [1595, 1598]], "missing_branches": [], "functions": {"_rotated_rect": {"executed_lines": [28, 29, 30, 31, 34], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 24, "executed_branches": [], "missing_branches": []}, "_aabb_of": {"executed_lines": [39], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 37, "executed_branches": [], "missing_branches": []}, "test_group_overlapping_boxes": {"executed_lines": [169, 170, 174], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 163, "executed_branches": [], "missing_branches": []}, "test_box_non_max_suppression": {"executed_lines": [275, 276, 279], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 269, "executed_branches": [], "missing_branches": []}, "test_mask_non_max_suppression": {"executed_lines": [481, 482, 485], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 474, "executed_branches": [], "missing_branches": []}, "test_mask_non_max_merge": {"executed_lines": [661, 662, 665, 666, 667], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 654, "executed_branches": [], "missing_branches": []}, "test_box_iou": {"executed_lines": [829, 830, 835], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 822, "executed_branches": [], "missing_branches": []}, "test_box_iou_batch": {"executed_lines": [1100, 1101, 1107, 1108, 1109], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1093, "executed_branches": [], "missing_branches": []}, "test_box_iou_batch_symmetric_large": {"executed_lines": [1139, 1140, 1142, 1147, 1153, 1154, 1155], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1134, "executed_branches": [], "missing_branches": []}, "test_oriented_box_iou_batch_is_invariant_to_non_square_scaling": {"executed_lines": [1180, 1181, 1183, 1184, 1186, 1187, 1188, 1189], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1170, "executed_branches": [], "missing_branches": []}, "TestOrientedBoxIouBatch.test_is_invariant_to_canvas_transforms": {"executed_lines": [1211, 1212, 1213, 1215, 1220, 1221, 1222, 1223], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1203, "executed_branches": [], "missing_branches": []}, "TestOrientedBoxIouBatch.test_supports_overlap_metric": {"executed_lines": [1228, 1229, 1231, 1232, 1235, 1236], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1225, "executed_branches": [], "missing_branches": []}, "TestOrientedBoxIouBatch.test_half_overlap_matches_analytic_value": {"executed_lines": [1240, 1241, 1243, 1246], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1238, "executed_branches": [], "missing_branches": []}, "TestOrientedBoxIouBatch.test_disjoint_boxes_score_zero": {"executed_lines": [1250, 1251, 1253, 1255], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1248, "executed_branches": [], "missing_branches": []}, "TestOrientedBoxIouBatch.test_self_comparison_is_symmetric_with_unit_diagonal": {"executed_lines": [1276, 1278, 1279, 1280], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1272, "executed_branches": [[1279, -1257], [1279, 1280]], "missing_branches": []}, "TestOrientedBoxIouBatch.test_envelope_overlap_without_polygon_overlap_scores_zero": {"executed_lines": [1288, 1289, 1291, 1293], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1282, "executed_branches": [], "missing_branches": []}, "TestOrientedBoxIouBatch.test_rejects_unsupported_overlap_metric": {"executed_lines": [1297, 1299, 1300], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1295, "executed_branches": [], "missing_branches": []}, "TestOrientedBoxIouBatch.test_degenerate_boxes_score_zero": {"executed_lines": [1337, 1338], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1325, "executed_branches": [], "missing_branches": []}, "TestOrientedBoxIouBatch.test_empty_input_returns_correct_shape": {"executed_lines": [1350, 1351, 1353, 1355, 1356, 1357], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1348, "executed_branches": [], "missing_branches": []}, "TestOrientedBoxIouBatch.test_invalid_shape_raises_value_error": {"executed_lines": [1371, 1372, 1374, 1375], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1367, "executed_branches": [], "missing_branches": []}, "TestOrientedBoxNonMaxSuppression.test_keeps_x_pattern": {"executed_lines": [1385, 1386, 1387, 1388, 1396, 1397, 1399, 1402], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1381, "executed_branches": [], "missing_branches": []}, "TestOrientedBoxNonMaxSuppression.test_suppression_is_class_aware": {"executed_lines": [1415, 1416, 1417, 1418, 1426, 1428, 1431], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1411, "executed_branches": [], "missing_branches": []}, "TestOrientedBoxNonMaxSuppression.test_length_mismatch_raises": {"executed_lines": [1436, 1437, 1438, 1439], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1433, "executed_branches": [], "missing_branches": []}, "TestOrientedBoxNonMaxSuppression.test_empty_predictions": {"executed_lines": [1445, 1446, 1448, 1452, 1453], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1443, "executed_branches": [], "missing_branches": []}, "TestOrientedBoxNonMaxSuppression.test_keeps_single_prediction": {"executed_lines": [1458, 1459, 1460, 1462, 1468], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1456, "executed_branches": [], "missing_branches": []}, "TestOrientedBoxNonMaxSuppression.test_threshold_extremes": {"executed_lines": [1482, 1483, 1484, 1485, 1493, 1494, 1496, 1502], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1477, "executed_branches": [], "missing_branches": []}, "TestOrientedBoxNonMaxSuppression.test_overlap_metric_determines_suppression": {"executed_lines": [1515, 1516, 1517, 1518, 1526, 1533], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1511, "executed_branches": [], "missing_branches": []}, "TestOrientedBoxNonMaxMerge.test_empty_predictions_returns_empty_groups": {"executed_lines": [1541, 1542, 1544, 1548], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1539, "executed_branches": [], "missing_branches": []}, "TestOrientedBoxNonMaxMerge.test_single_prediction_returns_singleton_group": {"executed_lines": [1552, 1553, 1554, 1556, 1560], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1550, "executed_branches": [], "missing_branches": []}, "TestOrientedBoxNonMaxMerge.test_groups_overlapping_oriented_boxes": {"executed_lines": [1565, 1566, 1567, 1568, 1569, 1578, 1582, 1583], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1562, "executed_branches": [], "missing_branches": []}, "_naive_mask_iou": {"executed_lines": [1592, 1593, 1594, 1595, 1596, 1598, 1599], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1586, "executed_branches": [[1595, 1596], [1595, 1598]], "missing_branches": []}, "TestMaskIouBatch.test_matches_naive_reference_on_random_masks": {"executed_lines": [1634, 1635, 1636, 1638, 1640, 1641], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1625, "executed_branches": [], "missing_branches": []}, "TestMaskIouBatch.test_chunking_matches_single_pass": {"executed_lines": [1645, 1646, 1647, 1649, 1650, 1652, 1655, 1658], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1643, "executed_branches": [], "missing_branches": []}, "TestMaskIouBatch.test_mismatched_spatial_shape_raises": {"executed_lines": [1662, 1663, 1664, 1665], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1660, "executed_branches": [], "missing_branches": []}, "TestMaskIouBatch.test_invalid_ndim_raises": {"executed_lines": [1669, 1670, 1671, 1672, 1673, 1674, 1675], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1667, "executed_branches": [], "missing_branches": []}, "TestMaskIouBatch.test_identical_disjoint_and_empty": {"executed_lines": [1679, 1680, 1681, 1682, 1684, 1685, 1686, 1689, 1690, 1693, 1694], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1677, "executed_branches": [], "missing_branches": []}, "TestMaskIouBatch.test_matmul_emits_no_runtime_warnings": {"executed_lines": [1702, 1703, 1704, 1705, 1706, 1707], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1698, "executed_branches": [], "missing_branches": []}, "TestMaskIouBatch.test_float64_promotion_for_large_float32_masks": {"executed_lines": [1715, 1716, 1717], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1711, "executed_branches": [], "missing_branches": []}, "TestMaskIouBatch.test_compact_mask_mixed_input_gives_same_result": {"executed_lines": [1721, 1722, 1724, 1725, 1726, 1727, 1729, 1730, 1731], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1719, "executed_branches": [], "missing_branches": []}, "TestMaskIouBatch.test_detection_exceeds_limit_warns_and_completes": {"executed_lines": [1735, 1736, 1738, 1739, 1740, 1741], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1733, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 5, 6, 8, 21, 24, 37, 50, 163, 177, 269, 282, 474, 488, 654, 670, 822, 838, 1093, 1117, 1130, 1134, 1163, 1170, 1192, 1195, 1203, 1225, 1238, 1248, 1257, 1272, 1282, 1295, 1302, 1325, 1340, 1348, 1359, 1367, 1378, 1381, 1404, 1411, 1433, 1443, 1455, 1456, 1470, 1477, 1504, 1511, 1536, 1539, 1550, 1562, 1586, 1607, 1610, 1617, 1625, 1643, 1660, 1667, 1677, 1698, 1711, 1719, 1733], "summary": {"covered_lines": 70, "num_statements": 70, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"TestOrientedBoxIouBatch": {"executed_lines": [1211, 1212, 1213, 1215, 1220, 1221, 1222, 1223, 1228, 1229, 1231, 1232, 1235, 1236, 1240, 1241, 1243, 1246, 1250, 1251, 1253, 1255, 1276, 1278, 1279, 1280, 1288, 1289, 1291, 1293, 1297, 1299, 1300, 1337, 1338, 1350, 1351, 1353, 1355, 1356, 1357, 1371, 1372, 1374, 1375], "summary": {"covered_lines": 45, "num_statements": 45, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1192, "executed_branches": [[1279, -1257], [1279, 1280]], "missing_branches": []}, "TestOrientedBoxNonMaxSuppression": {"executed_lines": [1385, 1386, 1387, 1388, 1396, 1397, 1399, 1402, 1415, 1416, 1417, 1418, 1426, 1428, 1431, 1436, 1437, 1438, 1439, 1445, 1446, 1448, 1452, 1453, 1458, 1459, 1460, 1462, 1468, 1482, 1483, 1484, 1485, 1493, 1494, 1496, 1502, 1515, 1516, 1517, 1518, 1526, 1533], "summary": {"covered_lines": 43, "num_statements": 43, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1378, "executed_branches": [], "missing_branches": []}, "TestOrientedBoxNonMaxMerge": {"executed_lines": [1541, 1542, 1544, 1548, 1552, 1553, 1554, 1556, 1560, 1565, 1566, 1567, 1568, 1569, 1578, 1582, 1583], "summary": {"covered_lines": 17, "num_statements": 17, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1536, "executed_branches": [], "missing_branches": []}, "TestMaskIouBatch": {"executed_lines": [1634, 1635, 1636, 1638, 1640, 1641, 1645, 1646, 1647, 1649, 1650, 1652, 1655, 1658, 1662, 1663, 1664, 1665, 1669, 1670, 1671, 1672, 1673, 1674, 1675, 1679, 1680, 1681, 1682, 1684, 1685, 1686, 1689, 1690, 1693, 1694, 1702, 1703, 1704, 1705, 1706, 1707, 1715, 1716, 1717, 1721, 1722, 1724, 1725, 1726, 1727, 1729, 1730, 1731, 1735, 1736, 1738, 1739, 1740, 1741], "summary": {"covered_lines": 60, "num_statements": 60, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1607, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 5, 6, 8, 21, 24, 28, 29, 30, 31, 34, 37, 39, 50, 163, 169, 170, 174, 177, 269, 275, 276, 279, 282, 474, 481, 482, 485, 488, 654, 661, 662, 665, 666, 667, 670, 822, 829, 830, 835, 838, 1093, 1100, 1101, 1107, 1108, 1109, 1117, 1130, 1134, 1139, 1140, 1142, 1147, 1153, 1154, 1155, 1163, 1170, 1180, 1181, 1183, 1184, 1186, 1187, 1188, 1189, 1192, 1195, 1203, 1225, 1238, 1248, 1257, 1272, 1282, 1295, 1302, 1325, 1340, 1348, 1359, 1367, 1378, 1381, 1404, 1411, 1433, 1443, 1455, 1456, 1470, 1477, 1504, 1511, 1536, 1539, 1550, 1562, 1586, 1592, 1593, 1594, 1595, 1596, 1598, 1599, 1607, 1610, 1617, 1625, 1643, 1660, 1667, 1677, 1698, 1711, 1719, 1733], "summary": {"covered_lines": 120, "num_statements": 120, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [[1595, 1596], [1595, 1598]], "missing_branches": []}}}, "tests\\detection\\utils\\test_masks.py": {"executed_lines": [1, 3, 5, 6, 7, 9, 18, 268, 275, 276, 277, 280, 361, 366, 367, 368, 371, 418, 421, 422, 423, 426, 495, 501, 502, 503, 506, 719, 728, 729, 736], "summary": {"covered_lines": 31, "num_statements": 31, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"test_move_masks": {"executed_lines": [275, 276, 277], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 268, "executed_branches": [], "missing_branches": []}, "test_calculate_masks_centroids": {"executed_lines": [366, 367, 368], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 361, "executed_branches": [], "missing_branches": []}, "test_contains_holes": {"executed_lines": [421, 422, 423], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 418, "executed_branches": [], "missing_branches": []}, "test_contains_multiple_segments": {"executed_lines": [501, 502, 503], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 495, "executed_branches": [], "missing_branches": []}, "test_filter_segments_by_distance_sweep": {"executed_lines": [728, 729, 736], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 719, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 5, 6, 7, 9, 18, 268, 280, 361, 371, 418, 426, 495, 506, 719], "summary": {"covered_lines": 16, "num_statements": 16, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 3, 5, 6, 7, 9, 18, 268, 275, 276, 277, 280, 361, 366, 367, 368, 371, 418, 421, 422, 423, 426, 495, 501, 502, 503, 506, 719, 728, 729, 736], "summary": {"covered_lines": 31, "num_statements": 31, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\detection\\utils\\test_polygons.py": {"executed_lines": [1, 3, 5, 6, 8, 14, 92, 99, 100, 103, 104, 105, 108, 109, 110, 115, 116, 117, 118, 126, 127, 129, 131, 132, 133, 134, 135, 137, 139, 141, 143, 145, 154, 156, 157, 158, 160, 167, 169, 170, 171], "summary": {"covered_lines": 41, "num_statements": 41, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [[104, -14], [104, 105], [134, -116], [134, 135]], "missing_branches": [], "functions": {"test_filter_polygons_by_area": {"executed_lines": [99, 100, 103, 104, 105], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 92, "executed_branches": [[104, -14], [104, 105]], "missing_branches": []}, "_regular_polygon": {"executed_lines": [109, 110], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 108, "executed_branches": [], "missing_branches": []}, "TestApproximatePolygon.test_within_budget_and_valid": {"executed_lines": [126, 127, 129, 131, 132, 133, 134, 135], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 118, "executed_branches": [[134, -116], [134, 135]], "missing_branches": []}, "TestApproximatePolygon.test_zero_percentage_keeps_polygon": {"executed_lines": [139, 141, 143], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 137, "executed_branches": [], "missing_branches": []}, "TestApproximatePolygon.test_raises_on_out_of_range_percentage": {"executed_lines": [156, 157, 158], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 154, "executed_branches": [], "missing_branches": []}, "TestApproximatePolygon.test_raises_on_non_positive_epsilon_step": {"executed_lines": [169, 170, 171], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 167, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 5, 6, 8, 14, 92, 108, 115, 116, 117, 118, 137, 145, 154, 160, 167], "summary": {"covered_lines": 17, "num_statements": 17, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"TestApproximatePolygon": {"executed_lines": [126, 127, 129, 131, 132, 133, 134, 135, 139, 141, 143, 156, 157, 158, 169, 170, 171], "summary": {"covered_lines": 17, "num_statements": 17, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 115, "executed_branches": [[134, -116], [134, 135]], "missing_branches": []}, "": {"executed_lines": [1, 3, 5, 6, 8, 14, 92, 99, 100, 103, 104, 105, 108, 109, 110, 115, 116, 117, 118, 137, 145, 154, 160, 167], "summary": {"covered_lines": 24, "num_statements": 24, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [[104, -14], [104, 105]], "missing_branches": []}}}, "tests\\detection\\utils\\test_vlms.py": {"executed_lines": [1, 3, 6, 63, 64, 70, 106, 109], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"test_edit_distance": {"executed_lines": [64], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 63, "executed_branches": [], "missing_branches": []}, "test_fuzzy_match_index": {"executed_lines": [109], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 106, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 6, 63, 70, 106], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 3, 6, 63, 64, 70, 106, 109], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\draw\\__init__.py": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\draw\\test_color.py": {"executed_lines": [1, 3, 5, 7, 10, 58, 70, 71, 72, 75, 91, 101, 102, 103, 106, 139, 144, 145, 146, 149, 182, 187, 188, 189, 192, 214, 219, 220, 221, 224, 246, 251, 252, 253, 256, 264, 269, 270, 271, 274, 282, 287, 288, 289, 292, 302, 303, 306, 315, 316, 317], "summary": {"covered_lines": 51, "num_statements": 51, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"test_color_from_hex": {"executed_lines": [70, 71, 72], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 58, "executed_branches": [], "missing_branches": []}, "test_color_as_hex": {"executed_lines": [101, 102, 103], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 91, "executed_branches": [], "missing_branches": []}, "test_color_from_rgb_tuple": {"executed_lines": [144, 145, 146], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 139, "executed_branches": [], "missing_branches": []}, "test_color_from_bgr_tuple": {"executed_lines": [187, 188, 189], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 182, "executed_branches": [], "missing_branches": []}, "test_color_from_rgba_tuple": {"executed_lines": [219, 220, 221], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 214, "executed_branches": [], "missing_branches": []}, "test_color_from_bgra_tuple": {"executed_lines": [251, 252, 253], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 246, "executed_branches": [], "missing_branches": []}, "test_color_as_rgba": {"executed_lines": [269, 270, 271], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 264, "executed_branches": [], "missing_branches": []}, "test_color_as_bgra": {"executed_lines": [287, 288, 289], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 282, "executed_branches": [], "missing_branches": []}, "test_color_repr": {"executed_lines": [303], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 302, "executed_branches": [], "missing_branches": []}, "test_color_hash": {"executed_lines": [316, 317], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 315, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 5, 7, 10, 58, 75, 91, 106, 139, 149, 182, 192, 214, 224, 246, 256, 264, 274, 282, 292, 302, 306, 315], "summary": {"covered_lines": 24, "num_statements": 24, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 3, 5, 7, 10, 58, 70, 71, 72, 75, 91, 101, 102, 103, 106, 139, 144, 145, 146, 149, 182, 187, 188, 189, 192, 214, 219, 220, 221, 224, 246, 251, 252, 253, 256, 264, 269, 270, 271, 274, 282, 287, 288, 289, 292, 302, 303, 306, 315, 316, 317], "summary": {"covered_lines": 51, "num_statements": 51, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\geometry\\__init__.py": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\geometry\\test_core.py": {"executed_lines": [1, 3, 6, 29, 39, 40, 43, 64, 72, 73], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"test_vector_cross_product": {"executed_lines": [39, 40], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 29, "executed_branches": [], "missing_branches": []}, "test_vector_magnitude": {"executed_lines": [72, 73], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 64, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 6, 29, 43, 64], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 3, 6, 29, 39, 40, 43, 64, 72, 73], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\geometry\\test_utils.py": {"executed_lines": [1, 2, 4, 5, 8, 29, 30, 31, 32, 34, 37, 50, 59, 60], "summary": {"covered_lines": 14, "num_statements": 14, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"generate_test_polygon": {"executed_lines": [29, 30, 31, 32, 34], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 8, "executed_branches": [], "missing_branches": []}, "test_get_polygon_center": {"executed_lines": [59, 60], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 50, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 2, 4, 5, 8, 37, 50], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 2, 4, 5, 8, 29, 30, 31, 32, 34, 37, 50, 59, 60], "summary": {"covered_lines": 14, "num_statements": 14, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\helpers.py": {"executed_lines": [9, 11, 13, 15, 16, 19, 62, 63, 65, 79, 125, 126, 128, 144, 178, 180, 181, 183, 184, 185, 187, 188, 189, 190, 192, 194, 197, 215, 218, 231, 234, 235, 236, 239, 245, 248, 251, 252, 254, 255, 257, 258, 260, 264, 267, 268, 271, 274, 281, 282, 283, 284, 287, 290, 291, 292, 293, 294, 295, 297, 298, 301, 304, 305, 306, 307, 310, 313, 314, 317, 320, 321, 322, 323, 326, 329, 330, 331, 334, 335, 336, 337, 338, 341, 342, 343, 346, 347, 355, 356, 357, 360, 403, 405, 407, 408, 410, 412, 413, 414, 415, 416, 418, 419, 420, 422, 424, 425, 426, 429, 430, 431, 433, 434, 436, 437, 438, 439, 442, 443, 445, 448, 451, 452, 453, 456, 457, 458, 460, 471, 492, 498, 499, 500, 502, 503, 505, 506, 507, 509, 512, 513, 514, 515, 518, 519, 520, 521, 525, 526, 527, 528, 530], "summary": {"covered_lines": 153, "num_statements": 155, "percent_covered": 98.26589595375722, "percent_covered_display": "98", "missing_lines": 2, "excluded_lines": 1, "percent_statements_covered": 98.70967741935483, "percent_statements_covered_display": "99", "num_branches": 18, "num_partial_branches": 1, "covered_branches": 17, "missing_branches": 1, "percent_branches_covered": 94.44444444444444, "percent_branches_covered_display": "94"}, "missing_lines": [261, 494], "excluded_lines": [198], "executed_branches": [[183, 184], [183, 194], [322, -320], [322, 323], [407, 408], [407, 410], [422, 424], [422, 456], [433, 434], [433, 451], [492, 498], [502, 503], [502, 530], [503, 505], [503, 509], [509, 512], [509, 525]], "missing_branches": [[492, 494]], "functions": {"_create_detections": {"executed_lines": [62, 65], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 19, "executed_branches": [], "missing_branches": []}, "_create_detections.convert_data": {"executed_lines": [63], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 62, "executed_branches": [], "missing_branches": []}, "_create_key_points": {"executed_lines": [125, 128], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 79, "executed_branches": [], "missing_branches": []}, "_create_key_points.convert_data": {"executed_lines": [126], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 125, "executed_branches": [], "missing_branches": []}, "_generate_random_boxes": {"executed_lines": [178, 180, 181, 183, 184, 185, 187, 188, 189, 190, 192, 194], "summary": {"covered_lines": 12, "num_statements": 12, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 144, "executed_branches": [[183, 184], [183, 194]], "missing_branches": []}, "assert_almost_equal": {"executed_lines": [215], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 1, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [198], "start_line": 197, "executed_branches": [], "missing_branches": []}, "assert_image_mostly_same": {"executed_lines": [231, 234, 235, 236, 239, 245], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 218, "executed_branches": [], "missing_branches": []}, "_FakeTensor.__init__": {"executed_lines": [252], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 251, "executed_branches": [], "missing_branches": []}, "_FakeTensor.cpu": {"executed_lines": [255], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 254, "executed_branches": [], "missing_branches": []}, "_FakeTensor.numpy": {"executed_lines": [258], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 257, "executed_branches": [], "missing_branches": []}, "_FakeTensor.int": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [261], "excluded_lines": [], "start_line": 260, "executed_branches": [], "missing_branches": []}, "_FakeYOLOv5Results.__init__": {"executed_lines": [268], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 267, "executed_branches": [], "missing_branches": []}, "_FakeUltralyticsBoxes.__init__": {"executed_lines": [281, 282, 283, 284], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 274, "executed_branches": [], "missing_branches": []}, "_FakeUltralyticsResults.__init__": {"executed_lines": [291, 292, 293, 294, 295], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 290, "executed_branches": [], "missing_branches": []}, "_FakeUltralyticsResults.__len__": {"executed_lines": [298], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 297, "executed_branches": [], "missing_branches": []}, "_FakeYoloNasPrediction.__init__": {"executed_lines": [305, 306, 307], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 304, "executed_branches": [], "missing_branches": []}, "_FakeYoloNasResults.__init__": {"executed_lines": [314], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 313, "executed_branches": [], "missing_branches": []}, "_FakeYoloNasKeyPoint.__init__": {"executed_lines": [321, 322, 323], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 320, "executed_branches": [[322, -320], [322, 323]], "missing_branches": []}, "_FakeYoloNasKeyPointResults.__init__": {"executed_lines": [330, 331], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 329, "executed_branches": [], "missing_branches": []}, "_FakeMediapipeLandmark.__init__": {"executed_lines": [336, 337, 338], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 335, "executed_branches": [], "missing_branches": []}, "_FakeMediapipePose.__init__": {"executed_lines": [343], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 342, "executed_branches": [], "missing_branches": []}, "_FakeMediapipeResults.__init__": {"executed_lines": [355, 356, 357], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 347, "executed_branches": [], "missing_branches": []}, "create_yolo_dataset": {"executed_lines": [403, 405, 407, 408, 410, 412, 413, 414, 415, 416, 418, 419, 420, 422, 424, 425, 426, 429, 430, 431, 433, 434, 436, 437, 438, 439, 442, 443, 445, 448, 451, 452, 453, 456, 457, 458, 460], "summary": {"covered_lines": 37, "num_statements": 37, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 6, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 360, "executed_branches": [[407, 408], [407, 410], [422, 424], [422, 456], [433, 434], [433, 451]], "missing_branches": []}, "create_predictions_with_class_iou_tests": {"executed_lines": [492, 498, 499, 500, 502, 503, 505, 506, 507, 509, 512, 513, 514, 515, 518, 519, 520, 521, 525, 526, 527, 528, 530], "summary": {"covered_lines": 23, "num_statements": 24, "percent_covered": 93.75, "percent_covered_display": "94", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 95.83333333333333, "percent_statements_covered_display": "96", "num_branches": 8, "num_partial_branches": 1, "covered_branches": 7, "missing_branches": 1, "percent_branches_covered": 87.5, "percent_branches_covered_display": "88"}, "missing_lines": [494], "excluded_lines": [], "start_line": 471, "executed_branches": [[492, 498], [502, 503], [502, 530], [503, 505], [503, 509], [509, 512], [509, 525]], "missing_branches": [[492, 494]]}, "": {"executed_lines": [9, 11, 13, 15, 16, 19, 79, 144, 197, 218, 248, 251, 254, 257, 260, 264, 267, 271, 274, 287, 290, 297, 301, 304, 310, 313, 317, 320, 326, 329, 334, 335, 341, 342, 346, 347, 360, 471], "summary": {"covered_lines": 38, "num_statements": 38, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"_FakeTensor": {"executed_lines": [252, 255, 258], "summary": {"covered_lines": 3, "num_statements": 4, "percent_covered": 75.0, "percent_covered_display": "75", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 75.0, "percent_statements_covered_display": "75", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [261], "excluded_lines": [], "start_line": 248, "executed_branches": [], "missing_branches": []}, "_FakeYOLOv5Results": {"executed_lines": [268], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 264, "executed_branches": [], "missing_branches": []}, "_FakeUltralyticsBoxes": {"executed_lines": [281, 282, 283, 284], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 271, "executed_branches": [], "missing_branches": []}, "_FakeUltralyticsResults": {"executed_lines": [291, 292, 293, 294, 295, 298], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 287, "executed_branches": [], "missing_branches": []}, "_FakeYoloNasPrediction": {"executed_lines": [305, 306, 307], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 301, "executed_branches": [], "missing_branches": []}, "_FakeYoloNasResults": {"executed_lines": [314], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 310, "executed_branches": [], "missing_branches": []}, "_FakeYoloNasKeyPoint": {"executed_lines": [321, 322, 323], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 317, "executed_branches": [[322, -320], [322, 323]], "missing_branches": []}, "_FakeYoloNasKeyPointResults": {"executed_lines": [330, 331], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 326, "executed_branches": [], "missing_branches": []}, "_FakeMediapipeLandmark": {"executed_lines": [336, 337, 338], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 334, "executed_branches": [], "missing_branches": []}, "_FakeMediapipePose": {"executed_lines": [343], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 341, "executed_branches": [], "missing_branches": []}, "_FakeMediapipeResults": {"executed_lines": [355, 356, 357], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 346, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [9, 11, 13, 15, 16, 19, 62, 63, 65, 79, 125, 126, 128, 144, 178, 180, 181, 183, 184, 185, 187, 188, 189, 190, 192, 194, 197, 215, 218, 231, 234, 235, 236, 239, 245, 248, 251, 254, 257, 260, 264, 267, 271, 274, 287, 290, 297, 301, 304, 310, 313, 317, 320, 326, 329, 334, 335, 341, 342, 346, 347, 360, 403, 405, 407, 408, 410, 412, 413, 414, 415, 416, 418, 419, 420, 422, 424, 425, 426, 429, 430, 431, 433, 434, 436, 437, 438, 439, 442, 443, 445, 448, 451, 452, 453, 456, 457, 458, 460, 471, 492, 498, 499, 500, 502, 503, 505, 506, 507, 509, 512, 513, 514, 515, 518, 519, 520, 521, 525, 526, 527, 528, 530], "summary": {"covered_lines": 123, "num_statements": 124, "percent_covered": 98.57142857142857, "percent_covered_display": "99", "missing_lines": 1, "excluded_lines": 1, "percent_statements_covered": 99.19354838709677, "percent_statements_covered_display": "99", "num_branches": 16, "num_partial_branches": 1, "covered_branches": 15, "missing_branches": 1, "percent_branches_covered": 93.75, "percent_branches_covered_display": "94"}, "missing_lines": [494], "excluded_lines": [198], "start_line": 1, "executed_branches": [[183, 184], [183, 194], [407, 408], [407, 410], [422, 424], [422, 456], [433, 434], [433, 451], [492, 498], [502, 503], [502, 530], [503, 505], [503, 509], [509, 512], [509, 525]], "missing_branches": [[492, 494]]}}}, "tests\\key_points\\__init__.py": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\key_points\\test_annotators.py": {"executed_lines": [1, 2, 4, 5, 8, 16, 23, 24, 27, 31, 39, 40, 41, 42, 45, 49, 56, 57, 60, 62, 64, 68, 69, 70, 72, 74, 78, 79, 80, 82, 84, 87, 88, 89, 92, 100, 107, 108, 111, 115, 123, 124, 125, 128, 132, 139, 140, 143, 145, 147, 151, 152, 153, 155, 157, 161, 162, 163, 165, 173, 178, 179, 181, 184, 190, 195, 199, 200, 201, 203, 206, 208, 209, 211, 216, 217, 219, 221, 226, 228, 229, 231, 236, 237, 239, 240, 242, 244, 245, 250, 255, 257, 260, 264, 265, 267, 269, 270, 274, 276, 278, 279, 281, 290, 292, 293, 296, 299, 300, 304, 305, 306, 308, 313, 315, 316, 318, 319, 320, 322, 324, 325, 326, 331, 336, 338, 341, 345, 346, 349, 352, 353, 357, 358, 359, 361, 365, 367, 368, 370, 371, 372, 374, 376, 377, 378, 383, 388, 390, 393, 397, 398, 401, 402, 428, 431, 432, 434, 467, 468, 469, 471, 488, 489, 490, 492, 502, 503, 504], "summary": {"covered_lines": 169, "num_statements": 169, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"TestVertexAnnotator.test_annotate_with_default_parameters": {"executed_lines": [23, 24, 27], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 16, "executed_branches": [], "missing_branches": []}, "TestVertexAnnotator.test_annotate_with_custom_color_and_radius": {"executed_lines": [39, 40, 41, 42, 45], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 31, "executed_branches": [], "missing_branches": []}, "TestVertexAnnotator.test_annotate_empty_key_points": {"executed_lines": [56, 57, 60], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 49, "executed_branches": [], "missing_branches": []}, "TestVertexAnnotator.test_visible_false_skips_vertex": {"executed_lines": [64, 68, 69, 70], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 62, "executed_branches": [], "missing_branches": []}, "TestVertexAnnotator.test_visible_true_draws_vertex": {"executed_lines": [74, 78, 79, 80], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 72, "executed_branches": [], "missing_branches": []}, "TestVertexAnnotator.test_visible_none_draws_all": {"executed_lines": [84, 87, 88, 89], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 82, "executed_branches": [], "missing_branches": []}, "TestEdgeAnnotator.test_annotate_with_default_parameters": {"executed_lines": [107, 108, 111], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 100, "executed_branches": [], "missing_branches": []}, "TestEdgeAnnotator.test_annotate_with_custom_edges": {"executed_lines": [123, 124, 125, 128], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 115, "executed_branches": [], "missing_branches": []}, "TestEdgeAnnotator.test_annotate_empty_key_points": {"executed_lines": [139, 140, 143], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 132, "executed_branches": [], "missing_branches": []}, "TestEdgeAnnotator.test_visible_false_skips_edge": {"executed_lines": [147, 151, 152, 153], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 145, "executed_branches": [], "missing_branches": []}, "TestEdgeAnnotator.test_visible_true_draws_edge": {"executed_lines": [157, 161, 162, 163], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 155, "executed_branches": [], "missing_branches": []}, "TestEdgeAnnotator.test_annotate_no_edges_found": {"executed_lines": [173, 178, 179, 181], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 165, "executed_branches": [], "missing_branches": []}, "TestVertexEllipseAnnotator.test_annotate_with_covariance_data": {"executed_lines": [195, 199, 200, 201, 203, 206, 208, 209], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 190, "executed_branches": [], "missing_branches": []}, "TestVertexEllipseAnnotator.test_annotate_empty_key_points": {"executed_lines": [216, 217, 219], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 211, "executed_branches": [], "missing_branches": []}, "TestVertexEllipseAnnotator.test_annotate_missing_covariance_data_raises": {"executed_lines": [226, 228, 229], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 221, "executed_branches": [], "missing_branches": []}, "TestVertexEllipseAnnotator.test_annotate_invalid_covariance_shape_raises": {"executed_lines": [236, 237, 239, 240], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 231, "executed_branches": [], "missing_branches": []}, "TestVertexEllipseAnnotator.test_visible_false_skips_keypoint": {"executed_lines": [244, 245, 250, 255, 257, 260, 264, 265], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 242, "executed_branches": [], "missing_branches": []}, "TestVertexEllipseAnnotator.test_max_axis_caps_large_eigenvalue": {"executed_lines": [269, 270, 274, 276, 278, 279], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 267, "executed_branches": [], "missing_branches": []}, "TestVertexEllipseAnnotator.test_constructor_raises_on_invalid_params": {"executed_lines": [292, 293], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 290, "executed_branches": [], "missing_branches": []}, "TestVertexEllipseOutlineAnnotator.test_annotate_draws_outlines": {"executed_lines": [300, 304, 305, 306, 308, 313, 315, 316], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 299, "executed_branches": [], "missing_branches": []}, "TestVertexEllipseOutlineAnnotator.test_annotate_empty_key_points": {"executed_lines": [319, 320, 322], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 318, "executed_branches": [], "missing_branches": []}, "TestVertexEllipseOutlineAnnotator.test_visible_false_skips_keypoint": {"executed_lines": [325, 326, 331, 336, 338, 341, 345, 346], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 324, "executed_branches": [], "missing_branches": []}, "TestVertexEllipseHaloAnnotator.test_annotate_draws_halo": {"executed_lines": [353, 357, 358, 359, 361, 365, 367, 368], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 352, "executed_branches": [], "missing_branches": []}, "TestVertexEllipseHaloAnnotator.test_annotate_empty_key_points": {"executed_lines": [371, 372, 374], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 370, "executed_branches": [], "missing_branches": []}, "TestVertexEllipseHaloAnnotator.test_visible_false_skips_keypoint": {"executed_lines": [377, 378, 383, 388, 390, 393, 397, 398], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 376, "executed_branches": [], "missing_branches": []}, "TestVertexLabelAnnotator.test_resolve_labels_returns_expected": {"executed_lines": [431, 432], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 428, "executed_branches": [], "missing_branches": []}, "TestVertexLabelAnnotator.test_resolve_labels_raises": {"executed_lines": [468, 469], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 467, "executed_branches": [], "missing_branches": []}, "TestVertexLabelAnnotator.test_resolve_color_list_returns_expected": {"executed_lines": [489, 490], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 488, "executed_branches": [], "missing_branches": []}, "TestVertexLabelAnnotator.test_resolve_color_list_wrong_length_raises": {"executed_lines": [503, 504], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 502, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 2, 4, 5, 8, 16, 31, 49, 62, 72, 82, 92, 100, 115, 132, 145, 155, 165, 184, 190, 211, 221, 231, 242, 267, 281, 290, 296, 299, 318, 324, 349, 352, 370, 376, 401, 402, 428, 434, 467, 471, 488, 492, 502], "summary": {"covered_lines": 44, "num_statements": 44, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"TestVertexAnnotator": {"executed_lines": [23, 24, 27, 39, 40, 41, 42, 45, 56, 57, 60, 64, 68, 69, 70, 74, 78, 79, 80, 84, 87, 88, 89], "summary": {"covered_lines": 23, "num_statements": 23, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 8, "executed_branches": [], "missing_branches": []}, "TestEdgeAnnotator": {"executed_lines": [107, 108, 111, 123, 124, 125, 128, 139, 140, 143, 147, 151, 152, 153, 157, 161, 162, 163, 173, 178, 179, 181], "summary": {"covered_lines": 22, "num_statements": 22, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 92, "executed_branches": [], "missing_branches": []}, "TestVertexEllipseAnnotator": {"executed_lines": [195, 199, 200, 201, 203, 206, 208, 209, 216, 217, 219, 226, 228, 229, 236, 237, 239, 240, 244, 245, 250, 255, 257, 260, 264, 265, 269, 270, 274, 276, 278, 279, 292, 293], "summary": {"covered_lines": 34, "num_statements": 34, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 184, "executed_branches": [], "missing_branches": []}, "TestVertexEllipseOutlineAnnotator": {"executed_lines": [300, 304, 305, 306, 308, 313, 315, 316, 319, 320, 322, 325, 326, 331, 336, 338, 341, 345, 346], "summary": {"covered_lines": 19, "num_statements": 19, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 296, "executed_branches": [], "missing_branches": []}, "TestVertexEllipseHaloAnnotator": {"executed_lines": [353, 357, 358, 359, 361, 365, 367, 368, 371, 372, 374, 377, 378, 383, 388, 390, 393, 397, 398], "summary": {"covered_lines": 19, "num_statements": 19, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 349, "executed_branches": [], "missing_branches": []}, "TestVertexLabelAnnotator": {"executed_lines": [431, 432, 468, 469, 489, 490, 503, 504], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 401, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 2, 4, 5, 8, 16, 31, 49, 62, 72, 82, 92, 100, 115, 132, 145, 155, 165, 184, 190, 211, 221, 231, 242, 267, 281, 290, 296, 299, 318, 324, 349, 352, 370, 376, 401, 402, 428, 434, 467, 471, 488, 492, 502], "summary": {"covered_lines": 44, "num_statements": 44, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\key_points\\test_core.py": {"executed_lines": [1, 3, 4, 6, 7, 16, 31, 371, 372, 373, 374, 377, 393, 508, 510, 511, 514, 517, 518, 523, 525, 526, 531, 532, 533, 535, 536, 546, 547, 548, 550, 551, 557, 558, 559, 561, 562, 568, 569, 570, 572, 573, 582, 583, 584, 585, 589, 590, 594, 595, 597, 598, 603, 608, 613, 614, 616, 617, 621, 626, 629, 631, 632, 633, 634, 637, 639, 640, 642, 647, 650, 652, 658, 659, 660, 662, 663, 666, 691, 695, 696, 697, 698, 699, 702, 704, 705, 706, 709, 711, 717, 719, 722, 724, 731, 733, 736, 738, 744, 746, 749, 751, 757, 759, 760, 763, 765, 771, 774, 775, 778, 780, 785, 786, 787, 788, 791, 793, 799, 800, 801, 802, 803, 804, 805, 806, 809, 811, 816, 817, 820, 861, 863, 864, 867, 869, 872, 875, 876, 879, 905, 907, 908, 911, 913, 916, 919, 922, 948, 950, 951, 954, 991, 993, 996, 999, 1002, 1004, 1006, 1007, 1009, 1010, 1012, 1013, 1015, 1028, 1032, 1033, 1034, 1036, 1037, 1039, 1041, 1043, 1044, 1046, 1047, 1048, 1050, 1051, 1053, 1055, 1057, 1059, 1060, 1061, 1063, 1065, 1067, 1069, 1070, 1072, 1074, 1075, 1077, 1078, 1082, 1087, 1396, 1398, 1399, 1402, 1437, 1439, 1440], "summary": {"covered_lines": 205, "num_statements": 205, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [[800, 801], [800, 806], [816, -809], [816, 817]], "missing_branches": [], "functions": {"test_key_points_getitem": {"executed_lines": [372, 373, 374], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 371, "executed_branches": [], "missing_branches": []}, "test_key_points_getitem_detection_level": {"executed_lines": [510, 511], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 508, "executed_branches": [], "missing_branches": []}, "TestKeyPointsVisible.test_visible_defaults_to_none": {"executed_lines": [518, 523], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 517, "executed_branches": [], "missing_branches": []}, "TestKeyPointsVisible.test_visible_set_from_confidence_threshold": {"executed_lines": [526, 531, 532, 533], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 525, "executed_branches": [], "missing_branches": []}, "TestKeyPointsVisible.test_visible_preserved_on_skeleton_filter": {"executed_lines": [536, 546, 547, 548], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 535, "executed_branches": [], "missing_branches": []}, "TestKeyPointsVisible.test_visible_preserved_on_int_index": {"executed_lines": [551, 557, 558, 559], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 550, "executed_branches": [], "missing_branches": []}, "TestKeyPointsVisible.test_visible_preserved_on_anchor_slice": {"executed_lines": [562, 568, 569, 570], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 561, "executed_branches": [], "missing_branches": []}, "TestKeyPointsVisible.test_visible_preserved_on_2d_bool_mask": {"executed_lines": [573, 582, 583, 584, 585], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 572, "executed_branches": [], "missing_branches": []}, "TestKeyPointsVisible.test_visible_none_stays_none_on_filter": {"executed_lines": [590, 594, 595], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 589, "executed_branches": [], "missing_branches": []}, "TestKeyPointsVisible.test_equality_with_visible": {"executed_lines": [598, 603, 608, 613, 614], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 597, "executed_branches": [], "missing_branches": []}, "TestKeyPointsVisible.test_equality_visible_none_vs_set": {"executed_lines": [617, 621, 626], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 616, "executed_branches": [], "missing_branches": []}, "test_key_points_empty": {"executed_lines": [631, 632, 633, 634], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 629, "executed_branches": [], "missing_branches": []}, "test_key_points_is_empty": {"executed_lines": [639, 640, 642, 647], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 637, "executed_branches": [], "missing_branches": []}, "test_key_points_setitem": {"executed_lines": [652, 658, 659, 660, 662, 663], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 650, "executed_branches": [], "missing_branches": []}, "test_key_points_as_detections": {"executed_lines": [695, 696, 697, 698, 699], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 691, "executed_branches": [], "missing_branches": []}, "test_key_points_as_detections_empty": {"executed_lines": [704, 705, 706], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 702, "executed_branches": [], "missing_branches": []}, "test_key_points_as_detections_ignores_missing_keypoints": {"executed_lines": [711, 717, 719], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 709, "executed_branches": [], "missing_branches": []}, "test_key_points_as_detections_uses_detection_confidence": {"executed_lines": [724, 731, 733], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 722, "executed_branches": [], "missing_branches": []}, "test_key_points_as_detections_selected_keypoint_indices": {"executed_lines": [738, 744, 746], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 736, "executed_branches": [], "missing_branches": []}, "test_key_points_as_detections_confidence_over_selected_indices": {"executed_lines": [751, 757, 759, 760], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 749, "executed_branches": [], "missing_branches": []}, "test_key_points_as_detections_mixed_valid_invalid_batch": {"executed_lines": [765, 771, 774, 775], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 763, "executed_branches": [], "missing_branches": []}, "test_key_points_as_detections_with_data": {"executed_lines": [780, 785, 786, 787, 788], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 778, "executed_branches": [], "missing_branches": []}, "test_key_points_iteration": {"executed_lines": [793, 799, 800, 801, 802, 803, 804, 805, 806], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 791, "executed_branches": [[800, 801], [800, 806]], "missing_branches": []}, "test_key_points_iteration_no_confidence": {"executed_lines": [811, 816, 817], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 809, "executed_branches": [[816, -809], [816, 817]], "missing_branches": []}, "test_key_points_equality": {"executed_lines": [863, 864], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 861, "executed_branches": [], "missing_branches": []}, "test_key_points_equality_with_data": {"executed_lines": [869, 872, 875, 876], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 867, "executed_branches": [], "missing_branches": []}, "test_from_inference_input": {"executed_lines": [907, 908], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 905, "executed_branches": [], "missing_branches": []}, "test_from_inference_invalid_input": {"executed_lines": [913, 916, 919], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 911, "executed_branches": [], "missing_branches": []}, "test_from_yolo_nas_input": {"executed_lines": [950, 951], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 948, "executed_branches": [], "missing_branches": []}, "test_from_mediapipe_input": {"executed_lines": [993, 996], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 991, "executed_branches": [], "missing_branches": []}, "TestDeprecatedConfidenceConstructor.test_constructor_accepts_and_warns_on_deprecated_confidence_kwarg": {"executed_lines": [1004, 1006, 1007, 1009, 1010, 1012, 1013], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1002, "executed_branches": [], "missing_branches": []}, "TestDeprecatedConfidenceConstructor.test_constructor_rejects_both_confidence_and_keypoint_confidence": {"executed_lines": [1032, 1033, 1034, 1036, 1037], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1028, "executed_branches": [], "missing_branches": []}, "TestDeprecatedConfidenceConstructor.test_constructor_normal_keypoint_confidence_path": {"executed_lines": [1041, 1043, 1044, 1046, 1047, 1048, 1050, 1051], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1039, "executed_branches": [], "missing_branches": []}, "TestDeprecatedConfidenceConstructor.test_constructor_confidence_none_does_not_warn": {"executed_lines": [1055, 1057, 1059, 1060, 1061, 1063], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1053, "executed_branches": [], "missing_branches": []}, "TestDeprecatedConfidenceConstructor.test_constructor_data_none_defaults_to_empty_dict": {"executed_lines": [1067, 1069, 1070], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1065, "executed_branches": [], "missing_branches": []}, "TestDeprecatedConfidenceConstructor.test_keypoints_init_covers_all_dataclass_fields": {"executed_lines": [1074, 1075, 1077, 1078, 1082], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1072, "executed_branches": [], "missing_branches": []}, "test_with_nms": {"executed_lines": [1398, 1399], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1396, "executed_branches": [], "missing_branches": []}, "test_with_nms_raises": {"executed_lines": [1439, 1440], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1437, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 6, 7, 16, 31, 371, 377, 393, 508, 514, 517, 525, 535, 550, 561, 572, 589, 597, 616, 629, 637, 650, 666, 691, 702, 709, 722, 736, 749, 763, 778, 791, 809, 820, 861, 867, 879, 905, 911, 922, 948, 954, 991, 999, 1002, 1015, 1028, 1039, 1053, 1065, 1072, 1087, 1396, 1402, 1437], "summary": {"covered_lines": 57, "num_statements": 57, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"TestKeyPointsVisible": {"executed_lines": [518, 523, 526, 531, 532, 533, 536, 546, 547, 548, 551, 557, 558, 559, 562, 568, 569, 570, 573, 582, 583, 584, 585, 590, 594, 595, 598, 603, 608, 613, 614, 617, 621, 626], "summary": {"covered_lines": 34, "num_statements": 34, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 514, "executed_branches": [], "missing_branches": []}, "TestDeprecatedConfidenceConstructor": {"executed_lines": [1004, 1006, 1007, 1009, 1010, 1012, 1013, 1032, 1033, 1034, 1036, 1037, 1041, 1043, 1044, 1046, 1047, 1048, 1050, 1051, 1055, 1057, 1059, 1060, 1061, 1063, 1067, 1069, 1070, 1074, 1075, 1077, 1078, 1082], "summary": {"covered_lines": 34, "num_statements": 34, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 999, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 6, 7, 16, 31, 371, 372, 373, 374, 377, 393, 508, 510, 511, 514, 517, 525, 535, 550, 561, 572, 589, 597, 616, 629, 631, 632, 633, 634, 637, 639, 640, 642, 647, 650, 652, 658, 659, 660, 662, 663, 666, 691, 695, 696, 697, 698, 699, 702, 704, 705, 706, 709, 711, 717, 719, 722, 724, 731, 733, 736, 738, 744, 746, 749, 751, 757, 759, 760, 763, 765, 771, 774, 775, 778, 780, 785, 786, 787, 788, 791, 793, 799, 800, 801, 802, 803, 804, 805, 806, 809, 811, 816, 817, 820, 861, 863, 864, 867, 869, 872, 875, 876, 879, 905, 907, 908, 911, 913, 916, 919, 922, 948, 950, 951, 954, 991, 993, 996, 999, 1002, 1015, 1028, 1039, 1053, 1065, 1072, 1087, 1396, 1398, 1399, 1402, 1437, 1439, 1440], "summary": {"covered_lines": 137, "num_statements": 137, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [[800, 801], [800, 806], [816, -809], [816, 817]], "missing_branches": []}}}, "tests\\key_points\\test_skeletons.py": {"executed_lines": [1, 8, 9, 11, 12, 13, 17, 20, 23, 24, 25, 27, 30, 34, 35, 36, 37, 39, 41, 43, 44, 45, 47, 49, 50, 51, 53, 56, 59, 60], "summary": {"covered_lines": 30, "num_statements": 30, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 8, "num_partial_branches": 0, "covered_branches": 8, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [[11, -9], [11, 12], [35, 36], [35, 39], [50, 51], [50, 56], [59, -47], [59, 60]], "missing_branches": [], "functions": {"TestSkeletons.test_skeleton_enum_values": {"executed_lines": [11, 12, 13], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 9, "executed_branches": [[11, -9], [11, 12]], "missing_branches": []}, "TestSkeletons.test_skeletons_by_vertex_count": {"executed_lines": [20, 23, 24, 25], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 17, "executed_branches": [], "missing_branches": []}, "TestSkeletons.test_skeletons_by_edge_count": {"executed_lines": [30, 34, 35, 36, 37, 39], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 27, "executed_branches": [[35, 36], [35, 39]], "missing_branches": []}, "TestSkeletons.test_unique_vertices_calculation": {"executed_lines": [43, 44, 45], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 41, "executed_branches": [], "missing_branches": []}, "TestSkeletons.test_skeletons_by_vertex_count_mapping_behaviour": {"executed_lines": [49, 50, 51, 53, 56, 59, 60], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 47, "executed_branches": [[50, 51], [50, 56], [59, -47], [59, 60]], "missing_branches": []}, "": {"executed_lines": [1, 8, 9, 17, 27, 41, 47], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"TestSkeletons": {"executed_lines": [11, 12, 13, 20, 23, 24, 25, 30, 34, 35, 36, 37, 39, 43, 44, 45, 49, 50, 51, 53, 56, 59, 60], "summary": {"covered_lines": 23, "num_statements": 23, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 8, "num_partial_branches": 0, "covered_branches": 8, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 8, "executed_branches": [[11, -9], [11, 12], [35, 36], [35, 39], [50, 51], [50, 56], [59, -47], [59, 60]], "missing_branches": []}, "": {"executed_lines": [1, 8, 9, 17, 27, 41, 47], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\metrics\\__init__.py": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\metrics\\conftest.py": {"executed_lines": [1, 3, 4, 6, 9, 10, 11, 18, 19, 20, 26, 27, 28, 35, 36, 37, 44, 45, 46, 52, 53, 54, 66, 67, 82, 83, 96, 97, 98, 105, 106, 107, 113, 114, 115, 128, 129, 130, 137, 138, 139, 145, 163, 165, 168, 178, 179, 194, 202, 203, 219], "summary": {"covered_lines": 51, "num_statements": 54, "percent_covered": 92.85714285714286, "percent_covered_display": "93", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 94.44444444444444, "percent_statements_covered_display": "94", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [68, 84, 166], "excluded_lines": [], "executed_branches": [[165, 168]], "missing_branches": [[165, 166]], "functions": {"detections_50_50": {"executed_lines": [11], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 10, "executed_branches": [], "missing_branches": []}, "targets_50_50": {"executed_lines": [20], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 19, "executed_branches": [], "missing_branches": []}, "dummy_prediction": {"executed_lines": [28], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 27, "executed_branches": [], "missing_branches": []}, "predictions_no_overlap": {"executed_lines": [37], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 36, "executed_branches": [], "missing_branches": []}, "targets_no_overlap": {"executed_lines": [46], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 45, "executed_branches": [], "missing_branches": []}, "targets_two_objects_class_0": {"executed_lines": [54], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 53, "executed_branches": [], "missing_branches": []}, "predictions_multiple_classes": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [68], "excluded_lines": [], "start_line": 67, "executed_branches": [], "missing_branches": []}, "targets_multiple_classes": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [84], "excluded_lines": [], "start_line": 83, "executed_branches": [], "missing_branches": []}, "predictions_iou_064": {"executed_lines": [98], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 97, "executed_branches": [], "missing_branches": []}, "targets_iou_064": {"executed_lines": [107], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 106, "executed_branches": [], "missing_branches": []}, "predictions_confidence_ranking": {"executed_lines": [115], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 114, "executed_branches": [], "missing_branches": []}, "prediction_class_1": {"executed_lines": [130], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 129, "executed_branches": [], "missing_branches": []}, "target_class_1": {"executed_lines": [139], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 138, "executed_branches": [], "missing_branches": []}, "_yolo_dataset_factory": {"executed_lines": [163, 165, 168], "summary": {"covered_lines": 3, "num_statements": 4, "percent_covered": 66.66666666666667, "percent_covered_display": "67", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 75.0, "percent_statements_covered_display": "75", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [166], "excluded_lines": [], "start_line": 145, "executed_branches": [[165, 168]], "missing_branches": [[165, 166]]}, "yolo_dataset_structure": {"executed_lines": [194], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 179, "executed_branches": [], "missing_branches": []}, "yolo_dataset_two_classes": {"executed_lines": [219], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 203, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 6, 9, 10, 18, 19, 26, 27, 35, 36, 44, 45, 52, 53, 66, 67, 82, 83, 96, 97, 105, 106, 113, 114, 128, 129, 137, 138, 145, 178, 179, 202, 203], "summary": {"covered_lines": 35, "num_statements": 35, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 3, 4, 6, 9, 10, 11, 18, 19, 20, 26, 27, 28, 35, 36, 37, 44, 45, 46, 52, 53, 54, 66, 67, 82, 83, 96, 97, 98, 105, 106, 107, 113, 114, 115, 128, 129, 130, 137, 138, 139, 145, 163, 165, 168, 178, 179, 194, 202, 203, 219], "summary": {"covered_lines": 51, "num_statements": 54, "percent_covered": 92.85714285714286, "percent_covered_display": "93", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 94.44444444444444, "percent_statements_covered_display": "94", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [68, 84, 166], "excluded_lines": [], "start_line": 1, "executed_branches": [[165, 168]], "missing_branches": [[165, 166]]}}}, "tests\\metrics\\test_detection.py": {"executed_lines": [1, 3, 4, 6, 7, 9, 10, 11, 12, 18, 25, 26, 45, 46, 54, 55, 65, 74, 75, 77, 92, 108, 113, 119, 130, 142, 151, 152, 153, 154, 155, 157, 158, 159, 160, 161, 162, 164, 165, 166, 167, 168, 169, 170, 172, 173, 177, 181, 185, 364, 379, 380, 385, 387, 505, 515, 516, 524, 525, 527, 549, 559, 560, 568, 569, 571, 581, 587, 588, 590, 592, 621, 635, 636, 639, 641, 1097, 1107, 1108, 1118, 1120, 1130, 1131, 1134, 1141, 1145, 1152, 1156, 1161, 1164, 1169, 1170, 1172, 1173, 1174, 1179, 1188, 1189, 1194, 1195, 1197, 1202, 1203, 1207, 1213, 1243, 1247, 1248, 1250, 1258, 1262, 1265, 1272, 1281, 1288, 1289, 1293, 1294, 1304, 1312, 1313, 1316, 1324, 1330, 1331, 1333, 1347, 1348, 1349, 1350, 1353, 1363, 1374, 1375, 1380, 1387, 1397, 1404, 1405, 1406, 1409, 1416, 1417, 1419, 1445, 1449, 1456, 1458, 1475, 1477, 1478, 1480, 1482, 1485, 1502, 1519, 1527, 1528, 1529, 1531, 1533, 1534, 1544, 1546, 1548, 1554], "summary": {"covered_lines": 166, "num_statements": 166, "percent_covered": 99.42528735632185, "percent_covered_display": "99", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 8, "num_partial_branches": 1, "covered_branches": 7, "missing_branches": 1, "percent_branches_covered": 87.5, "percent_branches_covered_display": "88"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [[153, 154], [159, 160], [159, 162], [166, 167], [166, 170], [1172, 1173], [1172, 1179]], "missing_branches": [[153, 155]], "functions": {"_call_confusion_matrix_from_detections_masks": {"executed_lines": [26], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 25, "executed_branches": [], "missing_branches": []}, "_call_confusion_matrix_from_tensors_masks": {"executed_lines": [46], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 45, "executed_branches": [], "missing_branches": []}, "_call_confusion_matrix_evaluate_detection_batch_masks": {"executed_lines": [55], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 54, "executed_branches": [], "missing_branches": []}, "TestDetectionMetrics.create_empty_conf_matrix": {"executed_lines": [153, 154, 155], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 80.0, "percent_covered_display": "80", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [], "excluded_lines": [], "start_line": 152, "executed_branches": [[153, 154]], "missing_branches": [[153, 155]]}, "TestDetectionMetrics.update_ideal_conf_matrix": {"executed_lines": [159, 160, 161, 162], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 158, "executed_branches": [[159, 160], [159, 162]], "missing_branches": []}, "TestDetectionMetrics.worsen_ideal_conf_matrix": {"executed_lines": [166, 167, 168, 169, 170], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 165, "executed_branches": [[166, 167], [166, 170]], "missing_branches": []}, "TestDetectionMetrics.test_detections_to_tensor": {"executed_lines": [379, 380, 385], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 364, "executed_branches": [], "missing_branches": []}, "TestDetectionMetrics.test_from_tensors": {"executed_lines": [515, 516, 524, 525], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 505, "executed_branches": [], "missing_branches": []}, "TestDetectionMetrics.test_evaluate_detection_batch": {"executed_lines": [559, 560, 568, 569], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 549, "executed_branches": [], "missing_branches": []}, "TestDetectionMetrics.test_drop_extra_matches": {"executed_lines": [587, 588, 590], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 581, "executed_branches": [], "missing_branches": []}, "TestDetectionMetrics.test_compute_average_precision": {"executed_lines": [635, 636, 639], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 621, "executed_branches": [], "missing_branches": []}, "TestDetectionMetrics.test_confusion_matrix": {"executed_lines": [1107, 1108, 1118], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1097, "executed_branches": [], "missing_branches": []}, "TestDetectionMetrics.test_confusion_matrix_on_yolo_dataset": {"executed_lines": [1130, 1131, 1134, 1141, 1145, 1152, 1156, 1161, 1164, 1169, 1170, 1172, 1173, 1174, 1179, 1188, 1189, 1194, 1195, 1197, 1202, 1203, 1207], "summary": {"covered_lines": 23, "num_statements": 23, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1120, "executed_branches": [[1172, 1173], [1172, 1179]], "missing_branches": []}, "TestDetectionMetrics.test_validate_input_tensors_obb": {"executed_lines": [1247, 1248], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1243, "executed_branches": [], "missing_branches": []}, "TestDetectionMetrics.test_confusion_matrix_obb": {"executed_lines": [1258, 1262, 1265, 1272, 1281, 1288, 1289, 1293, 1294, 1304, 1312, 1313, 1316, 1324, 1330, 1331], "summary": {"covered_lines": 16, "num_statements": 16, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1250, "executed_branches": [], "missing_branches": []}, "TestDetectionMetrics.test_confusion_matrix_obb_regression_1760": {"executed_lines": [1347, 1348, 1349, 1350, 1353, 1363, 1374, 1375, 1380, 1387, 1397, 1404, 1405, 1406, 1409, 1416, 1417], "summary": {"covered_lines": 17, "num_statements": 17, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1333, "executed_branches": [], "missing_branches": []}, "TestDetectionMetrics.test_confusion_matrix_from_tensors_obb": {"executed_lines": [1449, 1456], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1445, "executed_branches": [], "missing_branches": []}, "TestDetectionMetrics.test_confusion_matrix_masks_rejection": {"executed_lines": [1477, 1478], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1475, "executed_branches": [], "missing_branches": []}, "TestDetectionMetrics.test_confusion_matrix_multiclass_obb": {"executed_lines": [1482, 1485, 1502, 1519, 1527, 1528, 1529], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1480, "executed_branches": [], "missing_branches": []}, "TestDetectionMetrics.test_confusion_matrix_metric_target_persistence_from_detections": {"executed_lines": [1533, 1534, 1544], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1531, "executed_branches": [], "missing_branches": []}, "TestDetectionMetrics.test_confusion_matrix_metric_target_persistence_from_tensors": {"executed_lines": [1548, 1554], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1546, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 6, 7, 9, 10, 11, 12, 18, 25, 45, 54, 65, 74, 75, 77, 92, 108, 113, 119, 130, 142, 151, 152, 157, 158, 164, 165, 172, 173, 177, 181, 185, 364, 387, 505, 527, 549, 571, 581, 592, 621, 641, 1097, 1120, 1213, 1243, 1250, 1333, 1419, 1445, 1458, 1475, 1480, 1531, 1546], "summary": {"covered_lines": 57, "num_statements": 57, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"TestDetectionMetrics": {"executed_lines": [153, 154, 155, 159, 160, 161, 162, 166, 167, 168, 169, 170, 379, 380, 385, 515, 516, 524, 525, 559, 560, 568, 569, 587, 588, 590, 635, 636, 639, 1107, 1108, 1118, 1130, 1131, 1134, 1141, 1145, 1152, 1156, 1161, 1164, 1169, 1170, 1172, 1173, 1174, 1179, 1188, 1189, 1194, 1195, 1197, 1202, 1203, 1207, 1247, 1248, 1258, 1262, 1265, 1272, 1281, 1288, 1289, 1293, 1294, 1304, 1312, 1313, 1316, 1324, 1330, 1331, 1347, 1348, 1349, 1350, 1353, 1363, 1374, 1375, 1380, 1387, 1397, 1404, 1405, 1406, 1409, 1416, 1417, 1449, 1456, 1477, 1478, 1482, 1485, 1502, 1519, 1527, 1528, 1529, 1533, 1534, 1544, 1548, 1554], "summary": {"covered_lines": 106, "num_statements": 106, "percent_covered": 99.12280701754386, "percent_covered_display": "99", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 8, "num_partial_branches": 1, "covered_branches": 7, "missing_branches": 1, "percent_branches_covered": 87.5, "percent_branches_covered_display": "88"}, "missing_lines": [], "excluded_lines": [], "start_line": 65, "executed_branches": [[153, 154], [159, 160], [159, 162], [166, 167], [166, 170], [1172, 1173], [1172, 1179]], "missing_branches": [[153, 155]]}, "": {"executed_lines": [1, 3, 4, 6, 7, 9, 10, 11, 12, 18, 25, 26, 45, 46, 54, 55, 65, 74, 75, 77, 92, 108, 113, 119, 130, 142, 151, 152, 157, 158, 164, 165, 172, 173, 177, 181, 185, 364, 387, 505, 527, 549, 571, 581, 592, 621, 641, 1097, 1120, 1213, 1243, 1250, 1333, 1419, 1445, 1458, 1475, 1480, 1531, 1546], "summary": {"covered_lines": 60, "num_statements": 60, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\metrics\\test_f1_score.py": {"executed_lines": [1, 2, 4, 5, 6, 7, 10, 11, 12, 13, 26, 27, 28, 39, 41, 42, 43, 44, 45, 47, 49, 53, 54, 56, 58, 67, 77, 78, 80, 81, 82, 84, 86, 89, 92, 93, 96, 97, 98, 100, 102, 103, 110, 111, 112, 113, 115, 117, 118, 124, 125, 127, 129, 131, 132, 138, 139, 141, 143, 145, 146, 152, 153, 155, 157, 162, 166, 172, 173, 179, 180, 182, 198, 201, 208, 213, 214, 219, 221, 223, 229, 230, 233, 235, 239, 240, 246, 247, 248, 250, 254, 255, 261, 262, 263, 265, 269, 270, 277, 278, 279, 280, 281, 283, 285, 286, 291, 292, 294, 296, 297, 303, 304, 306, 310, 311, 316, 317, 319, 321, 324, 325, 327, 331, 333, 334, 337, 338, 340, 344, 345, 350, 351, 353, 357, 358, 363, 364, 366, 370, 371, 376, 377], "summary": {"covered_lines": 143, "num_statements": 143, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"TestF1Score.predictions_multiple_classes": {"executed_lines": [13], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 12, "executed_branches": [], "missing_branches": []}, "TestF1Score.targets_multiple_classes": {"executed_lines": [28], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 27, "executed_branches": [], "missing_branches": []}, "TestF1Score.test_initialization_default": {"executed_lines": [41, 42, 43, 44, 45], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 39, "executed_branches": [], "missing_branches": []}, "TestF1Score.test_initialization_custom": {"executed_lines": [49, 53, 54], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 47, "executed_branches": [], "missing_branches": []}, "TestF1Score.test_size_specific_results_are_grouped_compatibly": {"executed_lines": [58, 67, 77, 78, 80, 81, 82], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 56, "executed_branches": [], "missing_branches": []}, "TestF1Score.test_reset": {"executed_lines": [86, 89, 92, 93, 96, 97, 98], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 84, "executed_branches": [], "missing_branches": []}, "TestF1Score.test_perfect_match": {"executed_lines": [102, 103, 110, 111, 112, 113], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 100, "executed_branches": [], "missing_branches": []}, "TestF1Score.test_no_overlap": {"executed_lines": [117, 118, 124, 125], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 115, "executed_branches": [], "missing_branches": []}, "TestF1Score.test_empty_predictions": {"executed_lines": [129, 131, 132, 138, 139], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 127, "executed_branches": [], "missing_branches": []}, "TestF1Score.test_empty_targets": {"executed_lines": [143, 145, 146, 152, 153], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 141, "executed_branches": [], "missing_branches": []}, "TestF1Score.test_false_positives_on_background_image_counted": {"executed_lines": [157, 162, 166, 172, 173, 179, 180], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 155, "executed_branches": [], "missing_branches": []}, "TestF1Score.test_false_positives_of_absent_class_counted": {"executed_lines": [201, 208, 213, 214, 219], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 198, "executed_branches": [], "missing_branches": []}, "TestF1Score.test_false_positives_on_background_image_weighted_returns_zero": {"executed_lines": [223, 229, 230, 233], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 221, "executed_branches": [], "missing_branches": []}, "TestF1Score.test_single_class_mixed_results": {"executed_lines": [239, 240, 246, 247, 248], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 235, "executed_branches": [], "missing_branches": []}, "TestF1Score.test_precision_recall_imbalance": {"executed_lines": [254, 255, 261, 262, 263], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 250, "executed_branches": [], "missing_branches": []}, "TestF1Score.test_multiple_classes": {"executed_lines": [269, 270, 277, 278, 279, 280, 281], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 265, "executed_branches": [], "missing_branches": []}, "TestF1Score.test_different_iou_thresholds": {"executed_lines": [285, 286, 291, 292], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 283, "executed_branches": [], "missing_branches": []}, "TestF1Score.test_confidence_ranking": {"executed_lines": [296, 297, 303, 304], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 294, "executed_branches": [], "missing_branches": []}, "TestF1Score.test_list_inputs": {"executed_lines": [310, 311, 316, 317], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 306, "executed_branches": [], "missing_branches": []}, "TestF1Score.test_mismatched_list_lengths": {"executed_lines": [321, 324, 325], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 319, "executed_branches": [], "missing_branches": []}, "TestF1Score.test_averaging_methods": {"executed_lines": [333, 334, 337, 338], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 331, "executed_branches": [], "missing_branches": []}, "TestF1Score.test_macro_averaging": {"executed_lines": [344, 345, 350, 351], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 340, "executed_branches": [], "missing_branches": []}, "TestF1Score.test_micro_averaging": {"executed_lines": [357, 358, 363, 364], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 353, "executed_branches": [], "missing_branches": []}, "TestF1Score.test_weighted_averaging": {"executed_lines": [370, 371, 376, 377], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 366, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 2, 4, 5, 6, 7, 10, 11, 12, 26, 27, 39, 47, 56, 84, 100, 115, 127, 141, 155, 182, 198, 221, 235, 250, 265, 283, 294, 306, 319, 327, 331, 340, 353, 366], "summary": {"covered_lines": 35, "num_statements": 35, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"TestF1Score": {"executed_lines": [13, 28, 41, 42, 43, 44, 45, 49, 53, 54, 58, 67, 77, 78, 80, 81, 82, 86, 89, 92, 93, 96, 97, 98, 102, 103, 110, 111, 112, 113, 117, 118, 124, 125, 129, 131, 132, 138, 139, 143, 145, 146, 152, 153, 157, 162, 166, 172, 173, 179, 180, 201, 208, 213, 214, 219, 223, 229, 230, 233, 239, 240, 246, 247, 248, 254, 255, 261, 262, 263, 269, 270, 277, 278, 279, 280, 281, 285, 286, 291, 292, 296, 297, 303, 304, 310, 311, 316, 317, 321, 324, 325, 333, 334, 337, 338, 344, 345, 350, 351, 357, 358, 363, 364, 370, 371, 376, 377], "summary": {"covered_lines": 108, "num_statements": 108, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 10, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 2, 4, 5, 6, 7, 10, 11, 12, 26, 27, 39, 47, 56, 84, 100, 115, 127, 141, 155, 182, 198, 221, 235, 250, 265, 283, 294, 306, 319, 327, 331, 340, 353, 366], "summary": {"covered_lines": 35, "num_statements": 35, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\metrics\\test_mean_average_precision.py": {"executed_lines": [1, 3, 4, 5, 6, 12, 13, 15, 23, 33, 34, 35, 37, 39, 41, 43, 44, 45, 50, 53, 62, 63, 64, 69, 78, 82, 88, 94, 97, 98, 102, 104, 106, 107, 108, 109, 114, 117, 125, 130, 138, 146, 156, 157, 158, 159, 160, 168, 171, 179, 184, 187, 197, 198, 199, 200, 201, 206, 209, 217, 223, 226, 236, 237, 238, 239, 240, 245, 248, 256, 260, 271, 284, 285, 286, 287, 288, 295, 298, 311, 312, 313, 315, 322, 327, 331, 334, 339, 341, 342, 343, 344, 345, 352, 354, 355, 356], "summary": {"covered_lines": 97, "num_statements": 118, "percent_covered": 82.5, "percent_covered_display": "82", "missing_lines": 21, "excluded_lines": 0, "percent_statements_covered": 82.20338983050847, "percent_statements_covered_display": "82", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [48, 67, 100, 112, 163, 164, 204, 243, 291, 293, 318, 319, 320, 348, 350, 359, 360, 361, 364, 365, 366], "excluded_lines": [], "executed_branches": [[312, 313], [312, 315]], "missing_branches": [], "functions": {"TestMeanAveragePrecision.test_result_preserves_size_specific_accessors": {"executed_lines": [15, 23, 33, 34, 35, 37, 39], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 13, "executed_branches": [], "missing_branches": []}, "TestMeanAveragePrecision.test_single_perfect_detection": {"executed_lines": [43, 44, 45], "summary": {"covered_lines": 3, "num_statements": 4, "percent_covered": 75.0, "percent_covered_display": "75", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 75.0, "percent_statements_covered_display": "75", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [48], "excluded_lines": [], "start_line": 41, "executed_branches": [], "missing_branches": []}, "TestMeanAveragePrecision.test_multiple_perfect_detections": {"executed_lines": [53, 62, 63, 64], "summary": {"covered_lines": 4, "num_statements": 5, "percent_covered": 80.0, "percent_covered_display": "80", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 80.0, "percent_statements_covered_display": "80", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [67], "excluded_lines": [], "start_line": 50, "executed_branches": [], "missing_branches": []}, "TestMeanAveragePrecision.test_perfect_non_square_oriented_boxes_get_full_map": {"executed_lines": [78, 82, 88, 94, 97, 98], "summary": {"covered_lines": 6, "num_statements": 7, "percent_covered": 85.71428571428571, "percent_covered_display": "86", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 85.71428571428571, "percent_statements_covered_display": "86", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [100], "excluded_lines": [], "start_line": 69, "executed_branches": [], "missing_branches": []}, "TestMeanAveragePrecision.test_batch_updates_perfect_detections": {"executed_lines": [104, 106, 107, 108, 109], "summary": {"covered_lines": 5, "num_statements": 6, "percent_covered": 83.33333333333333, "percent_covered_display": "83", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 83.33333333333333, "percent_statements_covered_display": "83", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [112], "excluded_lines": [], "start_line": 102, "executed_branches": [], "missing_branches": []}, "TestMeanAveragePrecision.test_scenario_1_success_case_imperfect_match": {"executed_lines": [117, 125, 130, 138, 146, 156, 157, 158, 159, 160], "summary": {"covered_lines": 10, "num_statements": 12, "percent_covered": 83.33333333333333, "percent_covered_display": "83", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 83.33333333333333, "percent_statements_covered_display": "83", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [163, 164], "excluded_lines": [], "start_line": 114, "executed_branches": [], "missing_branches": []}, "TestMeanAveragePrecision.test_scenario_2_missed_detection": {"executed_lines": [171, 179, 184, 187, 197, 198, 199, 200, 201], "summary": {"covered_lines": 9, "num_statements": 10, "percent_covered": 90.0, "percent_covered_display": "90", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 90.0, "percent_statements_covered_display": "90", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [204], "excluded_lines": [], "start_line": 168, "executed_branches": [], "missing_branches": []}, "TestMeanAveragePrecision.test_scenario_3_false_positive": {"executed_lines": [209, 217, 223, 226, 236, 237, 238, 239, 240], "summary": {"covered_lines": 9, "num_statements": 10, "percent_covered": 90.0, "percent_covered_display": "90", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 90.0, "percent_statements_covered_display": "90", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [243], "excluded_lines": [], "start_line": 206, "executed_branches": [], "missing_branches": []}, "TestMeanAveragePrecision.test_scenario_4_no_data": {"executed_lines": [248, 256, 260, 271, 284, 285, 286, 287, 288], "summary": {"covered_lines": 9, "num_statements": 11, "percent_covered": 81.81818181818181, "percent_covered_display": "82", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 81.81818181818181, "percent_statements_covered_display": "82", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [291, 293], "excluded_lines": [], "start_line": 245, "executed_branches": [], "missing_branches": []}, "TestMeanAveragePrecision.test_scenario_5_only_one_class_present": {"executed_lines": [298, 311, 312, 313, 315], "summary": {"covered_lines": 5, "num_statements": 8, "percent_covered": 70.0, "percent_covered_display": "70", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 62.5, "percent_statements_covered_display": "62", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [318, 319, 320], "excluded_lines": [], "start_line": 295, "executed_branches": [[312, 313], [312, 315]], "missing_branches": []}, "TestMeanAveragePrecision.test_mixed_classes_with_missing_detections": {"executed_lines": [327, 331, 334, 339, 341, 342, 343, 344, 345], "summary": {"covered_lines": 9, "num_statements": 11, "percent_covered": 81.81818181818181, "percent_covered_display": "82", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 81.81818181818181, "percent_statements_covered_display": "82", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [348, 350], "excluded_lines": [], "start_line": 322, "executed_branches": [], "missing_branches": []}, "TestMeanAveragePrecision.test_empty_predictions_and_targets": {"executed_lines": [354, 355, 356], "summary": {"covered_lines": 3, "num_statements": 9, "percent_covered": 33.333333333333336, "percent_covered_display": "33", "missing_lines": 6, "excluded_lines": 0, "percent_statements_covered": 33.333333333333336, "percent_statements_covered_display": "33", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [359, 360, 361, 364, 365, 366], "excluded_lines": [], "start_line": 352, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 5, 6, 12, 13, 41, 50, 69, 102, 114, 168, 206, 245, 295, 322, 352], "summary": {"covered_lines": 18, "num_statements": 18, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"TestMeanAveragePrecision": {"executed_lines": [15, 23, 33, 34, 35, 37, 39, 43, 44, 45, 53, 62, 63, 64, 78, 82, 88, 94, 97, 98, 104, 106, 107, 108, 109, 117, 125, 130, 138, 146, 156, 157, 158, 159, 160, 171, 179, 184, 187, 197, 198, 199, 200, 201, 209, 217, 223, 226, 236, 237, 238, 239, 240, 248, 256, 260, 271, 284, 285, 286, 287, 288, 298, 311, 312, 313, 315, 327, 331, 334, 339, 341, 342, 343, 344, 345, 354, 355, 356], "summary": {"covered_lines": 79, "num_statements": 100, "percent_covered": 79.41176470588235, "percent_covered_display": "79", "missing_lines": 21, "excluded_lines": 0, "percent_statements_covered": 79.0, "percent_statements_covered_display": "79", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [48, 67, 100, 112, 163, 164, 204, 243, 291, 293, 318, 319, 320, 348, 350, 359, 360, 361, 364, 365, 366], "excluded_lines": [], "start_line": 12, "executed_branches": [[312, 313], [312, 315]], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 5, 6, 12, 13, 41, 50, 69, 102, 114, 168, 206, 245, 295, 322, 352], "summary": {"covered_lines": 18, "num_statements": 18, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\metrics\\test_mean_average_precision_area.py": {"executed_lines": [1, 3, 4, 6, 7, 10, 13, 45, 49, 53, 59, 60, 63, 64, 65, 70, 99, 101, 108, 110, 115, 117, 118, 120, 121, 123, 128, 129], "summary": {"covered_lines": 28, "num_statements": 37, "percent_covered": 65.11627906976744, "percent_covered_display": "65", "missing_lines": 9, "excluded_lines": 0, "percent_statements_covered": 75.67567567567568, "percent_statements_covered_display": "76", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 6, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [72, 73, 77, 81, 82, 86, 90, 91, 95], "excluded_lines": [], "executed_branches": [], "missing_branches": [[72, 73], [72, 77], [81, 82], [81, 86], [90, 91], [90, 95]], "functions": {"TestMeanAveragePrecisionArea.test_area_calculation_and_size_specific_map": {"executed_lines": [49, 53, 59, 60, 63, 64, 65, 70], "summary": {"covered_lines": 8, "num_statements": 17, "percent_covered": 34.78260869565217, "percent_covered_display": "35", "missing_lines": 9, "excluded_lines": 0, "percent_statements_covered": 47.05882352941177, "percent_statements_covered_display": "47", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 6, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [72, 73, 77, 81, 82, 86, 90, 91, 95], "excluded_lines": [], "start_line": 45, "executed_branches": [], "missing_branches": [[72, 73], [72, 77], [81, 82], [81, 86], [90, 91], [90, 95]]}, "TestMeanAveragePrecisionArea.test_area_preserved_from_data": {"executed_lines": [101, 108, 110, 115, 117, 118, 120, 121, 123, 128, 129], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 99, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 6, 7, 10, 13, 45, 99], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"TestMeanAveragePrecisionArea": {"executed_lines": [49, 53, 59, 60, 63, 64, 65, 70, 101, 108, 110, 115, 117, 118, 120, 121, 123, 128, 129], "summary": {"covered_lines": 19, "num_statements": 28, "percent_covered": 55.88235294117647, "percent_covered_display": "56", "missing_lines": 9, "excluded_lines": 0, "percent_statements_covered": 67.85714285714286, "percent_statements_covered_display": "68", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 6, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [72, 73, 77, 81, 82, 86, 90, 91, 95], "excluded_lines": [], "start_line": 10, "executed_branches": [], "missing_branches": [[72, 73], [72, 77], [81, 82], [81, 86], [90, 91], [90, 95]]}, "": {"executed_lines": [1, 3, 4, 6, 7, 10, 13, 45, 99], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\metrics\\test_mean_average_recall.py": {"executed_lines": [1, 2, 4, 5, 6, 9, 10, 17, 147, 148, 157, 286, 287, 299, 310, 323, 326, 327, 339, 349, 360, 363, 365, 373, 383, 384, 385, 387, 388, 391, 393, 398, 399, 400, 403, 404, 407, 412, 413, 422, 423, 425, 426, 427, 430, 432, 435, 464, 466, 467, 468, 471, 472, 473, 477, 478, 479, 483, 490, 514, 516, 517, 518, 521, 522, 526, 527, 531, 537, 551, 553, 554, 557, 563, 564, 567, 568, 570, 571, 574, 575, 577, 578, 581, 582, 584, 595, 596, 597, 600, 603, 604, 605, 608, 609, 612, 616], "summary": {"covered_lines": 97, "num_statements": 98, "percent_covered": 98.03921568627452, "percent_covered_display": "98", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 98.9795918367347, "percent_statements_covered_display": "99", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [592], "excluded_lines": [], "executed_branches": [[570, 571], [570, 595], [574, 575]], "missing_branches": [[574, 592]], "functions": {"complex_scenario_targets": {"executed_lines": [17], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 10, "executed_branches": [], "missing_branches": []}, "complex_scenario_predictions": {"executed_lines": [157], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 148, "executed_branches": [], "missing_branches": []}, "two_class_two_image_detections": {"executed_lines": [299, 310, 323], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 287, "executed_branches": [], "missing_branches": []}, "three_class_single_image_detections": {"executed_lines": [339, 349, 360], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 327, "executed_branches": [], "missing_branches": []}, "test_mean_average_recall_result_preserves_size_subresults": {"executed_lines": [365, 373, 383, 384, 385, 387, 388], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 363, "executed_branches": [], "missing_branches": []}, "test_single_perfect_detection": {"executed_lines": [393, 398, 399, 400, 403, 404], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 391, "executed_branches": [], "missing_branches": []}, "test_complex_integration_scenario": {"executed_lines": [412, 422, 423, 425, 426, 427, 430, 432], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 407, "executed_branches": [], "missing_branches": []}, "test_complex_integration_scenario.mock_detections_list": {"executed_lines": [413], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 412, "executed_branches": [], "missing_branches": []}, "test_mar_at_k_limits_per_image_not_per_class": {"executed_lines": [464, 466, 467, 468, 471, 472, 473, 477, 478, 479, 483], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 435, "executed_branches": [], "missing_branches": []}, "test_three_class_single_image_scenario": {"executed_lines": [514, 516, 517, 518, 521, 522, 526, 527, 531], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 490, "executed_branches": [], "missing_branches": []}, "test_dataset_split_integration": {"executed_lines": [551, 553, 554, 557, 563, 564, 567, 568, 570, 571, 574, 575, 577, 578, 581, 582, 584, 595, 596, 597, 600, 603, 604, 605, 608, 609, 612, 616], "summary": {"covered_lines": 28, "num_statements": 29, "percent_covered": 93.93939393939394, "percent_covered_display": "94", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 96.55172413793103, "percent_statements_covered_display": "97", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [592], "excluded_lines": [], "start_line": 537, "executed_branches": [[570, 571], [570, 595], [574, 575]], "missing_branches": [[574, 592]]}, "": {"executed_lines": [1, 2, 4, 5, 6, 9, 10, 147, 148, 286, 287, 326, 327, 363, 391, 407, 435, 490, 537], "summary": {"covered_lines": 19, "num_statements": 19, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 2, 4, 5, 6, 9, 10, 17, 147, 148, 157, 286, 287, 299, 310, 323, 326, 327, 339, 349, 360, 363, 365, 373, 383, 384, 385, 387, 388, 391, 393, 398, 399, 400, 403, 404, 407, 412, 413, 422, 423, 425, 426, 427, 430, 432, 435, 464, 466, 467, 468, 471, 472, 473, 477, 478, 479, 483, 490, 514, 516, 517, 518, 521, 522, 526, 527, 531, 537, 551, 553, 554, 557, 563, 564, 567, 568, 570, 571, 574, 575, 577, 578, 581, 582, 584, 595, 596, 597, 600, 603, 604, 605, 608, 609, 612, 616], "summary": {"covered_lines": 97, "num_statements": 98, "percent_covered": 98.03921568627452, "percent_covered_display": "98", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 98.9795918367347, "percent_statements_covered_display": "99", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [592], "excluded_lines": [], "start_line": 1, "executed_branches": [[570, 571], [570, 595], [574, 575]], "missing_branches": [[574, 592]]}}}, "tests\\metrics\\test_oriented_bounding_box_metrics.py": {"executed_lines": [1, 2, 4, 5, 6, 7, 8, 9, 10, 11, 14, 15, 19, 27, 36, 41, 42, 44, 45, 47, 50, 57, 58, 60, 61], "summary": {"covered_lines": 25, "num_statements": 26, "percent_covered": 96.15384615384616, "percent_covered_display": "96", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 96.15384615384616, "percent_statements_covered_display": "96", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [63], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"_non_square_obb_detections": {"executed_lines": [15, 19], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 14, "executed_branches": [], "missing_branches": []}, "test_perfect_non_square_oriented_boxes_score_as_perfect": {"executed_lines": [41, 42, 44, 45, 47], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 36, "executed_branches": [], "missing_branches": []}, "test_mean_average_precision_accepts_obb_metric_target": {"executed_lines": [57, 58, 60, 61], "summary": {"covered_lines": 4, "num_statements": 5, "percent_covered": 80.0, "percent_covered_display": "80", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 80.0, "percent_statements_covered_display": "80", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [63], "excluded_lines": [], "start_line": 50, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 2, 4, 5, 6, 7, 8, 9, 10, 11, 14, 27, 36, 50], "summary": {"covered_lines": 14, "num_statements": 14, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 2, 4, 5, 6, 7, 8, 9, 10, 11, 14, 15, 19, 27, 36, 41, 42, 44, 45, 47, 50, 57, 58, 60, 61], "summary": {"covered_lines": 25, "num_statements": 26, "percent_covered": 96.15384615384616, "percent_covered_display": "96", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 96.15384615384616, "percent_statements_covered_display": "96", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [63], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\metrics\\test_precision.py": {"executed_lines": [1, 2, 4, 5, 6, 9, 10, 12, 20, 30, 31, 32, 34, 36, 38, 39, 40, 53, 54, 55, 67, 69, 70, 71, 72, 73, 75, 77, 81, 82, 84, 86, 89, 92, 93, 96, 97, 98, 100, 102, 103, 108, 109, 110, 111, 113, 115, 116, 120, 121, 123, 125, 127, 128, 131, 132, 134, 136, 138, 139, 143, 144, 146, 148, 153, 157, 163, 164, 170, 171, 173, 189, 192, 199, 204, 205, 210, 212, 214, 220, 221, 224, 226, 228, 229, 233, 234, 236, 240, 241, 249, 250, 251, 252, 253, 255, 257, 258, 262, 263, 265, 267, 268, 272, 274, 278, 279, 284, 285, 287, 289, 292, 293, 295, 299, 301, 302, 305, 306], "summary": {"covered_lines": 119, "num_statements": 119, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"TestPrecision.test_result_preserves_size_specific_accessors": {"executed_lines": [12, 20, 30, 31, 32, 34, 36], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 10, "executed_branches": [], "missing_branches": []}, "TestPrecision.predictions_multiple_classes": {"executed_lines": [40], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 39, "executed_branches": [], "missing_branches": []}, "TestPrecision.targets_multiple_classes": {"executed_lines": [55], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 54, "executed_branches": [], "missing_branches": []}, "TestPrecision.test_initialization_default": {"executed_lines": [69, 70, 71, 72, 73], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 67, "executed_branches": [], "missing_branches": []}, "TestPrecision.test_initialization_custom": {"executed_lines": [77, 81, 82], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 75, "executed_branches": [], "missing_branches": []}, "TestPrecision.test_reset": {"executed_lines": [86, 89, 92, 93, 96, 97, 98], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 84, "executed_branches": [], "missing_branches": []}, "TestPrecision.test_perfect_match": {"executed_lines": [102, 103, 108, 109, 110, 111], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 100, "executed_branches": [], "missing_branches": []}, "TestPrecision.test_no_overlap": {"executed_lines": [115, 116, 120, 121], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 113, "executed_branches": [], "missing_branches": []}, "TestPrecision.test_empty_predictions": {"executed_lines": [125, 127, 128, 131, 132], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 123, "executed_branches": [], "missing_branches": []}, "TestPrecision.test_empty_targets": {"executed_lines": [136, 138, 139, 143, 144], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 134, "executed_branches": [], "missing_branches": []}, "TestPrecision.test_false_positives_on_background_image_counted": {"executed_lines": [148, 153, 157, 163, 164, 170, 171], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 146, "executed_branches": [], "missing_branches": []}, "TestPrecision.test_false_positives_of_absent_class_counted": {"executed_lines": [192, 199, 204, 205, 210], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 189, "executed_branches": [], "missing_branches": []}, "TestPrecision.test_false_positives_on_background_image_weighted_returns_zero": {"executed_lines": [214, 220, 221, 224], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 212, "executed_branches": [], "missing_branches": []}, "TestPrecision.test_single_class": {"executed_lines": [228, 229, 233, 234], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 226, "executed_branches": [], "missing_branches": []}, "TestPrecision.test_multiple_classes": {"executed_lines": [240, 241, 249, 250, 251, 252, 253], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 236, "executed_branches": [], "missing_branches": []}, "TestPrecision.test_different_iou_thresholds": {"executed_lines": [257, 258, 262, 263], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 255, "executed_branches": [], "missing_branches": []}, "TestPrecision.test_confidence_ranking": {"executed_lines": [267, 268, 272], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 265, "executed_branches": [], "missing_branches": []}, "TestPrecision.test_list_inputs": {"executed_lines": [278, 279, 284, 285], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 274, "executed_branches": [], "missing_branches": []}, "TestPrecision.test_mismatched_list_lengths": {"executed_lines": [289, 292, 293], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 287, "executed_branches": [], "missing_branches": []}, "TestPrecision.test_averaging_methods": {"executed_lines": [301, 302, 305, 306], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 299, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 2, 4, 5, 6, 9, 10, 38, 39, 53, 54, 67, 75, 84, 100, 113, 123, 134, 146, 173, 189, 212, 226, 236, 255, 265, 274, 287, 295, 299], "summary": {"covered_lines": 30, "num_statements": 30, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"TestPrecision": {"executed_lines": [12, 20, 30, 31, 32, 34, 36, 40, 55, 69, 70, 71, 72, 73, 77, 81, 82, 86, 89, 92, 93, 96, 97, 98, 102, 103, 108, 109, 110, 111, 115, 116, 120, 121, 125, 127, 128, 131, 132, 136, 138, 139, 143, 144, 148, 153, 157, 163, 164, 170, 171, 192, 199, 204, 205, 210, 214, 220, 221, 224, 228, 229, 233, 234, 240, 241, 249, 250, 251, 252, 253, 257, 258, 262, 263, 267, 268, 272, 278, 279, 284, 285, 289, 292, 293, 301, 302, 305, 306], "summary": {"covered_lines": 89, "num_statements": 89, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 9, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 2, 4, 5, 6, 9, 10, 38, 39, 53, 54, 67, 75, 84, 100, 113, 123, 134, 146, 173, 189, 212, 226, 236, 255, 265, 274, 287, 295, 299], "summary": {"covered_lines": 30, "num_statements": 30, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\metrics\\test_recall.py": {"executed_lines": [1, 2, 4, 5, 6, 7, 10, 11, 13, 22, 32, 33, 34, 36, 38, 39, 41, 42, 43, 55, 56, 57, 69, 71, 72, 73, 74, 75, 77, 79, 83, 84, 86, 88, 91, 94, 95, 98, 99, 100, 102, 104, 105, 109, 110, 111, 112, 114, 116, 117, 121, 122, 124, 126, 128, 129, 132, 133, 135, 137, 139, 140, 143, 144, 146, 150, 151, 155, 156, 158, 162, 163, 170, 171, 172, 173, 174, 175, 177, 179, 180, 184, 185, 187, 189, 190, 194, 196, 200, 201, 205, 207, 211, 212, 217, 218, 220, 222, 225, 226, 228, 232, 234, 235, 238, 239, 241, 247, 259, 271, 272, 275], "summary": {"covered_lines": 112, "num_statements": 112, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"TestRecall.test_result_preserves_size_specific_accessors": {"executed_lines": [13, 22, 32, 33, 34, 36, 38, 39], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 11, "executed_branches": [], "missing_branches": []}, "TestRecall.predictions_multiple_classes": {"executed_lines": [43], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 42, "executed_branches": [], "missing_branches": []}, "TestRecall.targets_multiple_classes": {"executed_lines": [57], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 56, "executed_branches": [], "missing_branches": []}, "TestRecall.test_initialization_default": {"executed_lines": [71, 72, 73, 74, 75], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 69, "executed_branches": [], "missing_branches": []}, "TestRecall.test_initialization_custom": {"executed_lines": [79, 83, 84], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 77, "executed_branches": [], "missing_branches": []}, "TestRecall.test_reset": {"executed_lines": [88, 91, 94, 95, 98, 99, 100], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 86, "executed_branches": [], "missing_branches": []}, "TestRecall.test_perfect_match": {"executed_lines": [104, 105, 109, 110, 111, 112], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 102, "executed_branches": [], "missing_branches": []}, "TestRecall.test_no_overlap": {"executed_lines": [116, 117, 121, 122], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 114, "executed_branches": [], "missing_branches": []}, "TestRecall.test_empty_predictions": {"executed_lines": [126, 128, 129, 132, 133], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 124, "executed_branches": [], "missing_branches": []}, "TestRecall.test_empty_targets": {"executed_lines": [137, 139, 140, 143, 144], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 135, "executed_branches": [], "missing_branches": []}, "TestRecall.test_single_class_missed_detections": {"executed_lines": [150, 151, 155, 156], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 146, "executed_branches": [], "missing_branches": []}, "TestRecall.test_multiple_classes": {"executed_lines": [162, 163, 170, 171, 172, 173, 174, 175], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 158, "executed_branches": [], "missing_branches": []}, "TestRecall.test_different_iou_thresholds": {"executed_lines": [179, 180, 184, 185], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 177, "executed_branches": [], "missing_branches": []}, "TestRecall.test_confidence_ranking": {"executed_lines": [189, 190, 194], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 187, "executed_branches": [], "missing_branches": []}, "TestRecall.test_multiple_predictions_one_target": {"executed_lines": [200, 201, 205], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 196, "executed_branches": [], "missing_branches": []}, "TestRecall.test_list_inputs": {"executed_lines": [211, 212, 217, 218], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 207, "executed_branches": [], "missing_branches": []}, "TestRecall.test_mismatched_list_lengths": {"executed_lines": [222, 225, 226], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 220, "executed_branches": [], "missing_branches": []}, "TestRecall.test_averaging_methods": {"executed_lines": [234, 235, 238, 239], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 232, "executed_branches": [], "missing_branches": []}, "TestRecall.test_macro_averaging": {"executed_lines": [247, 259, 271, 272, 275], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 241, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 2, 4, 5, 6, 7, 10, 11, 41, 42, 55, 56, 69, 77, 86, 102, 114, 124, 135, 146, 158, 177, 187, 196, 207, 220, 228, 232, 241], "summary": {"covered_lines": 29, "num_statements": 29, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"TestRecall": {"executed_lines": [13, 22, 32, 33, 34, 36, 38, 39, 43, 57, 71, 72, 73, 74, 75, 79, 83, 84, 88, 91, 94, 95, 98, 99, 100, 104, 105, 109, 110, 111, 112, 116, 117, 121, 122, 126, 128, 129, 132, 133, 137, 139, 140, 143, 144, 150, 151, 155, 156, 162, 163, 170, 171, 172, 173, 174, 175, 179, 180, 184, 185, 189, 190, 194, 200, 201, 205, 211, 212, 217, 218, 222, 225, 226, 234, 235, 238, 239, 247, 259, 271, 272, 275], "summary": {"covered_lines": 83, "num_statements": 83, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 10, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 2, 4, 5, 6, 7, 10, 11, 41, 42, 55, 56, 69, 77, 86, 102, 114, 124, 135, 146, 158, 177, 187, 196, 207, 220, 228, 232, 241], "summary": {"covered_lines": 29, "num_statements": 29, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\test_validate_deprecations.py": {"executed_lines": [1, 3, 4, 6, 7, 9, 10, 11, 12, 13, 14, 33, 34, 41, 97, 98, 99, 102, 103, 104, 105, 106, 114, 116, 119], "summary": {"covered_lines": 25, "num_statements": 25, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"_detections": {"executed_lines": [34], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 33, "executed_branches": [], "missing_branches": []}, "test_validate_public_shims_warn": {"executed_lines": [98, 99], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 97, "executed_branches": [], "missing_branches": []}, "test_private_validation_paths_do_not_warn": {"executed_lines": [103, 104, 105, 106, 114, 116, 119], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 102, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 6, 7, 9, 10, 11, 12, 13, 14, 33, 41, 97, 102], "summary": {"covered_lines": 15, "num_statements": 15, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 3, 4, 6, 7, 9, 10, 11, 12, 13, 14, 33, 34, 41, 97, 98, 99, 102, 103, 104, 105, 106, 114, 116, 119], "summary": {"covered_lines": 25, "num_statements": 25, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\tracker\\__init__.py": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\tracker\\test_byte_tracker.py": {"executed_lines": [1, 2, 4, 7, 32, 36, 37, 41, 42, 43, 51, 59, 61], "summary": {"covered_lines": 13, "num_statements": 16, "percent_covered": 81.25, "percent_covered_display": "81", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 81.25, "percent_statements_covered_display": "81", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [38, 62, 63], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"test_byte_tracker": {"executed_lines": [36, 37], "summary": {"covered_lines": 2, "num_statements": 3, "percent_covered": 66.66666666666667, "percent_covered_display": "67", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 66.66666666666667, "percent_statements_covered_display": "67", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [38], "excluded_lines": [], "start_line": 32, "executed_branches": [], "missing_branches": []}, "test_byte_tracker_does_not_skip_external_ids_for_short_lived_tracks": {"executed_lines": [42, 51, 59, 61], "summary": {"covered_lines": 4, "num_statements": 6, "percent_covered": 66.66666666666667, "percent_covered_display": "67", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 66.66666666666667, "percent_statements_covered_display": "67", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [62, 63], "excluded_lines": [], "start_line": 41, "executed_branches": [], "missing_branches": []}, "test_byte_tracker_does_not_skip_external_ids_for_short_lived_tracks.detections_from_boxes": {"executed_lines": [43], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 42, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 2, 4, 7, 32, 41], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 2, 4, 7, 32, 36, 37, 41, 42, 43, 51, 59, 61], "summary": {"covered_lines": 13, "num_statements": 16, "percent_covered": 81.25, "percent_covered_display": "81", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 81.25, "percent_statements_covered_display": "81", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [38, 62, 63], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\utils\\__init__.py": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\utils\\conftest.py": {"executed_lines": [1, 3, 4, 5, 6, 8, 9, 12, 13, 14, 17, 18, 19, 22, 23, 27, 28, 32, 33, 37, 38, 42, 43, 47, 48, 52, 53, 57, 58, 62, 63, 67, 68, 72, 73, 77, 78, 82, 83, 87, 88, 94, 95], "summary": {"covered_lines": 43, "num_statements": 58, "percent_covered": 74.13793103448276, "percent_covered_display": "74", "missing_lines": 15, "excluded_lines": 0, "percent_statements_covered": 74.13793103448276, "percent_statements_covered_display": "74", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [24, 29, 34, 39, 44, 49, 54, 59, 64, 69, 74, 79, 84, 89, 96], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"empty_cv2_image": {"executed_lines": [14], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 13, "executed_branches": [], "missing_branches": []}, "empty_pillow_image": {"executed_lines": [19], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 18, "executed_branches": [], "missing_branches": []}, "all_images": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [24], "excluded_lines": [], "start_line": 23, "executed_branches": [], "missing_branches": []}, "one_image": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [29], "excluded_lines": [], "start_line": 28, "executed_branches": [], "missing_branches": []}, "two_images": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [34], "excluded_lines": [], "start_line": 33, "executed_branches": [], "missing_branches": []}, "three_images": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [39], "excluded_lines": [], "start_line": 38, "executed_branches": [], "missing_branches": []}, "four_images": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [44], "excluded_lines": [], "start_line": 43, "executed_branches": [], "missing_branches": []}, "all_images_tile": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [49], "excluded_lines": [], "start_line": 48, "executed_branches": [], "missing_branches": []}, "all_images_tile_and_custom_colors": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [54], "excluded_lines": [], "start_line": 53, "executed_branches": [], "missing_branches": []}, "all_images_tile_and_custom_grid": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [59], "excluded_lines": [], "start_line": 58, "executed_branches": [], "missing_branches": []}, "four_images_tile": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [64], "excluded_lines": [], "start_line": 63, "executed_branches": [], "missing_branches": []}, "single_image_tile": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [69], "excluded_lines": [], "start_line": 68, "executed_branches": [], "missing_branches": []}, "single_image_tile_enforced_grid": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [74], "excluded_lines": [], "start_line": 73, "executed_branches": [], "missing_branches": []}, "three_images_tile": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [79], "excluded_lines": [], "start_line": 78, "executed_branches": [], "missing_branches": []}, "two_images_tile": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [84], "excluded_lines": [], "start_line": 83, "executed_branches": [], "missing_branches": []}, "all_images_tile_and_custom_colors_and_titles": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [89], "excluded_lines": [], "start_line": 88, "executed_branches": [], "missing_branches": []}, "all_images_tile_and_titles_with_custom_configs": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [96], "excluded_lines": [], "start_line": 95, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 5, 6, 8, 9, 12, 13, 17, 18, 22, 23, 27, 28, 32, 33, 37, 38, 42, 43, 47, 48, 52, 53, 57, 58, 62, 63, 67, 68, 72, 73, 77, 78, 82, 83, 87, 88, 94, 95], "summary": {"covered_lines": 41, "num_statements": 41, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 3, 4, 5, 6, 8, 9, 12, 13, 14, 17, 18, 19, 22, 23, 27, 28, 32, 33, 37, 38, 42, 43, 47, 48, 52, 53, 57, 58, 62, 63, 67, 68, 72, 73, 77, 78, 82, 83, 87, 88, 94, 95], "summary": {"covered_lines": 43, "num_statements": 58, "percent_covered": 74.13793103448276, "percent_covered_display": "74", "missing_lines": 15, "excluded_lines": 0, "percent_statements_covered": 74.13793103448276, "percent_statements_covered_display": "74", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [24, 29, 34, 39, 44, 49, 54, 59, 64, 69, 74, 79, 84, 89, 96], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\utils\\test_conversion.py": {"executed_lines": [1, 2, 4, 12, 16, 17, 19, 20, 25, 28, 31, 34, 37, 44, 45, 51, 55, 56, 58, 59, 64, 67, 70, 73, 76, 83, 86, 90, 93, 94, 99, 103, 106, 111, 113, 116, 119, 123, 126, 129, 130, 131, 136, 141, 144, 147, 148, 149, 154, 159, 162, 165, 166, 169], "summary": {"covered_lines": 54, "num_statements": 54, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [[130, -119], [130, 131], [148, -136], [148, 149]], "missing_branches": [], "functions": {"test_ensure_cv2_image_for_processing_when_pillow_image_submitted": {"executed_lines": [16, 17, 19, 20, 37, 44, 45], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 12, "executed_branches": [], "missing_branches": []}, "test_ensure_cv2_image_for_processing_when_pillow_image_submitted.my_custom_processing_function": {"executed_lines": [25, 28, 31, 34], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 20, "executed_branches": [], "missing_branches": []}, "test_ensure_cv2_image_for_processing_when_cv2_image_submitted": {"executed_lines": [55, 56, 58, 59, 76, 83], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 51, "executed_branches": [], "missing_branches": []}, "test_ensure_cv2_image_for_processing_when_cv2_image_submitted.my_custom_processing_function": {"executed_lines": [64, 67, 70, 73], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 59, "executed_branches": [], "missing_branches": []}, "test_cv2_to_pillow": {"executed_lines": [90, 93, 94], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 86, "executed_branches": [], "missing_branches": []}, "test_pillow_to_cv2": {"executed_lines": [103, 106], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 99, "executed_branches": [], "missing_branches": []}, "test_images_to_cv2_when_empty_input_provided": {"executed_lines": [113, 116], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 111, "executed_branches": [], "missing_branches": []}, "test_images_to_cv2_when_only_cv2_images_provided": {"executed_lines": [123, 126, 129, 130, 131], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 119, "executed_branches": [[130, -119], [130, 131]], "missing_branches": []}, "test_images_to_cv2_when_only_pillow_images_provided": {"executed_lines": [141, 144, 147, 148, 149], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 136, "executed_branches": [[148, -136], [148, 149]], "missing_branches": []}, "test_images_to_cv2_when_mixed_input_provided": {"executed_lines": [159, 162, 165, 166, 169], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 154, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 2, 4, 12, 51, 86, 99, 111, 119, 136, 154], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 2, 4, 12, 16, 17, 19, 20, 25, 28, 31, 34, 37, 44, 45, 51, 55, 56, 58, 59, 64, 67, 70, 73, 76, 83, 86, 90, 93, 94, 99, 103, 106, 111, 113, 116, 119, 123, 126, 129, 130, 131, 136, 141, 144, 147, 148, 149, 154, 159, 162, 165, 166, 169], "summary": {"covered_lines": 54, "num_statements": 54, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [[130, -119], [130, 131], [148, -136], [148, 149]], "missing_branches": []}}}, "tests\\utils\\test_file.py": {"executed_lines": [1, 3, 4, 5, 7, 9, 11, 16, 22, 30, 31, 32, 33, 34, 35, 36, 37, 39, 41, 42, 43, 46, 62, 68, 69, 70, 73, 94, 101, 102, 104, 106], "summary": {"covered_lines": 32, "num_statements": 32, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [[101, 102], [101, 104]], "missing_branches": [], "functions": {"setup_and_teardown_files": {"executed_lines": [32, 33, 34, 35, 36, 37, 39, 41, 42, 43], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 31, "executed_branches": [], "missing_branches": []}, "test_read_txt_file": {"executed_lines": [68, 69, 70], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 62, "executed_branches": [], "missing_branches": []}, "test_list_files_with_extensions_normalization": {"executed_lines": [101, 102, 104, 106], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 94, "executed_branches": [[101, 102], [101, 104]], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 5, 7, 9, 11, 16, 22, 30, 31, 46, 62, 73, 94], "summary": {"covered_lines": 15, "num_statements": 15, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 3, 4, 5, 7, 9, 11, 16, 22, 30, 31, 32, 33, 34, 35, 36, 37, 39, 41, 42, 43, 46, 62, 68, 69, 70, 73, 94, 101, 102, 104, 106], "summary": {"covered_lines": 32, "num_statements": 32, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [[101, 102], [101, 104]], "missing_branches": []}}}, "tests\\utils\\test_image.py": {"executed_lines": [1, 2, 3, 5, 13, 15, 16, 19, 26, 31, 33, 34, 37, 44, 45, 46, 51, 53, 54, 64, 69, 75, 76, 77, 86, 88, 89, 92, 95, 96, 97, 100, 103, 104, 105, 106, 107, 110, 112, 113, 125, 130, 134, 135, 140, 169, 170, 171, 172, 173, 174, 176, 177, 180, 193, 194, 195], "summary": {"covered_lines": 57, "num_statements": 57, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [[171, 172], [171, 176]], "missing_branches": [], "functions": {"test_resize_image_for_opencv_image": {"executed_lines": [15, 16, 19, 26], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 13, "executed_branches": [], "missing_branches": []}, "test_resize_image_for_pillow_image": {"executed_lines": [33, 34, 37, 44, 45, 46], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 31, "executed_branches": [], "missing_branches": []}, "test_letterbox_image_for_opencv_image": {"executed_lines": [53, 54, 64, 69], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 51, "executed_branches": [], "missing_branches": []}, "test_letterbox_image_for_grayscale_opencv_image": {"executed_lines": [76, 77, 86, 88, 89], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 75, "executed_branches": [], "missing_branches": []}, "test_letterbox_image_for_rgba_opencv_image": {"executed_lines": [95, 96, 97, 100, 103, 104, 105, 106, 107], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 92, "executed_branches": [], "missing_branches": []}, "test_letterbox_image_for_pillow_image": {"executed_lines": [112, 113, 125, 130, 134, 135], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 110, "executed_branches": [], "missing_branches": []}, "test_crop_image": {"executed_lines": [170, 171, 172, 173, 174, 176, 177], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 169, "executed_branches": [[171, 172], [171, 176]], "missing_branches": []}, "test_get_image_resolution_wh": {"executed_lines": [194, 195], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 193, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 2, 3, 5, 13, 31, 51, 75, 92, 110, 140, 169, 180, 193], "summary": {"covered_lines": 14, "num_statements": 14, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 2, 3, 5, 13, 15, 16, 19, 26, 31, 33, 34, 37, 44, 45, 46, 51, 53, 54, 64, 69, 75, 76, 77, 86, 88, 89, 92, 95, 96, 97, 100, 103, 104, 105, 106, 107, 110, 112, 113, 125, 130, 134, 135, 140, 169, 170, 171, 172, 173, 174, 176, 177, 180, 193, 194, 195], "summary": {"covered_lines": 57, "num_statements": 57, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [[171, 172], [171, 176]], "missing_branches": []}}}, "tests\\utils\\test_internal.py": {"executed_lines": [1, 2, 3, 5, 6, 8, 9, 12, 13, 14, 15, 16, 18, 21, 24, 27, 28, 29, 31, 32, 33, 35, 36, 37, 40, 41, 42, 43, 44, 46, 47, 48, 50, 51, 52, 54, 57, 60, 63, 64, 65, 67, 68, 69, 71, 72, 73, 76, 189, 195, 196, 199], "summary": {"covered_lines": 52, "num_statements": 58, "percent_covered": 89.65517241379311, "percent_covered_display": "90", "missing_lines": 6, "excluded_lines": 0, "percent_statements_covered": 89.65517241379311, "percent_statements_covered_display": "90", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [19, 22, 25, 55, 58, 61], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"MockClass.__init__": {"executed_lines": [14, 15, 16], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 13, "executed_branches": [], "missing_branches": []}, "MockClass.public_method": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [19], "excluded_lines": [], "start_line": 18, "executed_branches": [], "missing_branches": []}, "MockClass._protected_method": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [22], "excluded_lines": [], "start_line": 21, "executed_branches": [], "missing_branches": []}, "MockClass.__private_method": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [25], "excluded_lines": [], "start_line": 24, "executed_branches": [], "missing_branches": []}, "MockClass.public_property": {"executed_lines": [29], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 28, "executed_branches": [], "missing_branches": []}, "MockClass._protected_property": {"executed_lines": [33], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 32, "executed_branches": [], "missing_branches": []}, "MockClass.__private_property": {"executed_lines": [37], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 36, "executed_branches": [], "missing_branches": []}, "MockDataclass.public_method": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [55], "excluded_lines": [], "start_line": 54, "executed_branches": [], "missing_branches": []}, "MockDataclass._protected_method": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [58], "excluded_lines": [], "start_line": 57, "executed_branches": [], "missing_branches": []}, "MockDataclass.__private_method": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [61], "excluded_lines": [], "start_line": 60, "executed_branches": [], "missing_branches": []}, "MockDataclass.public_property": {"executed_lines": [65], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 64, "executed_branches": [], "missing_branches": []}, "MockDataclass._protected_property": {"executed_lines": [69], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 68, "executed_branches": [], "missing_branches": []}, "MockDataclass.__private_property": {"executed_lines": [73], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 72, "executed_branches": [], "missing_branches": []}, "test_get_instance_variables": {"executed_lines": [195, 196, 199], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 189, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 2, 3, 5, 6, 8, 9, 12, 13, 18, 21, 24, 27, 28, 31, 32, 35, 36, 40, 41, 42, 43, 44, 46, 47, 48, 50, 51, 52, 54, 57, 60, 63, 64, 67, 68, 71, 72, 76, 189], "summary": {"covered_lines": 40, "num_statements": 40, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"MockClass": {"executed_lines": [14, 15, 16, 29, 33, 37], "summary": {"covered_lines": 6, "num_statements": 9, "percent_covered": 66.66666666666667, "percent_covered_display": "67", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 66.66666666666667, "percent_statements_covered_display": "67", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [19, 22, 25], "excluded_lines": [], "start_line": 12, "executed_branches": [], "missing_branches": []}, "MockDataclass": {"executed_lines": [65, 69, 73], "summary": {"covered_lines": 3, "num_statements": 6, "percent_covered": 50.0, "percent_covered_display": "50", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 50.0, "percent_statements_covered_display": "50", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [55, 58, 61], "excluded_lines": [], "start_line": 41, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 2, 3, 5, 6, 8, 9, 12, 13, 18, 21, 24, 27, 28, 31, 32, 35, 36, 40, 41, 42, 43, 44, 46, 47, 48, 50, 51, 52, 54, 57, 60, 63, 64, 67, 68, 71, 72, 76, 189, 195, 196, 199], "summary": {"covered_lines": 43, "num_statements": 43, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\utils\\test_iterables.py": {"executed_lines": [1, 3, 6, 21, 22, 23, 26, 41, 42, 43], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"test_create_batches": {"executed_lines": [22, 23], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 21, "executed_branches": [], "missing_branches": []}, "test_fill": {"executed_lines": [42, 43], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 41, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 6, 21, 26, 41], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 3, 6, 21, 22, 23, 26, 41, 42, 43], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\utils\\test_logger.py": {"executed_lines": [1, 3, 4, 5, 7, 10, 11, 13, 14, 16, 18, 19, 21, 23, 25, 26, 28, 30, 31, 33, 35, 36, 37, 39, 41, 42, 43, 45, 47, 48, 50, 52, 53, 58, 60, 62, 63, 68, 70, 72, 73, 75, 77, 78, 79, 80, 81, 82], "summary": {"covered_lines": 48, "num_statements": 48, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"TestGetLogger.test_default_name": {"executed_lines": [13, 14], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 11, "executed_branches": [], "missing_branches": []}, "TestGetLogger.test_custom_name": {"executed_lines": [18, 19], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 16, "executed_branches": [], "missing_branches": []}, "TestGetLogger.test_default_level_is_info": {"executed_lines": [23, 25, 26], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 21, "executed_branches": [], "missing_branches": []}, "TestGetLogger.test_explicit_level": {"executed_lines": [30, 31], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 28, "executed_branches": [], "missing_branches": []}, "TestGetLogger.test_log_level_env_var": {"executed_lines": [35, 36, 37], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 33, "executed_branches": [], "missing_branches": []}, "TestGetLogger.test_log_level_env_var_warning": {"executed_lines": [41, 42, 43], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 39, "executed_branches": [], "missing_branches": []}, "TestGetLogger.test_two_handlers_configured": {"executed_lines": [47, 48], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 45, "executed_branches": [], "missing_branches": []}, "TestGetLogger.test_stdout_handler_present": {"executed_lines": [52, 53, 58], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 50, "executed_branches": [], "missing_branches": []}, "TestGetLogger.test_stderr_handler_present": {"executed_lines": [62, 63, 68], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 60, "executed_branches": [], "missing_branches": []}, "TestGetLogger.test_no_propagation": {"executed_lines": [72, 73], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 70, "executed_branches": [], "missing_branches": []}, "TestGetLogger.test_idempotent_no_duplicate_handlers": {"executed_lines": [77, 78, 79, 80, 81, 82], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 75, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 5, 7, 10, 11, 16, 21, 28, 33, 39, 45, 50, 60, 70, 75], "summary": {"covered_lines": 17, "num_statements": 17, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"TestGetLogger": {"executed_lines": [13, 14, 18, 19, 23, 25, 26, 30, 31, 35, 36, 37, 41, 42, 43, 47, 48, 52, 53, 58, 62, 63, 68, 72, 73, 77, 78, 79, 80, 81, 82], "summary": {"covered_lines": 31, "num_statements": 31, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 10, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 5, 7, 10, 11, 16, 21, 28, 33, 39, 45, 50, 60, 70, 75], "summary": {"covered_lines": 17, "num_statements": 17, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\utils\\test_video.py": {"executed_lines": [1, 2, 3, 5, 6, 7, 9, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 29, 37, 39, 40, 41, 42, 44, 45, 52, 60, 62, 63, 66, 70, 73, 80, 82, 83, 84, 85, 87, 88, 97, 105, 106, 108, 109, 110, 112, 119, 120, 123, 131, 133, 134, 137, 145, 148, 156, 157, 158, 159, 160, 161, 162, 165, 173, 175, 176, 177, 178, 180, 182, 183, 184, 185, 188, 196, 197, 198, 199, 200, 203, 211, 212, 213, 216, 224, 226, 227, 233, 238, 246, 248, 249, 254, 257, 273, 277, 278, 279, 281, 285, 287, 290, 292, 293, 295, 296, 297, 299, 304, 306, 307, 310, 318, 319, 320], "summary": {"covered_lines": 115, "num_statements": 115, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 8, "num_partial_branches": 0, "covered_branches": 8, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [[22, 23], [22, 25], [40, 41], [40, 42], [83, 84], [83, 85], [176, 177], [176, 178]], "missing_branches": [], "functions": {"dummy_video_path": {"executed_lines": [19, 20, 21, 22, 23, 24, 25, 26], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 18, "executed_branches": [[22, 23], [22, 25]], "missing_branches": []}, "test_process_video_exception_handling": {"executed_lines": [37, 39, 44, 45], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 29, "executed_branches": [], "missing_branches": []}, "test_process_video_exception_handling.callback_with_exception": {"executed_lines": [40, 41, 42], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 39, "executed_branches": [[40, 41], [40, 42]], "missing_branches": []}, "test_process_video_success": {"executed_lines": [60, 62, 66, 70], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 52, "executed_branches": [], "missing_branches": []}, "test_process_video_success.callback_success": {"executed_lines": [63], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 62, "executed_branches": [], "missing_branches": []}, "test_process_video_exception_with_small_buffer": {"executed_lines": [80, 82, 87, 88], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 73, "executed_branches": [], "missing_branches": []}, "test_process_video_exception_with_small_buffer.callback_with_exception": {"executed_lines": [83, 84, 85], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 82, "executed_branches": [[83, 84], [83, 85]], "missing_branches": []}, "test_process_video_max_frames": {"executed_lines": [105, 106, 108, 112, 119, 120], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 97, "executed_branches": [], "missing_branches": []}, "test_process_video_max_frames.callback": {"executed_lines": [109, 110], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 108, "executed_branches": [], "missing_branches": []}, "test_process_video_custom_params": {"executed_lines": [131, 133, 137, 145], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 123, "executed_branches": [], "missing_branches": []}, "test_process_video_custom_params.callback": {"executed_lines": [134], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 133, "executed_branches": [], "missing_branches": []}, "test_video_info": {"executed_lines": [156, 157, 158, 159, 160, 161, 162], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 148, "executed_branches": [], "missing_branches": []}, "test_video_info_float_fps": {"executed_lines": [173, 175, 180, 182, 183, 184, 185], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 165, "executed_branches": [], "missing_branches": []}, "test_video_info_float_fps.mocked_get": {"executed_lines": [176, 177, 178], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 175, "executed_branches": [[176, 177], [176, 178]], "missing_branches": []}, "test_get_video_frames_generator": {"executed_lines": [196, 197, 198, 199, 200], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 188, "executed_branches": [], "missing_branches": []}, "test_get_video_frames_generator_with_stride": {"executed_lines": [211, 212, 213], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 203, "executed_branches": [], "missing_branches": []}, "test_process_video_preserve_audio_calls_mux": {"executed_lines": [224, 226, 227, 233], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 216, "executed_branches": [], "missing_branches": []}, "test_process_video_no_audio_by_default": {"executed_lines": [246, 248, 249, 254], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 238, "executed_branches": [], "missing_branches": []}, "test_mux_audio_file_unchanged_on_failure": {"executed_lines": [277, 278, 279, 281, 285, 287], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 273, "executed_branches": [], "missing_branches": []}, "test_mux_audio_replaces_file_on_success": {"executed_lines": [292, 293, 295, 296, 297, 299, 304, 306, 307], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 290, "executed_branches": [], "missing_branches": []}, "test_get_video_frames_generator_with_start_end": {"executed_lines": [318, 319, 320], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 310, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 2, 3, 5, 6, 7, 9, 17, 18, 29, 52, 73, 97, 123, 148, 165, 188, 203, 216, 238, 257, 273, 290, 310], "summary": {"covered_lines": 24, "num_statements": 24, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 2, 3, 5, 6, 7, 9, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 29, 37, 39, 40, 41, 42, 44, 45, 52, 60, 62, 63, 66, 70, 73, 80, 82, 83, 84, 85, 87, 88, 97, 105, 106, 108, 109, 110, 112, 119, 120, 123, 131, 133, 134, 137, 145, 148, 156, 157, 158, 159, 160, 161, 162, 165, 173, 175, 176, 177, 178, 180, 182, 183, 184, 185, 188, 196, 197, 198, 199, 200, 203, 211, 212, 213, 216, 224, 226, 227, 233, 238, 246, 248, 249, 254, 257, 273, 277, 278, 279, 281, 285, 287, 290, 292, 293, 295, 296, 297, 299, 304, 306, 307, 310, 318, 319, 320], "summary": {"covered_lines": 115, "num_statements": 115, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 8, "num_partial_branches": 0, "covered_branches": 8, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [[22, 23], [22, 25], [40, 41], [40, 42], [83, 84], [83, 85], [176, 177], [176, 178]], "missing_branches": []}}}}, "totals": {"covered_lines": 13513, "num_statements": 16345, "percent_covered": 79.29508773694002, "percent_covered_display": "79", "missing_lines": 2832, "excluded_lines": 50, "percent_statements_covered": 82.67360048944632, "percent_statements_covered_display": "83", "num_branches": 3544, "num_partial_branches": 448, "covered_branches": 2258, "missing_branches": 1286, "percent_branches_covered": 63.71331828442438, "percent_branches_covered_display": "64"}} \ No newline at end of file diff --git a/metrics-after-pytest/coverage_depois.xml b/metrics-after-pytest/coverage_depois.xml new file mode 100644 index 0000000000..ab348964f4 --- /dev/null +++ b/metrics-after-pytest/coverage_depois.xml @@ -0,0 +1,17268 @@ + + + + + + C:\Users\ediva\ufc\manutencao\supervision_refactory + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/metrics-after-pytest/pytest_depois.html b/metrics-after-pytest/pytest_depois.html new file mode 100644 index 0000000000..0f53ca0e69 --- /dev/null +++ b/metrics-after-pytest/pytest_depois.html @@ -0,0 +1,1094 @@ + + + + + pytest_depois.html + + + + +

pytest_depois.html

+

Report generated on 30-Jun-2026 at 11:39:42 by pytest-html + v4.2.0

+
+

Environment

+
+
+ + + + + +
+
+

Summary

+
+
+

2077 tests took 00:01:04.

+

(Un)check the boxes to filter the results.

+
+ +
+
+
+
+ + 18 Failed, + + 2059 Passed, + + 0 Skipped, + + 0 Expected failures, + + 0 Unexpected passes, + + 0 Errors, + + 0 Reruns + + 0 Retried, +
+
+  /  +
+
+
+
+
+
+
+
+ + + + + + + + + +
ResultTestDurationLinks
+
+
+ +
+ + \ No newline at end of file diff --git a/metrics-after-pytest/pytest_depois.xml b/metrics-after-pytest/pytest_depois.xml new file mode 100644 index 0000000000..e921e9976c --- /dev/null +++ b/metrics-after-pytest/pytest_depois.xml @@ -0,0 +1,1718 @@ +self = <tests.metrics.test_mean_average_precision.TestMeanAveragePrecision object at 0x000001C539A56A80> +detections_50_50 = Detections(xyxy=array([[10., 10., 50., 50.]], dtype=float32), mask=None, confidence=array([0.9]), class_id=array([0]), tracker_id=None, data={}, metadata={}) +targets_50_50 = Detections(xyxy=array([[10., 10., 50., 50.]], dtype=float32), mask=None, confidence=None, class_id=array([0]), tracker_id=None, data={}, metadata={}) + + def test_single_perfect_detection(self, detections_50_50, targets_50_50): + """Test that single perfect detection gets 1.0 mAP (not 0.0 due to ID=0 bug)""" + metric = MeanAveragePrecision() + metric.update([detections_50_50], [targets_50_50]) +> result = metric.compute() + ^^^^^^^^^^^^^^^^ + +tests\metrics\test_mean_average_precision.py:45: +_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ +src\supervision\metrics\mean_average_precision.py:1655: in compute + cocoEval.evaluate() +src\supervision\metrics\mean_average_precision.py:1400: in evaluate + self._accumulate() +src\supervision\metrics\mean_average_precision.py:1256: in _accumulate + ap_results = self._compute_average_precision_by_size(precision) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +src\supervision\metrics\mean_average_precision.py:1185: in _compute_average_precision_by_size + self._compute_average_precision(average_precision_all_sizes) +_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ + +precision_slice = array([[[0.9999999], + [0.9999999], + [0.9999999], + ..., + [0.9999999], + [0.9999999], +...9999], + ..., + [0.9999999], + [0.9999999], + [0.9999999]]], shape=(10, 101, 1), dtype=float32) + + @staticmethod + def _compute_average_precision( + precision_slice: npt.NDArray[np.float32], + ) -> tuple[npt.NDArray[np.float32], npt.NDArray[np.float32]]: + valid_mask = precision_slice != -1 + valid_precision = np.where(valid_mask, precision_slice, np.float32(0.0)) + + def mean_with_mask( + axis: int | tuple[int, ...], + ) -> npt.NDArray[np.float32]: + sums = valid_precision.sum(axis=axis, dtype=np.float64) + counts = valid_mask.sum(axis=axis) + means = np.divide( + sums, + counts, + out=np.full(sums.shape, -1.0, dtype=np.float64), + where=counts > 0, + ) + return means.astype(np.float32) + + self._state.results = { +> "params": self.params, + ^^^^ + "counts": [ + num_iou_thresholds, + num_recall_thresholds, + num_categories, + num_area_ranges, + num_max_detections, + ], + "date": datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S"), + "precision": precision, + "recall": recall, + "scores": scores, + } +E NameError: name 'self' is not defined + +src\supervision\metrics\mean_average_precision.py:1157: NameErrorself = <tests.metrics.test_mean_average_precision.TestMeanAveragePrecision object at 0x000001C539A56C00> + + def test_multiple_perfect_detections(self): + """Test that multiple perfect detections get 1.0 mAP""" + # Multiple perfect detections in one image + detections = Detections( + xyxy=np.array( + [[10, 10, 50, 50], [100, 100, 140, 140], [200, 200, 240, 240]], + dtype=np.float64, + ), + class_id=np.array([0, 0, 0]), + confidence=np.array([0.9, 0.9, 0.9]), + ) + + metric = MeanAveragePrecision() + metric.update([detections], [detections]) +> result = metric.compute() + ^^^^^^^^^^^^^^^^ + +tests\metrics\test_mean_average_precision.py:64: +_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ +src\supervision\metrics\mean_average_precision.py:1655: in compute + cocoEval.evaluate() +src\supervision\metrics\mean_average_precision.py:1400: in evaluate + self._accumulate() +src\supervision\metrics\mean_average_precision.py:1256: in _accumulate + ap_results = self._compute_average_precision_by_size(precision) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +src\supervision\metrics\mean_average_precision.py:1185: in _compute_average_precision_by_size + self._compute_average_precision(average_precision_all_sizes) +_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ + +precision_slice = array([[[1.], + [1.], + [1.], + ..., + [1.], + [1.], + [1.]], + + [[1.], + ... [1.], + [1.], + ..., + [1.], + [1.], + [1.]]], shape=(10, 101, 1), dtype=float32) + + @staticmethod + def _compute_average_precision( + precision_slice: npt.NDArray[np.float32], + ) -> tuple[npt.NDArray[np.float32], npt.NDArray[np.float32]]: + valid_mask = precision_slice != -1 + valid_precision = np.where(valid_mask, precision_slice, np.float32(0.0)) + + def mean_with_mask( + axis: int | tuple[int, ...], + ) -> npt.NDArray[np.float32]: + sums = valid_precision.sum(axis=axis, dtype=np.float64) + counts = valid_mask.sum(axis=axis) + means = np.divide( + sums, + counts, + out=np.full(sums.shape, -1.0, dtype=np.float64), + where=counts > 0, + ) + return means.astype(np.float32) + + self._state.results = { +> "params": self.params, + ^^^^ + "counts": [ + num_iou_thresholds, + num_recall_thresholds, + num_categories, + num_area_ranges, + num_max_detections, + ], + "date": datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S"), + "precision": precision, + "recall": recall, + "scores": scores, + } +E NameError: name 'self' is not defined + +src\supervision\metrics\mean_average_precision.py:1157: NameErrorself = <tests.metrics.test_mean_average_precision.TestMeanAveragePrecision object at 0x000001C539A56D80> + + def test_perfect_non_square_oriented_boxes_get_full_map(self): + """Smoke test: MeanAveragePrecision accepts non-square OBB inputs without error. + + NOTE: MeanAveragePrecision uses the COCO evaluator path + (box_iou_batch_with_jaccard) and does not route through + oriented_box_iou_batch regardless of metric_target. + This test verifies API acceptance and map50_95=1.0 via + xyxy COCO IoU, not OBB IoU. + """ + obb = np.array( + [[[10, 0], [0, 1], [30, 4], [40, 3]]], + dtype=np.float32, + ) + detections = Detections( + xyxy=np.array([[0, 0, 40, 4]], dtype=np.float64), + class_id=np.array([0]), + confidence=np.array([0.9]), + data={ORIENTED_BOX_COORDINATES: obb}, + ) + targets = Detections( + xyxy=np.array([[0, 0, 40, 4]], dtype=np.float64), + class_id=np.array([0]), + data={ORIENTED_BOX_COORDINATES: obb}, + ) + + metric = MeanAveragePrecision( + metric_target=MetricTarget.ORIENTED_BOUNDING_BOXES + ) + metric.update([detections], [targets]) +> result = metric.compute() + ^^^^^^^^^^^^^^^^ + +tests\metrics\test_mean_average_precision.py:98: +_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ +src\supervision\metrics\mean_average_precision.py:1655: in compute + cocoEval.evaluate() +src\supervision\metrics\mean_average_precision.py:1400: in evaluate + self._accumulate() +src\supervision\metrics\mean_average_precision.py:1256: in _accumulate + ap_results = self._compute_average_precision_by_size(precision) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +src\supervision\metrics\mean_average_precision.py:1185: in _compute_average_precision_by_size + self._compute_average_precision(average_precision_all_sizes) +_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ + +precision_slice = array([[[0.9999999], + [0.9999999], + [0.9999999], + ..., + [0.9999999], + [0.9999999], +...9999], + ..., + [0.9999999], + [0.9999999], + [0.9999999]]], shape=(10, 101, 1), dtype=float32) + + @staticmethod + def _compute_average_precision( + precision_slice: npt.NDArray[np.float32], + ) -> tuple[npt.NDArray[np.float32], npt.NDArray[np.float32]]: + valid_mask = precision_slice != -1 + valid_precision = np.where(valid_mask, precision_slice, np.float32(0.0)) + + def mean_with_mask( + axis: int | tuple[int, ...], + ) -> npt.NDArray[np.float32]: + sums = valid_precision.sum(axis=axis, dtype=np.float64) + counts = valid_mask.sum(axis=axis) + means = np.divide( + sums, + counts, + out=np.full(sums.shape, -1.0, dtype=np.float64), + where=counts > 0, + ) + return means.astype(np.float32) + + self._state.results = { +> "params": self.params, + ^^^^ + "counts": [ + num_iou_thresholds, + num_recall_thresholds, + num_categories, + num_area_ranges, + num_max_detections, + ], + "date": datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S"), + "precision": precision, + "recall": recall, + "scores": scores, + } +E NameError: name 'self' is not defined + +src\supervision\metrics\mean_average_precision.py:1157: NameErrorself = <tests.metrics.test_mean_average_precision.TestMeanAveragePrecision object at 0x000001C539A56F30> +detections_50_50 = Detections(xyxy=array([[10., 10., 50., 50.]], dtype=float32), mask=None, confidence=array([0.9]), class_id=array([0]), tracker_id=None, data={}, metadata={}) +targets_50_50 = Detections(xyxy=array([[10., 10., 50., 50.]], dtype=float32), mask=None, confidence=None, class_id=array([0]), tracker_id=None, data={}, metadata={}) + + def test_batch_updates_perfect_detections(self, detections_50_50, targets_50_50): + """Test that batch updates with perfect detections get 1.0 mAP""" + metric = MeanAveragePrecision() + # Add 3 batch updates + metric.update([detections_50_50], [targets_50_50]) + metric.update([detections_50_50], [targets_50_50]) + metric.update([detections_50_50], [targets_50_50]) +> result = metric.compute() + ^^^^^^^^^^^^^^^^ + +tests\metrics\test_mean_average_precision.py:109: +_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ +src\supervision\metrics\mean_average_precision.py:1655: in compute + cocoEval.evaluate() +src\supervision\metrics\mean_average_precision.py:1400: in evaluate + self._accumulate() +src\supervision\metrics\mean_average_precision.py:1256: in _accumulate + ap_results = self._compute_average_precision_by_size(precision) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +src\supervision\metrics\mean_average_precision.py:1185: in _compute_average_precision_by_size + self._compute_average_precision(average_precision_all_sizes) +_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ + +precision_slice = array([[[1.], + [1.], + [1.], + ..., + [1.], + [1.], + [1.]], + + [[1.], + ... [1.], + [1.], + ..., + [1.], + [1.], + [1.]]], shape=(10, 101, 1), dtype=float32) + + @staticmethod + def _compute_average_precision( + precision_slice: npt.NDArray[np.float32], + ) -> tuple[npt.NDArray[np.float32], npt.NDArray[np.float32]]: + valid_mask = precision_slice != -1 + valid_precision = np.where(valid_mask, precision_slice, np.float32(0.0)) + + def mean_with_mask( + axis: int | tuple[int, ...], + ) -> npt.NDArray[np.float32]: + sums = valid_precision.sum(axis=axis, dtype=np.float64) + counts = valid_mask.sum(axis=axis) + means = np.divide( + sums, + counts, + out=np.full(sums.shape, -1.0, dtype=np.float64), + where=counts > 0, + ) + return means.astype(np.float32) + + self._state.results = { +> "params": self.params, + ^^^^ + "counts": [ + num_iou_thresholds, + num_recall_thresholds, + num_categories, + num_area_ranges, + num_max_detections, + ], + "date": datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S"), + "precision": precision, + "recall": recall, + "scores": scores, + } +E NameError: name 'self' is not defined + +src\supervision\metrics\mean_average_precision.py:1157: NameErrorself = <tests.metrics.test_mean_average_precision.TestMeanAveragePrecision object at 0x000001C539A570B0> + + def test_scenario_1_success_case_imperfect_match(self): + """Scenario 1: Success Case with imperfect match""" + # Small object (class 0) - area = 30*30 = 900 < 1024 + small_perfect = Detections( + xyxy=np.array([[10, 10, 40, 40]], dtype=np.float64), + class_id=np.array([0]), + confidence=np.array([0.95]), + data={"area": np.array([900])}, + ) + + # Medium object (class 1) - area = 50*50 = 2500 (between 1024 and 9216) + medium_target = Detections( + xyxy=np.array([[10, 10, 60, 60]], dtype=np.float64), + class_id=np.array([1]), + data={"area": np.array([2500])}, + ) + medium_pred = Detections( + xyxy=np.array([[12, 12, 60, 60]], dtype=np.float64), # Slightly off + class_id=np.array([1]), + confidence=np.array([0.9]), + data={"area": np.array([2304])}, # 48*48 + ) + + # Large objects (classes 0, 1, 2) - area = 100*100 = 10000 > 9216 + large_targets = Detections( + xyxy=np.array( + [[10, 10, 110, 110], [120, 120, 220, 220], [230, 230, 330, 330]], + dtype=np.float64, + ), + class_id=np.array([2, 0, 1]), + data={"area": np.array([10000, 10000, 10000])}, + ) + large_preds = Detections( + xyxy=np.array( + [[10, 10, 110, 110], [120, 120, 220, 220], [230, 230, 330, 330]], + dtype=np.float64, + ), + class_id=np.array([2, 0, 1]), + confidence=np.array([0.9, 0.9, 0.9]), + data={"area": np.array([10000, 10000, 10000])}, + ) + + metric = MeanAveragePrecision() + metric.update([small_perfect], [small_perfect]) + metric.update([medium_pred], [medium_target]) + metric.update([large_preds], [large_targets]) +> result = metric.compute() + ^^^^^^^^^^^^^^^^ + +tests\metrics\test_mean_average_precision.py:160: +_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ +src\supervision\metrics\mean_average_precision.py:1655: in compute + cocoEval.evaluate() +src\supervision\metrics\mean_average_precision.py:1400: in evaluate + self._accumulate() +src\supervision\metrics\mean_average_precision.py:1256: in _accumulate + ap_results = self._compute_average_precision_by_size(precision) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +src\supervision\metrics\mean_average_precision.py:1185: in _compute_average_precision_by_size + self._compute_average_precision(average_precision_all_sizes) +_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ + +precision_slice = array([[[1. , 1. , 0.9999999], + [1. , 1. , 0.9999999], + [1. , 1. , 0...1. , 0. , 0.9999999], + [1. , 0. , 0.9999999]]], + shape=(10, 101, 3), dtype=float32) + + @staticmethod + def _compute_average_precision( + precision_slice: npt.NDArray[np.float32], + ) -> tuple[npt.NDArray[np.float32], npt.NDArray[np.float32]]: + valid_mask = precision_slice != -1 + valid_precision = np.where(valid_mask, precision_slice, np.float32(0.0)) + + def mean_with_mask( + axis: int | tuple[int, ...], + ) -> npt.NDArray[np.float32]: + sums = valid_precision.sum(axis=axis, dtype=np.float64) + counts = valid_mask.sum(axis=axis) + means = np.divide( + sums, + counts, + out=np.full(sums.shape, -1.0, dtype=np.float64), + where=counts > 0, + ) + return means.astype(np.float32) + + self._state.results = { +> "params": self.params, + ^^^^ + "counts": [ + num_iou_thresholds, + num_recall_thresholds, + num_categories, + num_area_ranges, + num_max_detections, + ], + "date": datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S"), + "precision": precision, + "recall": recall, + "scores": scores, + } +E NameError: name 'self' is not defined + +src\supervision\metrics\mean_average_precision.py:1157: NameErrorself = <tests.metrics.test_mean_average_precision.TestMeanAveragePrecision object at 0x000001C539A57230> + + def test_scenario_2_missed_detection(self): + """Scenario 2: GT Present, No Prediction (Missed Detection)""" + # Small object - area = 30*30 = 900 < 1024 + small_detection = Detections( + xyxy=np.array([[10, 10, 40, 40]], dtype=np.float64), + class_id=np.array([0]), + confidence=np.array([0.95]), + data={"area": np.array([900])}, + ) + + # Medium object - area = 50*50 = 2500 (between 1024 and 9216) - missed + medium_target = Detections( + xyxy=np.array([[10, 10, 60, 60]], dtype=np.float64), + class_id=np.array([1]), + data={"area": np.array([2500])}, + ) + no_medium_pred = Detections.empty() + + # Large objects - area = 100*100 = 10000 > 9216 + large_detections = Detections( + xyxy=np.array( + [[10, 10, 110, 110], [120, 120, 220, 220], [230, 230, 330, 330]], + dtype=np.float64, + ), + class_id=np.array([2, 0, 1]), + confidence=np.array([0.9, 0.9, 0.9]), + data={"area": np.array([10000, 10000, 10000])}, + ) + + metric = MeanAveragePrecision() + metric.update([small_detection], [small_detection]) + metric.update([no_medium_pred], [medium_target]) + metric.update([large_detections], [large_detections]) +> result = metric.compute() + ^^^^^^^^^^^^^^^^ + +tests\metrics\test_mean_average_precision.py:201: +_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ +src\supervision\metrics\mean_average_precision.py:1655: in compute + cocoEval.evaluate() +src\supervision\metrics\mean_average_precision.py:1400: in evaluate + self._accumulate() +src\supervision\metrics\mean_average_precision.py:1256: in _accumulate + ap_results = self._compute_average_precision_by_size(precision) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +src\supervision\metrics\mean_average_precision.py:1185: in _compute_average_precision_by_size + self._compute_average_precision(average_precision_all_sizes) +_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ + +precision_slice = array([[[1. , 0.9999999, 0.9999999], + [1. , 0.9999999, 0.9999999], + [1. , 0.9999999, 0...1. , 0. , 0.9999999], + [1. , 0. , 0.9999999]]], + shape=(10, 101, 3), dtype=float32) + + @staticmethod + def _compute_average_precision( + precision_slice: npt.NDArray[np.float32], + ) -> tuple[npt.NDArray[np.float32], npt.NDArray[np.float32]]: + valid_mask = precision_slice != -1 + valid_precision = np.where(valid_mask, precision_slice, np.float32(0.0)) + + def mean_with_mask( + axis: int | tuple[int, ...], + ) -> npt.NDArray[np.float32]: + sums = valid_precision.sum(axis=axis, dtype=np.float64) + counts = valid_mask.sum(axis=axis) + means = np.divide( + sums, + counts, + out=np.full(sums.shape, -1.0, dtype=np.float64), + where=counts > 0, + ) + return means.astype(np.float32) + + self._state.results = { +> "params": self.params, + ^^^^ + "counts": [ + num_iou_thresholds, + num_recall_thresholds, + num_categories, + num_area_ranges, + num_max_detections, + ], + "date": datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S"), + "precision": precision, + "recall": recall, + "scores": scores, + } +E NameError: name 'self' is not defined + +src\supervision\metrics\mean_average_precision.py:1157: NameErrorself = <tests.metrics.test_mean_average_precision.TestMeanAveragePrecision object at 0x000001C53999A690> + + def test_scenario_3_false_positive(self): + """Scenario 3: No GT, Prediction Present (False Positive)""" + # Small object - area = 30*30 = 900 < 1024 + small_detection = Detections( + xyxy=np.array([[10, 10, 40, 40]], dtype=np.float64), + class_id=np.array([0]), + confidence=np.array([0.95]), + data={"area": np.array([900])}, + ) + + # Medium object - area = 50*50 = 2500 - false positive (no GT) + medium_pred = Detections( + xyxy=np.array([[12, 12, 62, 62]], dtype=np.float64), + class_id=np.array([1]), + confidence=np.array([0.9]), + data={"area": np.array([2500])}, + ) + no_medium_target = Detections.empty() + + # Large objects - area = 100*100 = 10000 > 9216 + large_detections = Detections( + xyxy=np.array( + [[10, 10, 110, 110], [120, 120, 220, 220], [230, 230, 330, 330]], + dtype=np.float64, + ), + class_id=np.array([2, 0, 1]), + confidence=np.array([0.9, 0.9, 0.9]), + data={"area": np.array([10000, 10000, 10000])}, + ) + + metric = MeanAveragePrecision() + metric.update([small_detection], [small_detection]) + metric.update([medium_pred], [no_medium_target]) + metric.update([large_detections], [large_detections]) +> result = metric.compute() + ^^^^^^^^^^^^^^^^ + +tests\metrics\test_mean_average_precision.py:240: +_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ +src\supervision\metrics\mean_average_precision.py:1655: in compute + cocoEval.evaluate() +src\supervision\metrics\mean_average_precision.py:1400: in evaluate + self._accumulate() +src\supervision\metrics\mean_average_precision.py:1256: in _accumulate + ap_results = self._compute_average_precision_by_size(precision) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +src\supervision\metrics\mean_average_precision.py:1185: in _compute_average_precision_by_size + self._compute_average_precision(average_precision_all_sizes) +_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ + +precision_slice = array([[[1. , 0.5 , 0.9999999], + [1. , 0.5 , 0.9999999], + [1. , 0.5 , 0...1. , 0.5 , 0.9999999], + [1. , 0.5 , 0.9999999]]], + shape=(10, 101, 3), dtype=float32) + + @staticmethod + def _compute_average_precision( + precision_slice: npt.NDArray[np.float32], + ) -> tuple[npt.NDArray[np.float32], npt.NDArray[np.float32]]: + valid_mask = precision_slice != -1 + valid_precision = np.where(valid_mask, precision_slice, np.float32(0.0)) + + def mean_with_mask( + axis: int | tuple[int, ...], + ) -> npt.NDArray[np.float32]: + sums = valid_precision.sum(axis=axis, dtype=np.float64) + counts = valid_mask.sum(axis=axis) + means = np.divide( + sums, + counts, + out=np.full(sums.shape, -1.0, dtype=np.float64), + where=counts > 0, + ) + return means.astype(np.float32) + + self._state.results = { +> "params": self.params, + ^^^^ + "counts": [ + num_iou_thresholds, + num_recall_thresholds, + num_categories, + num_area_ranges, + num_max_detections, + ], + "date": datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S"), + "precision": precision, + "recall": recall, + "scores": scores, + } +E NameError: name 'self' is not defined + +src\supervision\metrics\mean_average_precision.py:1157: NameErrorself = <tests.metrics.test_mean_average_precision.TestMeanAveragePrecision object at 0x000001C539A571D0> + + def test_scenario_4_no_data(self): + """Scenario 4: No GT, No Prediction (Category has no data)""" + # Small object - area = 30*30 = 900 < 1024 + small_detection = Detections( + xyxy=np.array([[10, 10, 40, 40]], dtype=np.float64), + class_id=np.array([0]), + confidence=np.array([0.95]), + data={"area": np.array([900])}, + ) + + # Medium object - no data at all + no_medium = Detections.empty() + + # Large objects - area = 100*100 = 10000 > 9216 + # only classes 0 and 2 (no class 1) + large_targets = Detections( + xyxy=np.array( + [ + [10, 10, 110, 110], + [120, 120, 220, 220], + ], + dtype=np.float64, + ), + class_id=np.array([2, 0]), + data={"area": np.array([10000, 10000])}, + ) + large_preds = Detections( + xyxy=np.array( + [ + [10, 10, 110, 110], + [120, 120, 220, 220], + ], + dtype=np.float64, + ), + class_id=np.array([2, 0]), + confidence=np.array([0.9, 0.9]), + data={"area": np.array([10000, 10000])}, + ) + + metric = MeanAveragePrecision() + metric.update([small_detection], [small_detection]) + metric.update([no_medium], [no_medium]) + metric.update([large_preds], [large_targets]) +> result = metric.compute() + ^^^^^^^^^^^^^^^^ + +tests\metrics\test_mean_average_precision.py:288: +_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ +src\supervision\metrics\mean_average_precision.py:1655: in compute + cocoEval.evaluate() +src\supervision\metrics\mean_average_precision.py:1400: in evaluate + self._accumulate() +src\supervision\metrics\mean_average_precision.py:1256: in _accumulate + ap_results = self._compute_average_precision_by_size(precision) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +src\supervision\metrics\mean_average_precision.py:1185: in _compute_average_precision_by_size + self._compute_average_precision(average_precision_all_sizes) +_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ + +precision_slice = array([[[1. , 0.9999999], + [1. , 0.9999999], + [1. , 0.9999999], + ..., + [... , 0.9999999], + [1. , 0.9999999], + [1. , 0.9999999]]], shape=(10, 101, 2), dtype=float32) + + @staticmethod + def _compute_average_precision( + precision_slice: npt.NDArray[np.float32], + ) -> tuple[npt.NDArray[np.float32], npt.NDArray[np.float32]]: + valid_mask = precision_slice != -1 + valid_precision = np.where(valid_mask, precision_slice, np.float32(0.0)) + + def mean_with_mask( + axis: int | tuple[int, ...], + ) -> npt.NDArray[np.float32]: + sums = valid_precision.sum(axis=axis, dtype=np.float64) + counts = valid_mask.sum(axis=axis) + means = np.divide( + sums, + counts, + out=np.full(sums.shape, -1.0, dtype=np.float64), + where=counts > 0, + ) + return means.astype(np.float32) + + self._state.results = { +> "params": self.params, + ^^^^ + "counts": [ + num_iou_thresholds, + num_recall_thresholds, + num_categories, + num_area_ranges, + num_max_detections, + ], + "date": datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S"), + "precision": precision, + "recall": recall, + "scores": scores, + } +E NameError: name 'self' is not defined + +src\supervision\metrics\mean_average_precision.py:1157: NameErrorself = <tests.metrics.test_mean_average_precision.TestMeanAveragePrecision object at 0x000001C539A56C30> + + def test_scenario_5_only_one_class_present(self): + """Scenario 5: Only 1 of 3 Classes Present (Perfect Match)""" + # Only class 0 objects with perfect matches + detections_class_0 = [ + Detections( + xyxy=np.array([[10, 10, 40, 40]], dtype=np.float64), + class_id=np.array([0]), + confidence=np.array([0.95]), + ), + Detections( + xyxy=np.array([[20, 20, 230, 130]], dtype=np.float64), + class_id=np.array([0]), + confidence=np.array([0.9]), + ), + ] + + metric = MeanAveragePrecision() + for det in detections_class_0: + metric.update([det], [det]) + +> result = metric.compute() + ^^^^^^^^^^^^^^^^ + +tests\metrics\test_mean_average_precision.py:315: +_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ +src\supervision\metrics\mean_average_precision.py:1655: in compute + cocoEval.evaluate() +src\supervision\metrics\mean_average_precision.py:1400: in evaluate + self._accumulate() +src\supervision\metrics\mean_average_precision.py:1256: in _accumulate + ap_results = self._compute_average_precision_by_size(precision) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +src\supervision\metrics\mean_average_precision.py:1185: in _compute_average_precision_by_size + self._compute_average_precision(average_precision_all_sizes) +_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ + +precision_slice = array([[[1.], + [1.], + [1.], + ..., + [1.], + [1.], + [1.]], + + [[1.], + ... [1.], + [1.], + ..., + [1.], + [1.], + [1.]]], shape=(10, 101, 1), dtype=float32) + + @staticmethod + def _compute_average_precision( + precision_slice: npt.NDArray[np.float32], + ) -> tuple[npt.NDArray[np.float32], npt.NDArray[np.float32]]: + valid_mask = precision_slice != -1 + valid_precision = np.where(valid_mask, precision_slice, np.float32(0.0)) + + def mean_with_mask( + axis: int | tuple[int, ...], + ) -> npt.NDArray[np.float32]: + sums = valid_precision.sum(axis=axis, dtype=np.float64) + counts = valid_mask.sum(axis=axis) + means = np.divide( + sums, + counts, + out=np.full(sums.shape, -1.0, dtype=np.float64), + where=counts > 0, + ) + return means.astype(np.float32) + + self._state.results = { +> "params": self.params, + ^^^^ + "counts": [ + num_iou_thresholds, + num_recall_thresholds, + num_categories, + num_area_ranges, + num_max_detections, + ], + "date": datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S"), + "precision": precision, + "recall": recall, + "scores": scores, + } +E NameError: name 'self' is not defined + +src\supervision\metrics\mean_average_precision.py:1157: NameErrorself = <tests.metrics.test_mean_average_precision.TestMeanAveragePrecision object at 0x000001C539A55F40> +detections_50_50 = Detections(xyxy=array([[10., 10., 50., 50.]], dtype=float32), mask=None, confidence=array([0.9]), class_id=array([0]), tracker_id=None, data={}, metadata={}) +targets_50_50 = Detections(xyxy=array([[10., 10., 50., 50.]], dtype=float32), mask=None, confidence=None, class_id=array([0]), tracker_id=None, data={}, metadata={}) + + def test_mixed_classes_with_missing_detections( + self, detections_50_50, targets_50_50 + ): + """Test mixed scenario with some classes having no detections""" + # Class 1: GT exists but no prediction + class_1_target = Detections( + xyxy=np.array([[60, 60, 100, 100]], dtype=np.float64), + class_id=np.array([1]), + ) + class_1_pred = Detections.empty() + + # Class 2: Prediction exists but no GT (false positive) + class_2_pred = Detections( + xyxy=np.array([[110, 110, 150, 150]], dtype=np.float64), + class_id=np.array([2]), + confidence=np.array([0.8]), + ) + class_2_target = Detections.empty() + + metric = MeanAveragePrecision() + metric.update([detections_50_50], [targets_50_50]) + metric.update([class_1_pred], [class_1_target]) + metric.update([class_2_pred], [class_2_target]) +> result = metric.compute() + ^^^^^^^^^^^^^^^^ + +tests\metrics\test_mean_average_precision.py:345: +_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ +src\supervision\metrics\mean_average_precision.py:1655: in compute + cocoEval.evaluate() +src\supervision\metrics\mean_average_precision.py:1400: in evaluate + self._accumulate() +src\supervision\metrics\mean_average_precision.py:1256: in _accumulate + ap_results = self._compute_average_precision_by_size(precision) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +src\supervision\metrics\mean_average_precision.py:1185: in _compute_average_precision_by_size + self._compute_average_precision(average_precision_all_sizes) +_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ + +precision_slice = array([[[0.9999999, 0. ], + [0.9999999, 0. ], + [0.9999999, 0. ], + ..., + [...99999, 0. ], + [0.9999999, 0. ], + [0.9999999, 0. ]]], shape=(10, 101, 2), dtype=float32) + + @staticmethod + def _compute_average_precision( + precision_slice: npt.NDArray[np.float32], + ) -> tuple[npt.NDArray[np.float32], npt.NDArray[np.float32]]: + valid_mask = precision_slice != -1 + valid_precision = np.where(valid_mask, precision_slice, np.float32(0.0)) + + def mean_with_mask( + axis: int | tuple[int, ...], + ) -> npt.NDArray[np.float32]: + sums = valid_precision.sum(axis=axis, dtype=np.float64) + counts = valid_mask.sum(axis=axis) + means = np.divide( + sums, + counts, + out=np.full(sums.shape, -1.0, dtype=np.float64), + where=counts > 0, + ) + return means.astype(np.float32) + + self._state.results = { +> "params": self.params, + ^^^^ + "counts": [ + num_iou_thresholds, + num_recall_thresholds, + num_categories, + num_area_ranges, + num_max_detections, + ], + "date": datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S"), + "precision": precision, + "recall": recall, + "scores": scores, + } +E NameError: name 'self' is not defined + +src\supervision\metrics\mean_average_precision.py:1157: NameErrorself = <tests.metrics.test_mean_average_precision.TestMeanAveragePrecision object at 0x000001C539A55C10> + + def test_empty_predictions_and_targets(self): + """Test completely empty predictions and targets""" + metric = MeanAveragePrecision() + metric.update([Detections.empty()], [Detections.empty()]) +> result = metric.compute() + ^^^^^^^^^^^^^^^^ + +tests\metrics\test_mean_average_precision.py:356: +_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ +src\supervision\metrics\mean_average_precision.py:1655: in compute + cocoEval.evaluate() +src\supervision\metrics\mean_average_precision.py:1400: in evaluate + self._accumulate() +src\supervision\metrics\mean_average_precision.py:1256: in _accumulate + ap_results = self._compute_average_precision_by_size(precision) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +src\supervision\metrics\mean_average_precision.py:1185: in _compute_average_precision_by_size + self._compute_average_precision(average_precision_all_sizes) +_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ + +precision_slice = array([], shape=(10, 101, 0), dtype=float32) + + @staticmethod + def _compute_average_precision( + precision_slice: npt.NDArray[np.float32], + ) -> tuple[npt.NDArray[np.float32], npt.NDArray[np.float32]]: + valid_mask = precision_slice != -1 + valid_precision = np.where(valid_mask, precision_slice, np.float32(0.0)) + + def mean_with_mask( + axis: int | tuple[int, ...], + ) -> npt.NDArray[np.float32]: + sums = valid_precision.sum(axis=axis, dtype=np.float64) + counts = valid_mask.sum(axis=axis) + means = np.divide( + sums, + counts, + out=np.full(sums.shape, -1.0, dtype=np.float64), + where=counts > 0, + ) + return means.astype(np.float32) + + self._state.results = { +> "params": self.params, + ^^^^ + "counts": [ + num_iou_thresholds, + num_recall_thresholds, + num_categories, + num_area_ranges, + num_max_detections, + ], + "date": datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S"), + "precision": precision, + "recall": recall, + "scores": scores, + } +E NameError: name 'self' is not defined + +src\supervision\metrics\mean_average_precision.py:1157: NameErrorself = <tests.metrics.test_mean_average_precision_area.TestMeanAveragePrecisionArea object at 0x000001C539A576E0> +xyxy = array([[ 10., 10., 40., 40.], + [100., 100., 200., 150.], + [300., 300., 500., 400.]], dtype=float32) +expected_areas = [900.0, 5000.0, 20000.0] +expected_size_maps = {'large': True, 'medium': True, 'small': True} + + @pytest.mark.parametrize( + ("xyxy", "expected_areas", "expected_size_maps"), + [ + ( + np.array( + [ + [10, 10, 40, 40], # Small: 900 + [100, 100, 200, 150], # Medium: 5000 + [300, 300, 500, 400], # Large: 20000 + ], + dtype=np.float32, + ), + [900.0, 5000.0, 20000.0], + {"small": True, "medium": True, "large": True}, + ), + ( + np.array([[0, 0, 10, 10]], dtype=np.float32), # Small: 100 + [100.0], + {"small": True, "medium": False, "large": False}, + ), + ( + np.array([[0, 0, 50, 50]], dtype=np.float32), # Medium: 2500 + [2500.0], + {"small": False, "medium": True, "large": False}, + ), + ( + np.array([[0, 0, 100, 100]], dtype=np.float32), # Large: 10000 + [10000.0], + {"small": False, "medium": False, "large": True}, + ), + ], + ) + def test_area_calculation_and_size_specific_map( + self, xyxy, expected_areas, expected_size_maps + ): + """Test area calculation and size-specific mAP functionality.""" + gt = Detections( + xyxy=xyxy, + class_id=np.arange(len(xyxy)), + ) + pred = Detections( + xyxy=gt.xyxy.copy(), + class_id=gt.class_id.copy(), + confidence=np.full(len(xyxy), 0.9), + ) + + map_metric = MeanAveragePrecision() + map_metric.update([pred], [gt]) + + # Test area calculation + prepared_targets = map_metric._prepare_targets(map_metric._targets_list) + areas = [ann["area"] for ann in prepared_targets["annotations"]] + assert np.allclose(areas, expected_areas), ( + f"Expected {expected_areas}, got {areas}" + ) + + # Test size-specific mAP +> result = map_metric.compute() + ^^^^^^^^^^^^^^^^^^^^ + +tests\metrics\test_mean_average_precision_area.py:70: +_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ +src\supervision\metrics\mean_average_precision.py:1655: in compute + cocoEval.evaluate() +src\supervision\metrics\mean_average_precision.py:1400: in evaluate + self._accumulate() +src\supervision\metrics\mean_average_precision.py:1256: in _accumulate + ap_results = self._compute_average_precision_by_size(precision) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +src\supervision\metrics\mean_average_precision.py:1185: in _compute_average_precision_by_size + self._compute_average_precision(average_precision_all_sizes) +_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ + +precision_slice = array([[[0.9999999, 0.9999999, 0.9999999], + [0.9999999, 0.9999999, 0.9999999], + [0.9999999, 0.9999999, 0...0.9999999, 0.9999999, 0.9999999], + [0.9999999, 0.9999999, 0.9999999]]], + shape=(10, 101, 3), dtype=float32) + + @staticmethod + def _compute_average_precision( + precision_slice: npt.NDArray[np.float32], + ) -> tuple[npt.NDArray[np.float32], npt.NDArray[np.float32]]: + valid_mask = precision_slice != -1 + valid_precision = np.where(valid_mask, precision_slice, np.float32(0.0)) + + def mean_with_mask( + axis: int | tuple[int, ...], + ) -> npt.NDArray[np.float32]: + sums = valid_precision.sum(axis=axis, dtype=np.float64) + counts = valid_mask.sum(axis=axis) + means = np.divide( + sums, + counts, + out=np.full(sums.shape, -1.0, dtype=np.float64), + where=counts > 0, + ) + return means.astype(np.float32) + + self._state.results = { +> "params": self.params, + ^^^^ + "counts": [ + num_iou_thresholds, + num_recall_thresholds, + num_categories, + num_area_ranges, + num_max_detections, + ], + "date": datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S"), + "precision": precision, + "recall": recall, + "scores": scores, + } +E NameError: name 'self' is not defined + +src\supervision\metrics\mean_average_precision.py:1157: NameErrorself = <tests.metrics.test_mean_average_precision_area.TestMeanAveragePrecisionArea object at 0x000001C539A57920> +xyxy = array([[ 0., 0., 10., 10.]], dtype=float32), expected_areas = [100.0] +expected_size_maps = {'large': False, 'medium': False, 'small': True} + + @pytest.mark.parametrize( + ("xyxy", "expected_areas", "expected_size_maps"), + [ + ( + np.array( + [ + [10, 10, 40, 40], # Small: 900 + [100, 100, 200, 150], # Medium: 5000 + [300, 300, 500, 400], # Large: 20000 + ], + dtype=np.float32, + ), + [900.0, 5000.0, 20000.0], + {"small": True, "medium": True, "large": True}, + ), + ( + np.array([[0, 0, 10, 10]], dtype=np.float32), # Small: 100 + [100.0], + {"small": True, "medium": False, "large": False}, + ), + ( + np.array([[0, 0, 50, 50]], dtype=np.float32), # Medium: 2500 + [2500.0], + {"small": False, "medium": True, "large": False}, + ), + ( + np.array([[0, 0, 100, 100]], dtype=np.float32), # Large: 10000 + [10000.0], + {"small": False, "medium": False, "large": True}, + ), + ], + ) + def test_area_calculation_and_size_specific_map( + self, xyxy, expected_areas, expected_size_maps + ): + """Test area calculation and size-specific mAP functionality.""" + gt = Detections( + xyxy=xyxy, + class_id=np.arange(len(xyxy)), + ) + pred = Detections( + xyxy=gt.xyxy.copy(), + class_id=gt.class_id.copy(), + confidence=np.full(len(xyxy), 0.9), + ) + + map_metric = MeanAveragePrecision() + map_metric.update([pred], [gt]) + + # Test area calculation + prepared_targets = map_metric._prepare_targets(map_metric._targets_list) + areas = [ann["area"] for ann in prepared_targets["annotations"]] + assert np.allclose(areas, expected_areas), ( + f"Expected {expected_areas}, got {areas}" + ) + + # Test size-specific mAP +> result = map_metric.compute() + ^^^^^^^^^^^^^^^^^^^^ + +tests\metrics\test_mean_average_precision_area.py:70: +_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ +src\supervision\metrics\mean_average_precision.py:1655: in compute + cocoEval.evaluate() +src\supervision\metrics\mean_average_precision.py:1400: in evaluate + self._accumulate() +src\supervision\metrics\mean_average_precision.py:1256: in _accumulate + ap_results = self._compute_average_precision_by_size(precision) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +src\supervision\metrics\mean_average_precision.py:1185: in _compute_average_precision_by_size + self._compute_average_precision(average_precision_all_sizes) +_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ + +precision_slice = array([[[0.9999999], + [0.9999999], + [0.9999999], + ..., + [0.9999999], + [0.9999999], +...9999], + ..., + [0.9999999], + [0.9999999], + [0.9999999]]], shape=(10, 101, 1), dtype=float32) + + @staticmethod + def _compute_average_precision( + precision_slice: npt.NDArray[np.float32], + ) -> tuple[npt.NDArray[np.float32], npt.NDArray[np.float32]]: + valid_mask = precision_slice != -1 + valid_precision = np.where(valid_mask, precision_slice, np.float32(0.0)) + + def mean_with_mask( + axis: int | tuple[int, ...], + ) -> npt.NDArray[np.float32]: + sums = valid_precision.sum(axis=axis, dtype=np.float64) + counts = valid_mask.sum(axis=axis) + means = np.divide( + sums, + counts, + out=np.full(sums.shape, -1.0, dtype=np.float64), + where=counts > 0, + ) + return means.astype(np.float32) + + self._state.results = { +> "params": self.params, + ^^^^ + "counts": [ + num_iou_thresholds, + num_recall_thresholds, + num_categories, + num_area_ranges, + num_max_detections, + ], + "date": datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S"), + "precision": precision, + "recall": recall, + "scores": scores, + } +E NameError: name 'self' is not defined + +src\supervision\metrics\mean_average_precision.py:1157: NameErrorself = <tests.metrics.test_mean_average_precision_area.TestMeanAveragePrecisionArea object at 0x000001C539A579E0> +xyxy = array([[ 0., 0., 50., 50.]], dtype=float32), expected_areas = [2500.0] +expected_size_maps = {'large': False, 'medium': True, 'small': False} + + @pytest.mark.parametrize( + ("xyxy", "expected_areas", "expected_size_maps"), + [ + ( + np.array( + [ + [10, 10, 40, 40], # Small: 900 + [100, 100, 200, 150], # Medium: 5000 + [300, 300, 500, 400], # Large: 20000 + ], + dtype=np.float32, + ), + [900.0, 5000.0, 20000.0], + {"small": True, "medium": True, "large": True}, + ), + ( + np.array([[0, 0, 10, 10]], dtype=np.float32), # Small: 100 + [100.0], + {"small": True, "medium": False, "large": False}, + ), + ( + np.array([[0, 0, 50, 50]], dtype=np.float32), # Medium: 2500 + [2500.0], + {"small": False, "medium": True, "large": False}, + ), + ( + np.array([[0, 0, 100, 100]], dtype=np.float32), # Large: 10000 + [10000.0], + {"small": False, "medium": False, "large": True}, + ), + ], + ) + def test_area_calculation_and_size_specific_map( + self, xyxy, expected_areas, expected_size_maps + ): + """Test area calculation and size-specific mAP functionality.""" + gt = Detections( + xyxy=xyxy, + class_id=np.arange(len(xyxy)), + ) + pred = Detections( + xyxy=gt.xyxy.copy(), + class_id=gt.class_id.copy(), + confidence=np.full(len(xyxy), 0.9), + ) + + map_metric = MeanAveragePrecision() + map_metric.update([pred], [gt]) + + # Test area calculation + prepared_targets = map_metric._prepare_targets(map_metric._targets_list) + areas = [ann["area"] for ann in prepared_targets["annotations"]] + assert np.allclose(areas, expected_areas), ( + f"Expected {expected_areas}, got {areas}" + ) + + # Test size-specific mAP +> result = map_metric.compute() + ^^^^^^^^^^^^^^^^^^^^ + +tests\metrics\test_mean_average_precision_area.py:70: +_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ +src\supervision\metrics\mean_average_precision.py:1655: in compute + cocoEval.evaluate() +src\supervision\metrics\mean_average_precision.py:1400: in evaluate + self._accumulate() +src\supervision\metrics\mean_average_precision.py:1256: in _accumulate + ap_results = self._compute_average_precision_by_size(precision) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +src\supervision\metrics\mean_average_precision.py:1185: in _compute_average_precision_by_size + self._compute_average_precision(average_precision_all_sizes) +_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ + +precision_slice = array([[[0.9999999], + [0.9999999], + [0.9999999], + ..., + [0.9999999], + [0.9999999], +...9999], + ..., + [0.9999999], + [0.9999999], + [0.9999999]]], shape=(10, 101, 1), dtype=float32) + + @staticmethod + def _compute_average_precision( + precision_slice: npt.NDArray[np.float32], + ) -> tuple[npt.NDArray[np.float32], npt.NDArray[np.float32]]: + valid_mask = precision_slice != -1 + valid_precision = np.where(valid_mask, precision_slice, np.float32(0.0)) + + def mean_with_mask( + axis: int | tuple[int, ...], + ) -> npt.NDArray[np.float32]: + sums = valid_precision.sum(axis=axis, dtype=np.float64) + counts = valid_mask.sum(axis=axis) + means = np.divide( + sums, + counts, + out=np.full(sums.shape, -1.0, dtype=np.float64), + where=counts > 0, + ) + return means.astype(np.float32) + + self._state.results = { +> "params": self.params, + ^^^^ + "counts": [ + num_iou_thresholds, + num_recall_thresholds, + num_categories, + num_area_ranges, + num_max_detections, + ], + "date": datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S"), + "precision": precision, + "recall": recall, + "scores": scores, + } +E NameError: name 'self' is not defined + +src\supervision\metrics\mean_average_precision.py:1157: NameErrorself = <tests.metrics.test_mean_average_precision_area.TestMeanAveragePrecisionArea object at 0x000001C539A57AA0> +xyxy = array([[ 0., 0., 100., 100.]], dtype=float32), expected_areas = [10000.0] +expected_size_maps = {'large': True, 'medium': False, 'small': False} + + @pytest.mark.parametrize( + ("xyxy", "expected_areas", "expected_size_maps"), + [ + ( + np.array( + [ + [10, 10, 40, 40], # Small: 900 + [100, 100, 200, 150], # Medium: 5000 + [300, 300, 500, 400], # Large: 20000 + ], + dtype=np.float32, + ), + [900.0, 5000.0, 20000.0], + {"small": True, "medium": True, "large": True}, + ), + ( + np.array([[0, 0, 10, 10]], dtype=np.float32), # Small: 100 + [100.0], + {"small": True, "medium": False, "large": False}, + ), + ( + np.array([[0, 0, 50, 50]], dtype=np.float32), # Medium: 2500 + [2500.0], + {"small": False, "medium": True, "large": False}, + ), + ( + np.array([[0, 0, 100, 100]], dtype=np.float32), # Large: 10000 + [10000.0], + {"small": False, "medium": False, "large": True}, + ), + ], + ) + def test_area_calculation_and_size_specific_map( + self, xyxy, expected_areas, expected_size_maps + ): + """Test area calculation and size-specific mAP functionality.""" + gt = Detections( + xyxy=xyxy, + class_id=np.arange(len(xyxy)), + ) + pred = Detections( + xyxy=gt.xyxy.copy(), + class_id=gt.class_id.copy(), + confidence=np.full(len(xyxy), 0.9), + ) + + map_metric = MeanAveragePrecision() + map_metric.update([pred], [gt]) + + # Test area calculation + prepared_targets = map_metric._prepare_targets(map_metric._targets_list) + areas = [ann["area"] for ann in prepared_targets["annotations"]] + assert np.allclose(areas, expected_areas), ( + f"Expected {expected_areas}, got {areas}" + ) + + # Test size-specific mAP +> result = map_metric.compute() + ^^^^^^^^^^^^^^^^^^^^ + +tests\metrics\test_mean_average_precision_area.py:70: +_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ +src\supervision\metrics\mean_average_precision.py:1655: in compute + cocoEval.evaluate() +src\supervision\metrics\mean_average_precision.py:1400: in evaluate + self._accumulate() +src\supervision\metrics\mean_average_precision.py:1256: in _accumulate + ap_results = self._compute_average_precision_by_size(precision) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +src\supervision\metrics\mean_average_precision.py:1185: in _compute_average_precision_by_size + self._compute_average_precision(average_precision_all_sizes) +_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ + +precision_slice = array([[[0.9999999], + [0.9999999], + [0.9999999], + ..., + [0.9999999], + [0.9999999], +...9999], + ..., + [0.9999999], + [0.9999999], + [0.9999999]]], shape=(10, 101, 1), dtype=float32) + + @staticmethod + def _compute_average_precision( + precision_slice: npt.NDArray[np.float32], + ) -> tuple[npt.NDArray[np.float32], npt.NDArray[np.float32]]: + valid_mask = precision_slice != -1 + valid_precision = np.where(valid_mask, precision_slice, np.float32(0.0)) + + def mean_with_mask( + axis: int | tuple[int, ...], + ) -> npt.NDArray[np.float32]: + sums = valid_precision.sum(axis=axis, dtype=np.float64) + counts = valid_mask.sum(axis=axis) + means = np.divide( + sums, + counts, + out=np.full(sums.shape, -1.0, dtype=np.float64), + where=counts > 0, + ) + return means.astype(np.float32) + + self._state.results = { +> "params": self.params, + ^^^^ + "counts": [ + num_iou_thresholds, + num_recall_thresholds, + num_categories, + num_area_ranges, + num_max_detections, + ], + "date": datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S"), + "precision": precision, + "recall": recall, + "scores": scores, + } +E NameError: name 'self' is not defined + +src\supervision\metrics\mean_average_precision.py:1157: NameErrordef test_mean_average_precision_accepts_obb_metric_target() -> None: + """Smoke test: MeanAveragePrecision accepts metric_target=ORIENTED_BOUNDING_BOXES. + + NOTE: MeanAveragePrecision uses the COCO evaluator path (box_iou_batch_with_jaccard) + and does not route through oriented_box_iou_batch regardless of metric_target. + This test verifies API acceptance only, not OBB IoU correctness. + """ + predictions = _non_square_obb_detections(confidence=True) + targets = _non_square_obb_detections() + + metric = MeanAveragePrecision(metric_target=MetricTarget.ORIENTED_BOUNDING_BOXES) +> result = metric.update([predictions], [targets]).compute() + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +tests\metrics\test_oriented_bounding_box_metrics.py:61: +_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ +src\supervision\metrics\mean_average_precision.py:1655: in compute + cocoEval.evaluate() +src\supervision\metrics\mean_average_precision.py:1400: in evaluate + self._accumulate() +src\supervision\metrics\mean_average_precision.py:1256: in _accumulate + ap_results = self._compute_average_precision_by_size(precision) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +src\supervision\metrics\mean_average_precision.py:1185: in _compute_average_precision_by_size + self._compute_average_precision(average_precision_all_sizes) +_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ + +precision_slice = array([[[0.9999999], + [0.9999999], + [0.9999999], + ..., + [0.9999999], + [0.9999999], +...9999], + ..., + [0.9999999], + [0.9999999], + [0.9999999]]], shape=(10, 101, 1), dtype=float32) + + @staticmethod + def _compute_average_precision( + precision_slice: npt.NDArray[np.float32], + ) -> tuple[npt.NDArray[np.float32], npt.NDArray[np.float32]]: + valid_mask = precision_slice != -1 + valid_precision = np.where(valid_mask, precision_slice, np.float32(0.0)) + + def mean_with_mask( + axis: int | tuple[int, ...], + ) -> npt.NDArray[np.float32]: + sums = valid_precision.sum(axis=axis, dtype=np.float64) + counts = valid_mask.sum(axis=axis) + means = np.divide( + sums, + counts, + out=np.full(sums.shape, -1.0, dtype=np.float64), + where=counts > 0, + ) + return means.astype(np.float32) + + self._state.results = { +> "params": self.params, + ^^^^ + "counts": [ + num_iou_thresholds, + num_recall_thresholds, + num_categories, + num_area_ranges, + num_max_detections, + ], + "date": datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S"), + "precision": precision, + "recall": recall, + "scores": scores, + } +E NameError: name 'self' is not defined + +src\supervision\metrics\mean_average_precision.py:1157: NameErrordetections = [Detections(xyxy=array([[10, 10, 20, 20], + [30, 30, 40, 40]]), mask=None, confidence=array([1, 1]), class_id=arr...30, 30, 40, 40]]), mask=None, confidence=array([1, 1]), class_id=array([1, 1]), tracker_id=None, data={}, metadata={})] +expected_results = Detections(xyxy=array([[10, 10, 20, 20], + [30, 30, 40, 40]]), mask=None, confidence=array([1, 1]), class_id=array([1, 1]), tracker_id=array([1, 2]), data={}, metadata={}) + + @pytest.mark.parametrize( + ("detections", "expected_results"), + [ + ( + [ + sv.Detections( + xyxy=np.array([[10, 10, 20, 20], [30, 30, 40, 40]]), + class_id=np.array([1, 1]), + confidence=np.array([1, 1]), + ), + sv.Detections( + xyxy=np.array([[10, 10, 20, 20], [30, 30, 40, 40]]), + class_id=np.array([1, 1]), + confidence=np.array([1, 1]), + ), + ], + sv.Detections( + xyxy=np.array([[10, 10, 20, 20], [30, 30, 40, 40]]), + class_id=np.array([1, 1]), + confidence=np.array([1, 1]), + tracker_id=np.array([1, 2]), + ), + ), + ], + ) + def test_byte_tracker( + detections: list[sv.Detections], + expected_results: sv.Detections, + ) -> None: + byte_tracker = sv.ByteTrack() +> tracked_detections = [byte_tracker.update_with_detections(d) for d in detections] + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +tests\tracker\test_byte_tracker.py:37: +_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ +src\supervision\tracker\byte_tracker\core.py:159: in update_with_detections + tracks = self.update_with_tensors(tensors=tensors) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +src\supervision\tracker\byte_tracker\core.py:213: in update_with_tensors + dets, scores_keep, dets_second, scores_second = self._split_by_confidence( +_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ + +self = <supervision.tracker.byte_tracker.core.ByteTrack object at 0x000001C53B23ACF0> +tensors = array([[10, 10, 20, 20, 1], + [30, 30, 40, 40, 1]]) + + def _split_by_confidence( + self, tensors: npt.NDArray[np.float32] + ) -> tuple[ + npt.NDArray[np.float32], + npt.NDArray[np.float32], + npt.NDArray[np.float32], + npt.NDArray[np.float32], + ]: + scores = tensors[:, 4] + bboxes = tensors[:, :4] + + remain_inds = scores > self.config.track_activation_threshold + inds_low = scores > 0.1 + inds_high = scores < self.config.track_activation_threshold + + inds_second = np.logical_and(inds_low, inds_high) + dets_second = bboxes[inds_second] + dets = bboxes[remain_inds] + scores_keep = scores[remain_inds] + scores_second = scores[inds_second] + + if len(dets) > 0: + """Detections""" + detections = [ + STrack( + STrack.tlbr_to_tlwh(tlbr), + score_keep, + self.config.minimum_consecutive_frames, + self.state.resources.internal_id_counter, + self.state.resources.external_id_counter, + ) + for (tlbr, score_keep) in zip(dets, scores_keep) + ] + else: + detections = [] +> inds_high = scores < self.track_activation_threshold + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +E AttributeError: 'ByteTrack' object has no attribute 'track_activation_threshold' + +src\supervision\tracker\byte_tracker\core.py:274: AttributeErrordef test_byte_tracker_does_not_skip_external_ids_for_short_lived_tracks() -> None: + def detections_from_boxes(boxes: list[list[float]]) -> sv.Detections: + return sv.Detections( + xyxy=np.array(boxes, dtype=np.float32), + class_id=np.zeros(len(boxes), dtype=int), + confidence=np.ones(len(boxes), dtype=np.float32), + ) + + # A transient false-positive appears and disappears before becoming confirmed. + # It should not consume an external tracker id. + frames = [ + detections_from_boxes([[0, 0, 10, 10]]), + detections_from_boxes([[0, 0, 10, 10], [100, 100, 110, 110]]), + detections_from_boxes([[0, 0, 10, 10]]), + detections_from_boxes([[0, 0, 10, 10], [200, 200, 210, 210]]), + detections_from_boxes([[0, 0, 10, 10], [200, 200, 210, 210]]), + ] + + byte_tracker = sv.ByteTrack(minimum_consecutive_frames=1) + +> tracked = [byte_tracker.update_with_detections(frame) for frame in frames] + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +tests\tracker\test_byte_tracker.py:61: +_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ +src\supervision\tracker\byte_tracker\core.py:159: in update_with_detections + tracks = self.update_with_tensors(tensors=tensors) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +src\supervision\tracker\byte_tracker\core.py:213: in update_with_tensors + dets, scores_keep, dets_second, scores_second = self._split_by_confidence( +_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ + +self = <supervision.tracker.byte_tracker.core.ByteTrack object at 0x000001C53B23BEC0> +tensors = array([[ 0., 0., 10., 10., 1.]], dtype=float32) + + def _split_by_confidence( + self, tensors: npt.NDArray[np.float32] + ) -> tuple[ + npt.NDArray[np.float32], + npt.NDArray[np.float32], + npt.NDArray[np.float32], + npt.NDArray[np.float32], + ]: + scores = tensors[:, 4] + bboxes = tensors[:, :4] + + remain_inds = scores > self.config.track_activation_threshold + inds_low = scores > 0.1 + inds_high = scores < self.config.track_activation_threshold + + inds_second = np.logical_and(inds_low, inds_high) + dets_second = bboxes[inds_second] + dets = bboxes[remain_inds] + scores_keep = scores[remain_inds] + scores_second = scores[inds_second] + + if len(dets) > 0: + """Detections""" + detections = [ + STrack( + STrack.tlbr_to_tlwh(tlbr), + score_keep, + self.config.minimum_consecutive_frames, + self.state.resources.internal_id_counter, + self.state.resources.external_id_counter, + ) + for (tlbr, score_keep) in zip(dets, scores_keep) + ] + else: + detections = [] +> inds_high = scores < self.track_activation_threshold + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +E AttributeError: 'ByteTrack' object has no attribute 'track_activation_threshold' + +src\supervision\tracker\byte_tracker\core.py:274: AttributeError \ No newline at end of file diff --git a/metrics-after-radon/cc_depois.json b/metrics-after-radon/cc_depois.json new file mode 100644 index 0000000000..bf8f4b8e7d --- /dev/null +++ b/metrics-after-radon/cc_depois.json @@ -0,0 +1,18082 @@ +{ + "src\\supervision\\annotators\\base.py": [ + { + "type": "class", + "rank": "A", + "name": "BaseAnnotator", + "endline": 12, + "complexity": 2, + "lineno": 7, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "annotate", + "endline": 12, + "complexity": 1, + "classname": "BaseAnnotator", + "lineno": 9, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "name": "annotate", + "endline": 12, + "complexity": 1, + "classname": "BaseAnnotator", + "lineno": 9, + "col_offset": 4, + "closures": [] + } + ], + "src\\supervision\\annotators\\core.py": [ + { + "type": "method", + "rank": "C", + "name": "calculate_border_coordinates", + "endline": 2821, + "complexity": 11, + "classname": "PercentageBarAnnotator", + "lineno": 2795, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "C", + "name": "calculate_crop_coordinates", + "endline": 3015, + "complexity": 11, + "classname": "CropAnnotator", + "lineno": 2977, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "annotate", + "endline": 2189, + "complexity": 10, + "classname": "TraceAnnotator", + "lineno": 2090, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "annotate", + "endline": 2395, + "complexity": 10, + "classname": "PixelateAnnotator", + "lineno": 2323, + "col_offset": 4, + "closures": [] + }, + { + "type": "function", + "rank": "B", + "name": "_paint_masks_by_area", + "endline": 493, + "complexity": 8, + "lineno": 438, + "col_offset": 0, + "closures": [] + }, + { + "type": "class", + "rank": "B", + "name": "PixelateAnnotator", + "endline": 2395, + "complexity": 8, + "lineno": 2304, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 2320, + "complexity": 3, + "classname": "PixelateAnnotator", + "lineno": 2309, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "annotate", + "endline": 2395, + "complexity": 10, + "classname": "PixelateAnnotator", + "lineno": 2323, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "B", + "name": "annotate", + "endline": 1064, + "complexity": 7, + "classname": "BoxCornerAnnotator", + "lineno": 999, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "annotate", + "endline": 1954, + "complexity": 7, + "classname": "IconAnnotator", + "lineno": 1885, + "col_offset": 4, + "closures": [] + }, + { + "type": "class", + "rank": "B", + "name": "TraceAnnotator", + "endline": 2189, + "complexity": 7, + "lineno": 2047, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 2087, + "complexity": 1, + "classname": "TraceAnnotator", + "lineno": 2058, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "annotate", + "endline": 2189, + "complexity": 10, + "classname": "TraceAnnotator", + "lineno": 2090, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "B", + "name": "_validate_custom_values", + "endline": 2848, + "complexity": 7, + "classname": "PercentageBarAnnotator", + "lineno": 2824, + "col_offset": 4, + "closures": [] + }, + { + "type": "class", + "rank": "B", + "name": "CropAnnotator", + "endline": 3015, + "complexity": 7, + "lineno": 2863, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 2893, + "complexity": 1, + "classname": "CropAnnotator", + "lineno": 2868, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "annotate", + "endline": 2974, + "complexity": 6, + "classname": "CropAnnotator", + "lineno": 2896, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "C", + "name": "calculate_crop_coordinates", + "endline": 3015, + "complexity": 11, + "classname": "CropAnnotator", + "lineno": 2977, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "B", + "name": "_use_obb", + "endline": 3253, + "complexity": 7, + "classname": "ComparisonAnnotator", + "lineno": 3246, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "_use_mask", + "endline": 3264, + "complexity": 7, + "classname": "ComparisonAnnotator", + "lineno": 3257, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "annotate", + "endline": 434, + "complexity": 6, + "classname": "OrientedBoxAnnotator", + "lineno": 374, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "annotate", + "endline": 676, + "complexity": 6, + "classname": "PolygonAnnotator", + "lineno": 612, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "annotate", + "endline": 870, + "complexity": 6, + "classname": "HaloAnnotator", + "lineno": 803, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "annotate", + "endline": 1267, + "complexity": 6, + "classname": "DotAnnotator", + "lineno": 1195, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "_draw_labels", + "endline": 1540, + "complexity": 6, + "classname": "LabelAnnotator", + "lineno": 1460, + "col_offset": 4, + "closures": [] + }, + { + "type": "class", + "rank": "B", + "name": "BlurAnnotator", + "endline": 2044, + "complexity": 6, + "lineno": 1970, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 1984, + "complexity": 3, + "classname": "BlurAnnotator", + "lineno": 1975, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "annotate", + "endline": 2044, + "complexity": 6, + "classname": "BlurAnnotator", + "lineno": 1987, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "B", + "name": "annotate", + "endline": 2044, + "complexity": 6, + "classname": "BlurAnnotator", + "lineno": 1987, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "annotate", + "endline": 2301, + "complexity": 6, + "classname": "HeatMapAnnotator", + "lineno": 2228, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "annotate", + "endline": 2517, + "complexity": 6, + "classname": "TriangleAnnotator", + "lineno": 2437, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "annotate", + "endline": 2653, + "complexity": 6, + "classname": "RoundBoxAnnotator", + "lineno": 2553, + "col_offset": 4, + "closures": [] + }, + { + "type": "class", + "rank": "B", + "name": "PercentageBarAnnotator", + "endline": 2860, + "complexity": 6, + "lineno": 2656, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 2693, + "complexity": 2, + "classname": "PercentageBarAnnotator", + "lineno": 2661, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "annotate", + "endline": 2792, + "complexity": 6, + "classname": "PercentageBarAnnotator", + "lineno": 2697, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "C", + "name": "calculate_border_coordinates", + "endline": 2821, + "complexity": 11, + "classname": "PercentageBarAnnotator", + "lineno": 2795, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "_validate_custom_values", + "endline": 2848, + "complexity": 7, + "classname": "PercentageBarAnnotator", + "lineno": 2824, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "validate_custom_values", + "endline": 2860, + "complexity": 1, + "classname": "PercentageBarAnnotator", + "lineno": 2856, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "B", + "name": "annotate", + "endline": 2792, + "complexity": 6, + "classname": "PercentageBarAnnotator", + "lineno": 2697, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "annotate", + "endline": 2974, + "complexity": 6, + "classname": "CropAnnotator", + "lineno": 2896, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "annotate", + "endline": 3102, + "complexity": 6, + "classname": "BackgroundOverlayAnnotator", + "lineno": 3051, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "annotate", + "endline": 3243, + "complexity": 6, + "classname": "ComparisonAnnotator", + "lineno": 3166, + "col_offset": 4, + "closures": [] + }, + { + "type": "class", + "rank": "A", + "name": "OrientedBoxAnnotator", + "endline": 434, + "complexity": 5, + "lineno": 350, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 371, + "complexity": 1, + "classname": "OrientedBoxAnnotator", + "lineno": 355, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "annotate", + "endline": 434, + "complexity": 6, + "classname": "OrientedBoxAnnotator", + "lineno": 374, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "class", + "rank": "A", + "name": "PolygonAnnotator", + "endline": 676, + "complexity": 5, + "lineno": 584, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 609, + "complexity": 1, + "classname": "PolygonAnnotator", + "lineno": 593, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "annotate", + "endline": 676, + "complexity": 6, + "classname": "PolygonAnnotator", + "lineno": 612, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "class", + "rank": "A", + "name": "HaloAnnotator", + "endline": 870, + "complexity": 5, + "lineno": 771, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 800, + "complexity": 1, + "classname": "HaloAnnotator", + "lineno": 780, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "annotate", + "endline": 870, + "complexity": 6, + "classname": "HaloAnnotator", + "lineno": 803, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "class", + "rank": "A", + "name": "BoxCornerAnnotator", + "endline": 1064, + "complexity": 5, + "lineno": 972, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 996, + "complexity": 1, + "classname": "BoxCornerAnnotator", + "lineno": 977, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "annotate", + "endline": 1064, + "complexity": 7, + "classname": "BoxCornerAnnotator", + "lineno": 999, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "class", + "rank": "A", + "name": "DotAnnotator", + "endline": 1267, + "complexity": 5, + "lineno": 1159, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 1192, + "complexity": 1, + "classname": "DotAnnotator", + "lineno": 1165, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "annotate", + "endline": 1267, + "complexity": 6, + "classname": "DotAnnotator", + "lineno": 1195, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "name": "_draw_labels", + "endline": 1835, + "complexity": 5, + "classname": "RichLabelAnnotator", + "lineno": 1774, + "col_offset": 4, + "closures": [] + }, + { + "type": "class", + "rank": "A", + "name": "HeatMapAnnotator", + "endline": 2301, + "complexity": 5, + "lineno": 2192, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 2225, + "complexity": 1, + "classname": "HeatMapAnnotator", + "lineno": 2199, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "annotate", + "endline": 2301, + "complexity": 6, + "classname": "HeatMapAnnotator", + "lineno": 2228, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "class", + "rank": "A", + "name": "TriangleAnnotator", + "endline": 2517, + "complexity": 5, + "lineno": 2398, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 2434, + "complexity": 1, + "classname": "TriangleAnnotator", + "lineno": 2404, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "annotate", + "endline": 2517, + "complexity": 6, + "classname": "TriangleAnnotator", + "lineno": 2437, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "class", + "rank": "A", + "name": "RoundBoxAnnotator", + "endline": 2653, + "complexity": 5, + "lineno": 2520, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 2550, + "complexity": 2, + "classname": "RoundBoxAnnotator", + "lineno": 2526, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "annotate", + "endline": 2653, + "complexity": 6, + "classname": "RoundBoxAnnotator", + "lineno": 2553, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "class", + "rank": "A", + "name": "BackgroundOverlayAnnotator", + "endline": 3102, + "complexity": 5, + "lineno": 3018, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 3048, + "complexity": 1, + "classname": "BackgroundOverlayAnnotator", + "lineno": 3033, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "annotate", + "endline": 3102, + "complexity": 6, + "classname": "BackgroundOverlayAnnotator", + "lineno": 3051, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "class", + "rank": "A", + "name": "ComparisonAnnotator", + "endline": 3382, + "complexity": 5, + "lineno": 3117, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 3162, + "complexity": 1, + "classname": "ComparisonAnnotator", + "lineno": 3128, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "annotate", + "endline": 3243, + "complexity": 6, + "classname": "ComparisonAnnotator", + "lineno": 3166, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "_use_obb", + "endline": 3253, + "complexity": 7, + "classname": "ComparisonAnnotator", + "lineno": 3246, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "_use_mask", + "endline": 3264, + "complexity": 7, + "classname": "ComparisonAnnotator", + "lineno": 3257, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_mask_from_xyxy", + "endline": 3281, + "complexity": 3, + "classname": "ComparisonAnnotator", + "lineno": 3268, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_mask_from_obb", + "endline": 3296, + "complexity": 3, + "classname": "ComparisonAnnotator", + "lineno": 3284, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_mask_from_mask", + "endline": 3309, + "complexity": 4, + "classname": "ComparisonAnnotator", + "lineno": 3299, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_draw_labels", + "endline": 3382, + "complexity": 3, + "classname": "ComparisonAnnotator", + "lineno": 3311, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "class", + "rank": "A", + "name": "BoxAnnotator", + "endline": 347, + "complexity": 4, + "lineno": 263, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 284, + "complexity": 1, + "classname": "BoxAnnotator", + "lineno": 268, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "annotate", + "endline": 347, + "complexity": 4, + "classname": "BoxAnnotator", + "lineno": 287, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "name": "annotate", + "endline": 347, + "complexity": 4, + "classname": "BoxAnnotator", + "lineno": 287, + "col_offset": 4, + "closures": [] + }, + { + "type": "class", + "rank": "A", + "name": "MaskAnnotator", + "endline": 581, + "complexity": 4, + "lineno": 496, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 521, + "complexity": 1, + "classname": "MaskAnnotator", + "lineno": 505, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "annotate", + "endline": 581, + "complexity": 4, + "classname": "MaskAnnotator", + "lineno": 524, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "name": "annotate", + "endline": 581, + "complexity": 4, + "classname": "MaskAnnotator", + "lineno": 524, + "col_offset": 4, + "closures": [] + }, + { + "type": "class", + "rank": "A", + "name": "ColorAnnotator", + "endline": 768, + "complexity": 4, + "lineno": 679, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 700, + "complexity": 1, + "classname": "ColorAnnotator", + "lineno": 684, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "annotate", + "endline": 768, + "complexity": 4, + "classname": "ColorAnnotator", + "lineno": 703, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "name": "annotate", + "endline": 768, + "complexity": 4, + "classname": "ColorAnnotator", + "lineno": 703, + "col_offset": 4, + "closures": [] + }, + { + "type": "class", + "rank": "A", + "name": "EllipseAnnotator", + "endline": 969, + "complexity": 4, + "lineno": 873, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 900, + "complexity": 1, + "classname": "EllipseAnnotator", + "lineno": 878, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "annotate", + "endline": 969, + "complexity": 4, + "classname": "EllipseAnnotator", + "lineno": 903, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "name": "annotate", + "endline": 969, + "complexity": 4, + "classname": "EllipseAnnotator", + "lineno": 903, + "col_offset": 4, + "closures": [] + }, + { + "type": "class", + "rank": "A", + "name": "CircleAnnotator", + "endline": 1156, + "complexity": 4, + "lineno": 1067, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 1089, + "complexity": 1, + "classname": "CircleAnnotator", + "lineno": 1072, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "annotate", + "endline": 1156, + "complexity": 4, + "classname": "CircleAnnotator", + "lineno": 1092, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "name": "annotate", + "endline": 1156, + "complexity": 4, + "classname": "CircleAnnotator", + "lineno": 1092, + "col_offset": 4, + "closures": [] + }, + { + "type": "class", + "rank": "A", + "name": "LabelAnnotator", + "endline": 1582, + "complexity": 4, + "lineno": 1270, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 1321, + "complexity": 1, + "classname": "LabelAnnotator", + "lineno": 1275, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "annotate", + "endline": 1404, + "complexity": 3, + "classname": "LabelAnnotator", + "lineno": 1325, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_get_label_properties", + "endline": 1458, + "complexity": 4, + "classname": "LabelAnnotator", + "lineno": 1406, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "_draw_labels", + "endline": 1540, + "complexity": 6, + "classname": "LabelAnnotator", + "lineno": 1460, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "draw_rounded_rectangle", + "endline": 1582, + "complexity": 3, + "classname": "LabelAnnotator", + "lineno": 1543, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "name": "_get_label_properties", + "endline": 1458, + "complexity": 4, + "classname": "LabelAnnotator", + "lineno": 1406, + "col_offset": 4, + "closures": [] + }, + { + "type": "class", + "rank": "A", + "name": "RichLabelAnnotator", + "endline": 1858, + "complexity": 4, + "lineno": 1585, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 1638, + "complexity": 1, + "classname": "RichLabelAnnotator", + "lineno": 1591, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "annotate", + "endline": 1720, + "complexity": 3, + "classname": "RichLabelAnnotator", + "lineno": 1642, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_get_label_properties", + "endline": 1772, + "complexity": 4, + "classname": "RichLabelAnnotator", + "lineno": 1722, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_draw_labels", + "endline": 1835, + "complexity": 5, + "classname": "RichLabelAnnotator", + "lineno": 1774, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_load_font", + "endline": 1858, + "complexity": 3, + "classname": "RichLabelAnnotator", + "lineno": 1838, + "col_offset": 4, + "closures": [ + { + "type": "function", + "rank": "A", + "name": "load_default_font", + "endline": 1847, + "complexity": 2, + "lineno": 1841, + "col_offset": 8, + "closures": [] + } + ] + } + ] + }, + { + "type": "method", + "rank": "A", + "name": "_get_label_properties", + "endline": 1772, + "complexity": 4, + "classname": "RichLabelAnnotator", + "lineno": 1722, + "col_offset": 4, + "closures": [] + }, + { + "type": "class", + "rank": "A", + "name": "IconAnnotator", + "endline": 1967, + "complexity": 4, + "lineno": 1861, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 1882, + "complexity": 1, + "classname": "IconAnnotator", + "lineno": 1866, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "annotate", + "endline": 1954, + "complexity": 7, + "classname": "IconAnnotator", + "lineno": 1885, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_load_icon", + "endline": 1967, + "complexity": 2, + "classname": "IconAnnotator", + "lineno": 1957, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "name": "_mask_from_mask", + "endline": 3309, + "complexity": 4, + "classname": "ComparisonAnnotator", + "lineno": 3299, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "annotate", + "endline": 1404, + "complexity": 3, + "classname": "LabelAnnotator", + "lineno": 1325, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "draw_rounded_rectangle", + "endline": 1582, + "complexity": 3, + "classname": "LabelAnnotator", + "lineno": 1543, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "annotate", + "endline": 1720, + "complexity": 3, + "classname": "RichLabelAnnotator", + "lineno": 1642, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_load_font", + "endline": 1858, + "complexity": 3, + "classname": "RichLabelAnnotator", + "lineno": 1838, + "col_offset": 4, + "closures": [ + { + "type": "function", + "rank": "A", + "name": "load_default_font", + "endline": 1847, + "complexity": 2, + "lineno": 1841, + "col_offset": 8, + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 1984, + "complexity": 3, + "classname": "BlurAnnotator", + "lineno": 1975, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 2320, + "complexity": 3, + "classname": "PixelateAnnotator", + "lineno": 2309, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_mask_from_xyxy", + "endline": 3281, + "complexity": 3, + "classname": "ComparisonAnnotator", + "lineno": 3268, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_mask_from_obb", + "endline": 3296, + "complexity": 3, + "classname": "ComparisonAnnotator", + "lineno": 3284, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_draw_labels", + "endline": 3382, + "complexity": 3, + "classname": "ComparisonAnnotator", + "lineno": 3311, + "col_offset": 4, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "_normalize_color_input", + "endline": 78, + "complexity": 2, + "lineno": 68, + "col_offset": 0, + "closures": [] + }, + { + "type": "class", + "rank": "A", + "name": "_BaseLabelAnnotator", + "endline": 260, + "complexity": 2, + "lineno": 97, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 145, + "complexity": 1, + "classname": "_BaseLabelAnnotator", + "lineno": 102, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "color", + "endline": 150, + "complexity": 1, + "classname": "_BaseLabelAnnotator", + "lineno": 149, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "color", + "endline": 154, + "complexity": 1, + "classname": "_BaseLabelAnnotator", + "lineno": 153, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "color_lookup", + "endline": 158, + "complexity": 1, + "classname": "_BaseLabelAnnotator", + "lineno": 157, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "color_lookup", + "endline": 162, + "complexity": 1, + "classname": "_BaseLabelAnnotator", + "lineno": 161, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "text_color", + "endline": 166, + "complexity": 1, + "classname": "_BaseLabelAnnotator", + "lineno": 165, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "text_color", + "endline": 170, + "complexity": 1, + "classname": "_BaseLabelAnnotator", + "lineno": 169, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "text_padding", + "endline": 174, + "complexity": 1, + "classname": "_BaseLabelAnnotator", + "lineno": 173, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "text_padding", + "endline": 178, + "complexity": 1, + "classname": "_BaseLabelAnnotator", + "lineno": 177, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "text_anchor", + "endline": 182, + "complexity": 1, + "classname": "_BaseLabelAnnotator", + "lineno": 181, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "text_anchor", + "endline": 186, + "complexity": 1, + "classname": "_BaseLabelAnnotator", + "lineno": 185, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "text_offset", + "endline": 190, + "complexity": 1, + "classname": "_BaseLabelAnnotator", + "lineno": 189, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "text_offset", + "endline": 194, + "complexity": 1, + "classname": "_BaseLabelAnnotator", + "lineno": 193, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "border_radius", + "endline": 198, + "complexity": 1, + "classname": "_BaseLabelAnnotator", + "lineno": 197, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "border_radius", + "endline": 202, + "complexity": 1, + "classname": "_BaseLabelAnnotator", + "lineno": 201, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "smart_position", + "endline": 206, + "complexity": 1, + "classname": "_BaseLabelAnnotator", + "lineno": 205, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "smart_position", + "endline": 210, + "complexity": 1, + "classname": "_BaseLabelAnnotator", + "lineno": 209, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "max_line_length", + "endline": 214, + "complexity": 1, + "classname": "_BaseLabelAnnotator", + "lineno": 213, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "max_line_length", + "endline": 218, + "complexity": 1, + "classname": "_BaseLabelAnnotator", + "lineno": 217, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_adjust_labels_in_frame", + "endline": 260, + "complexity": 2, + "classname": "_BaseLabelAnnotator", + "lineno": 220, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "name": "_adjust_labels_in_frame", + "endline": 260, + "complexity": 2, + "classname": "_BaseLabelAnnotator", + "lineno": 220, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_load_icon", + "endline": 1967, + "complexity": 2, + "classname": "IconAnnotator", + "lineno": 1957, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 2550, + "complexity": 2, + "classname": "RoundBoxAnnotator", + "lineno": 2526, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 2693, + "complexity": 2, + "classname": "PercentageBarAnnotator", + "lineno": 2661, + "col_offset": 4, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "_normalize_color_input", + "endline": 59, + "complexity": 1, + "lineno": 59, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "_normalize_color_input", + "endline": 65, + "complexity": 1, + "lineno": 63, + "col_offset": 0, + "closures": [] + }, + { + "type": "class", + "rank": "A", + "name": "_LabelAnnotatorConfig", + "endline": 94, + "complexity": 1, + "lineno": 85, + "col_offset": 0, + "methods": [] + }, + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 145, + "complexity": 1, + "classname": "_BaseLabelAnnotator", + "lineno": 102, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "color", + "endline": 150, + "complexity": 1, + "classname": "_BaseLabelAnnotator", + "lineno": 149, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "color", + "endline": 154, + "complexity": 1, + "classname": "_BaseLabelAnnotator", + "lineno": 153, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "color_lookup", + "endline": 158, + "complexity": 1, + "classname": "_BaseLabelAnnotator", + "lineno": 157, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "color_lookup", + "endline": 162, + "complexity": 1, + "classname": "_BaseLabelAnnotator", + "lineno": 161, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "text_color", + "endline": 166, + "complexity": 1, + "classname": "_BaseLabelAnnotator", + "lineno": 165, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "text_color", + "endline": 170, + "complexity": 1, + "classname": "_BaseLabelAnnotator", + "lineno": 169, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "text_padding", + "endline": 174, + "complexity": 1, + "classname": "_BaseLabelAnnotator", + "lineno": 173, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "text_padding", + "endline": 178, + "complexity": 1, + "classname": "_BaseLabelAnnotator", + "lineno": 177, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "text_anchor", + "endline": 182, + "complexity": 1, + "classname": "_BaseLabelAnnotator", + "lineno": 181, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "text_anchor", + "endline": 186, + "complexity": 1, + "classname": "_BaseLabelAnnotator", + "lineno": 185, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "text_offset", + "endline": 190, + "complexity": 1, + "classname": "_BaseLabelAnnotator", + "lineno": 189, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "text_offset", + "endline": 194, + "complexity": 1, + "classname": "_BaseLabelAnnotator", + "lineno": 193, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "border_radius", + "endline": 198, + "complexity": 1, + "classname": "_BaseLabelAnnotator", + "lineno": 197, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "border_radius", + "endline": 202, + "complexity": 1, + "classname": "_BaseLabelAnnotator", + "lineno": 201, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "smart_position", + "endline": 206, + "complexity": 1, + "classname": "_BaseLabelAnnotator", + "lineno": 205, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "smart_position", + "endline": 210, + "complexity": 1, + "classname": "_BaseLabelAnnotator", + "lineno": 209, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "max_line_length", + "endline": 214, + "complexity": 1, + "classname": "_BaseLabelAnnotator", + "lineno": 213, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "max_line_length", + "endline": 218, + "complexity": 1, + "classname": "_BaseLabelAnnotator", + "lineno": 217, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 284, + "complexity": 1, + "classname": "BoxAnnotator", + "lineno": 268, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 371, + "complexity": 1, + "classname": "OrientedBoxAnnotator", + "lineno": 355, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 521, + "complexity": 1, + "classname": "MaskAnnotator", + "lineno": 505, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 609, + "complexity": 1, + "classname": "PolygonAnnotator", + "lineno": 593, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 700, + "complexity": 1, + "classname": "ColorAnnotator", + "lineno": 684, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 800, + "complexity": 1, + "classname": "HaloAnnotator", + "lineno": 780, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 900, + "complexity": 1, + "classname": "EllipseAnnotator", + "lineno": 878, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 996, + "complexity": 1, + "classname": "BoxCornerAnnotator", + "lineno": 977, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 1089, + "complexity": 1, + "classname": "CircleAnnotator", + "lineno": 1072, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 1192, + "complexity": 1, + "classname": "DotAnnotator", + "lineno": 1165, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 1321, + "complexity": 1, + "classname": "LabelAnnotator", + "lineno": 1275, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 1638, + "complexity": 1, + "classname": "RichLabelAnnotator", + "lineno": 1591, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 1882, + "complexity": 1, + "classname": "IconAnnotator", + "lineno": 1866, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 2087, + "complexity": 1, + "classname": "TraceAnnotator", + "lineno": 2058, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 2225, + "complexity": 1, + "classname": "HeatMapAnnotator", + "lineno": 2199, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 2434, + "complexity": 1, + "classname": "TriangleAnnotator", + "lineno": 2404, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "validate_custom_values", + "endline": 2860, + "complexity": 1, + "classname": "PercentageBarAnnotator", + "lineno": 2856, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 2893, + "complexity": 1, + "classname": "CropAnnotator", + "lineno": 2868, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 3048, + "complexity": 1, + "classname": "BackgroundOverlayAnnotator", + "lineno": 3033, + "col_offset": 4, + "closures": [] + }, + { + "type": "class", + "rank": "A", + "name": "_ComparisonAnnotatorConfig", + "endline": 3114, + "complexity": 1, + "lineno": 3106, + "col_offset": 0, + "methods": [] + }, + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 3162, + "complexity": 1, + "classname": "ComparisonAnnotator", + "lineno": 3128, + "col_offset": 4, + "closures": [] + } + ], + "src\\supervision\\annotators\\utils.py": [ + { + "type": "function", + "rank": "C", + "name": "resolve_text_background_xyxy", + "endline": 129, + "complexity": 11, + "lineno": 80, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "B", + "name": "wrap_text", + "endline": 202, + "complexity": 10, + "lineno": 159, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "B", + "name": "resolve_color_idx", + "endline": 77, + "complexity": 9, + "lineno": 40, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "get_labels_text", + "endline": 263, + "complexity": 5, + "lineno": 235, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "resolve_color", + "endline": 156, + "complexity": 4, + "lineno": 139, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "hex_to_rgba", + "endline": 409, + "complexity": 4, + "lineno": 384, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "rgba_to_hex", + "endline": 427, + "complexity": 4, + "lineno": 412, + "col_offset": 0, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "put", + "endline": 375, + "complexity": 4, + "classname": "Trace", + "lineno": 347, + "col_offset": 4, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "_validate_labels", + "endline": 221, + "complexity": 3, + "lineno": 205, + "col_offset": 0, + "closures": [] + }, + { + "type": "class", + "rank": "A", + "name": "Trace", + "endline": 381, + "complexity": 3, + "lineno": 332, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 345, + "complexity": 1, + "classname": "Trace", + "lineno": 333, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "put", + "endline": 375, + "complexity": 4, + "classname": "Trace", + "lineno": 347, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "get", + "endline": 381, + "complexity": 1, + "classname": "Trace", + "lineno": 377, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "function", + "rank": "A", + "name": "get_color_by_index", + "endline": 136, + "complexity": 2, + "lineno": 133, + "col_offset": 0, + "closures": [] + }, + { + "type": "class", + "rank": "A", + "name": "ColorLookup", + "endline": 37, + "complexity": 2, + "lineno": 21, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "list", + "endline": 37, + "complexity": 1, + "classname": "ColorLookup", + "lineno": 36, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "function", + "rank": "A", + "name": "validate_labels", + "endline": 232, + "complexity": 1, + "lineno": 231, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "snap_boxes", + "endline": 329, + "complexity": 1, + "lineno": 266, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "is_valid_hex", + "endline": 441, + "complexity": 1, + "lineno": 430, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "calculate_dynamic_kernel_size", + "endline": 464, + "complexity": 1, + "lineno": 444, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "calculate_dynamic_pixel_size", + "endline": 487, + "complexity": 1, + "lineno": 467, + "col_offset": 0, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "list", + "endline": 37, + "complexity": 1, + "classname": "ColorLookup", + "lineno": 36, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 345, + "complexity": 1, + "classname": "Trace", + "lineno": 333, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "get", + "endline": 381, + "complexity": 1, + "classname": "Trace", + "lineno": 377, + "col_offset": 4, + "closures": [] + } + ], + "src\\supervision\\assets\\downloader.py": [ + { + "type": "function", + "rank": "B", + "name": "download_assets", + "endline": 95, + "complexity": 6, + "lineno": 41, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "is_md5_hash_matching", + "endline": 38, + "complexity": 2, + "lineno": 17, + "col_offset": 0, + "closures": [] + } + ], + "src\\supervision\\assets\\list.py": [ + { + "type": "class", + "rank": "A", + "name": "Assets", + "endline": 20, + "complexity": 3, + "lineno": 7, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "__new__", + "endline": 16, + "complexity": 1, + "classname": "Assets", + "lineno": 11, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "list", + "endline": 20, + "complexity": 2, + "classname": "Assets", + "lineno": 19, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "name": "list", + "endline": 20, + "complexity": 2, + "classname": "Assets", + "lineno": 19, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__new__", + "endline": 16, + "complexity": 1, + "classname": "Assets", + "lineno": 11, + "col_offset": 4, + "closures": [] + }, + { + "type": "class", + "rank": "A", + "name": "VideoAssets", + "endline": 54, + "complexity": 1, + "lineno": 23, + "col_offset": 0, + "methods": [] + }, + { + "type": "class", + "rank": "A", + "name": "ImageAssets", + "endline": 70, + "complexity": 1, + "lineno": 57, + "col_offset": 0, + "methods": [] + } + ], + "src\\supervision\\classification\\core.py": [ + { + "type": "function", + "rank": "A", + "name": "_validate_confidence", + "endline": 29, + "complexity": 4, + "lineno": 22, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "_validate_class_ids", + "endline": 19, + "complexity": 3, + "lineno": 13, + "col_offset": 0, + "closures": [] + }, + { + "type": "class", + "rank": "A", + "name": "Classifications", + "endline": 200, + "complexity": 2, + "lineno": 33, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "__post_init__", + "endline": 44, + "complexity": 1, + "classname": "Classifications", + "lineno": 37, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__len__", + "endline": 50, + "complexity": 1, + "classname": "Classifications", + "lineno": 46, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "from_clip", + "endline": 90, + "complexity": 2, + "classname": "Classifications", + "lineno": 53, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "from_ultralytics", + "endline": 118, + "complexity": 1, + "classname": "Classifications", + "lineno": 93, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "from_timm", + "endline": 164, + "complexity": 2, + "classname": "Classifications", + "lineno": 121, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "get_top_k", + "endline": 200, + "complexity": 2, + "classname": "Classifications", + "lineno": 166, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "name": "from_clip", + "endline": 90, + "complexity": 2, + "classname": "Classifications", + "lineno": 53, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "from_timm", + "endline": 164, + "complexity": 2, + "classname": "Classifications", + "lineno": 121, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "get_top_k", + "endline": 200, + "complexity": 2, + "classname": "Classifications", + "lineno": 166, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__post_init__", + "endline": 44, + "complexity": 1, + "classname": "Classifications", + "lineno": 37, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__len__", + "endline": 50, + "complexity": 1, + "classname": "Classifications", + "lineno": 46, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "from_ultralytics", + "endline": 118, + "complexity": 1, + "classname": "Classifications", + "lineno": 93, + "col_offset": 4, + "closures": [] + } + ], + "src\\supervision\\dataset\\core.py": [ + { + "type": "method", + "rank": "C", + "name": "merge", + "endline": 327, + "complexity": 13, + "classname": "DetectionDataset", + "lineno": 231, + "col_offset": 4, + "closures": [ + { + "type": "function", + "rank": "A", + "name": "is_in_memory", + "endline": 280, + "complexity": 2, + "lineno": 279, + "col_offset": 8, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "is_lazy", + "endline": 283, + "complexity": 1, + "lineno": 282, + "col_offset": 8, + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "B", + "name": "__eq__", + "endline": 155, + "complexity": 8, + "classname": "DetectionDataset", + "lineno": 135, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "as_yolo", + "endline": 575, + "complexity": 8, + "classname": "DetectionDataset", + "lineno": 504, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "__eq__", + "endline": 822, + "complexity": 8, + "classname": "ClassificationDataset", + "lineno": 802, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "split", + "endline": 228, + "complexity": 6, + "classname": "DetectionDataset", + "lineno": 157, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "split", + "endline": 895, + "complexity": 6, + "classname": "ClassificationDataset", + "lineno": 824, + "col_offset": 4, + "closures": [] + }, + { + "type": "class", + "rank": "A", + "name": "DetectionDataset", + "endline": 723, + "complexity": 5, + "lineno": 56, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 99, + "complexity": 5, + "classname": "DetectionDataset", + "lineno": 74, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_get_image", + "endline": 108, + "complexity": 3, + "classname": "DetectionDataset", + "lineno": 101, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__len__", + "endline": 111, + "complexity": 2, + "classname": "DetectionDataset", + "lineno": 110, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__getitem__", + "endline": 122, + "complexity": 1, + "classname": "DetectionDataset", + "lineno": 113, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__iter__", + "endline": 133, + "complexity": 2, + "classname": "DetectionDataset", + "lineno": 124, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "__eq__", + "endline": 155, + "complexity": 8, + "classname": "DetectionDataset", + "lineno": 135, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "split", + "endline": 228, + "complexity": 6, + "classname": "DetectionDataset", + "lineno": 157, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "C", + "name": "merge", + "endline": 327, + "complexity": 13, + "classname": "DetectionDataset", + "lineno": 231, + "col_offset": 4, + "closures": [ + { + "type": "function", + "rank": "A", + "name": "is_in_memory", + "endline": 280, + "complexity": 2, + "lineno": 279, + "col_offset": 8, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "is_lazy", + "endline": 283, + "complexity": 1, + "lineno": 282, + "col_offset": 8, + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "name": "as_pascal_voc", + "endline": 385, + "complexity": 4, + "classname": "DetectionDataset", + "lineno": 330, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "from_pascal_voc", + "endline": 438, + "complexity": 1, + "classname": "DetectionDataset", + "lineno": 388, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "from_yolo", + "endline": 501, + "complexity": 1, + "classname": "DetectionDataset", + "lineno": 442, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "as_yolo", + "endline": 575, + "complexity": 8, + "classname": "DetectionDataset", + "lineno": 504, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "from_coco", + "endline": 624, + "complexity": 1, + "classname": "DetectionDataset", + "lineno": 578, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "as_coco", + "endline": 723, + "complexity": 3, + "classname": "DetectionDataset", + "lineno": 626, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 99, + "complexity": 5, + "classname": "DetectionDataset", + "lineno": 74, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "as_pascal_voc", + "endline": 385, + "complexity": 4, + "classname": "DetectionDataset", + "lineno": 330, + "col_offset": 4, + "closures": [] + }, + { + "type": "class", + "rank": "A", + "name": "ClassificationDataset", + "endline": 968, + "complexity": 4, + "lineno": 727, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 761, + "complexity": 3, + "classname": "ClassificationDataset", + "lineno": 740, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_get_image", + "endline": 773, + "complexity": 3, + "classname": "ClassificationDataset", + "lineno": 766, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__len__", + "endline": 776, + "complexity": 2, + "classname": "ClassificationDataset", + "lineno": 775, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__getitem__", + "endline": 787, + "complexity": 1, + "classname": "ClassificationDataset", + "lineno": 778, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__iter__", + "endline": 800, + "complexity": 2, + "classname": "ClassificationDataset", + "lineno": 789, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "__eq__", + "endline": 822, + "complexity": 8, + "classname": "ClassificationDataset", + "lineno": 802, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "split", + "endline": 895, + "complexity": 6, + "classname": "ClassificationDataset", + "lineno": 824, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "as_folder_structure", + "endline": 919, + "complexity": 4, + "classname": "ClassificationDataset", + "lineno": 897, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "from_folder_structure", + "endline": 968, + "complexity": 3, + "classname": "ClassificationDataset", + "lineno": 922, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "name": "as_folder_structure", + "endline": 919, + "complexity": 4, + "classname": "ClassificationDataset", + "lineno": 897, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_get_image", + "endline": 108, + "complexity": 3, + "classname": "DetectionDataset", + "lineno": 101, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "as_coco", + "endline": 723, + "complexity": 3, + "classname": "DetectionDataset", + "lineno": 626, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 761, + "complexity": 3, + "classname": "ClassificationDataset", + "lineno": 740, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_get_image", + "endline": 773, + "complexity": 3, + "classname": "ClassificationDataset", + "lineno": 766, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "from_folder_structure", + "endline": 968, + "complexity": 3, + "classname": "ClassificationDataset", + "lineno": 922, + "col_offset": 4, + "closures": [] + }, + { + "type": "class", + "rank": "A", + "name": "BaseDataset", + "endline": 53, + "complexity": 2, + "lineno": 41, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "__len__", + "endline": 44, + "complexity": 1, + "classname": "BaseDataset", + "lineno": 43, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "split", + "endline": 53, + "complexity": 1, + "classname": "BaseDataset", + "lineno": 47, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "name": "__len__", + "endline": 111, + "complexity": 2, + "classname": "DetectionDataset", + "lineno": 110, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__iter__", + "endline": 133, + "complexity": 2, + "classname": "DetectionDataset", + "lineno": 124, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__len__", + "endline": 776, + "complexity": 2, + "classname": "ClassificationDataset", + "lineno": 775, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__iter__", + "endline": 800, + "complexity": 2, + "classname": "ClassificationDataset", + "lineno": 789, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__len__", + "endline": 44, + "complexity": 1, + "classname": "BaseDataset", + "lineno": 43, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "split", + "endline": 53, + "complexity": 1, + "classname": "BaseDataset", + "lineno": 47, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__getitem__", + "endline": 122, + "complexity": 1, + "classname": "DetectionDataset", + "lineno": 113, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "from_pascal_voc", + "endline": 438, + "complexity": 1, + "classname": "DetectionDataset", + "lineno": 388, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "from_yolo", + "endline": 501, + "complexity": 1, + "classname": "DetectionDataset", + "lineno": 442, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "from_coco", + "endline": 624, + "complexity": 1, + "classname": "DetectionDataset", + "lineno": 578, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__getitem__", + "endline": 787, + "complexity": 1, + "classname": "ClassificationDataset", + "lineno": 778, + "col_offset": 4, + "closures": [] + } + ], + "src\\supervision\\dataset\\utils.py": [ + { + "type": "function", + "rank": "A", + "name": "map_detections_class_id", + "endline": 125, + "complexity": 4, + "lineno": 108, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "approximate_mask_with_polygons", + "endline": 76, + "complexity": 3, + "lineno": 52, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "merge_class_lists", + "endline": 87, + "complexity": 3, + "lineno": 80, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "build_class_index_mapping", + "endline": 105, + "complexity": 3, + "lineno": 90, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "save_dataset_images", + "endline": 136, + "complexity": 3, + "lineno": 128, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "train_test_split", + "endline": 164, + "complexity": 3, + "lineno": 139, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "mask_to_rle", + "endline": 34, + "complexity": 1, + "lineno": 30, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "rle_to_mask", + "endline": 43, + "complexity": 1, + "lineno": 38, + "col_offset": 0, + "closures": [] + } + ], + "src\\supervision\\dataset\\formats\\coco.py": [ + { + "type": "function", + "rank": "B", + "name": "coco_annotations_to_detections", + "endline": 214, + "complexity": 9, + "lineno": 146, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "B", + "name": "coco_annotations_to_masks", + "endline": 143, + "complexity": 8, + "lineno": 97, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "B", + "name": "load_coco_annotations", + "endline": 527, + "complexity": 8, + "lineno": 423, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "B", + "name": "_build_coco_segmentation_from_raw_data", + "endline": 280, + "complexity": 7, + "lineno": 265, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "B", + "name": "_build_coco_segmentation_from_mask", + "endline": 262, + "complexity": 6, + "lineno": 218, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "detections_to_coco_annotations", + "endline": 381, + "complexity": 4, + "lineno": 283, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "save_coco_annotations", + "endline": 648, + "complexity": 4, + "lineno": 534, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "build_coco_class_index_mapping", + "endline": 45, + "complexity": 3, + "lineno": 37, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "group_coco_annotations_by_image_id", + "endline": 94, + "complexity": 3, + "lineno": 85, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "coco_categories_to_classes", + "endline": 33, + "complexity": 2, + "lineno": 30, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "classes_to_coco_categories", + "endline": 81, + "complexity": 2, + "lineno": 49, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "get_coco_class_index_mapping", + "endline": 420, + "complexity": 2, + "lineno": 384, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "_with_seg_mask", + "endline": 531, + "complexity": 1, + "lineno": 530, + "col_offset": 0, + "closures": [] + } + ], + "src\\supervision\\dataset\\formats\\pascal_voc.py": [ + { + "type": "function", + "rank": "C", + "name": "detections_from_xml_obj", + "endline": 332, + "complexity": 12, + "lineno": 235, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "B", + "name": "detections_to_pascal_voc", + "endline": 178, + "complexity": 6, + "lineno": 84, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "load_pascal_voc_annotations", + "endline": 232, + "complexity": 5, + "lineno": 181, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "parse_polygon_points", + "endline": 347, + "complexity": 4, + "lineno": 339, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "object_to_pascal_voc", + "endline": 81, + "complexity": 3, + "lineno": 19, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "_get_required_text", + "endline": 355, + "complexity": 3, + "lineno": 351, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "_with_poly_mask", + "endline": 336, + "complexity": 1, + "lineno": 335, + "col_offset": 0, + "closures": [] + } + ], + "src\\supervision\\dataset\\formats\\yolo.py": [ + { + "type": "function", + "rank": "C", + "name": "_extract_class_names", + "endline": 129, + "complexity": 14, + "lineno": 70, + "col_offset": 0, + "closures": [ + { + "type": "function", + "rank": "A", + "name": "_is_int_like", + "endline": 109, + "complexity": 4, + "lineno": 100, + "col_offset": 8, + "closures": [] + } + ] + }, + { + "type": "function", + "rank": "C", + "name": "detections_to_yolo_annotations", + "endline": 419, + "complexity": 13, + "lineno": 296, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "C", + "name": "yolo_annotations_to_detections", + "endline": 184, + "complexity": 11, + "lineno": 138, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "B", + "name": "load_yolo_annotations", + "endline": 271, + "complexity": 9, + "lineno": 187, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "object_to_yolo", + "endline": 293, + "complexity": 3, + "lineno": 274, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "_polygons_to_masks", + "endline": 62, + "complexity": 2, + "lineno": 51, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "_with_seg_mask", + "endline": 67, + "complexity": 2, + "lineno": 66, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "save_yolo_annotations", + "endline": 471, + "complexity": 2, + "lineno": 422, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "_parse_box", + "endline": 37, + "complexity": 1, + "lineno": 28, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "_box_to_polygon", + "endline": 43, + "complexity": 1, + "lineno": 41, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "_parse_polygon", + "endline": 48, + "complexity": 1, + "lineno": 47, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "_image_name_to_annotation_name", + "endline": 135, + "complexity": 1, + "lineno": 133, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "save_data_yaml", + "endline": 477, + "complexity": 1, + "lineno": 474, + "col_offset": 0, + "closures": [] + } + ], + "src\\supervision\\detection\\compact_mask.py": [ + { + "type": "function", + "rank": "C", + "name": "_rle_split_cols", + "endline": 125, + "complexity": 12, + "lineno": 49, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "B", + "name": "_rle_resize", + "endline": 330, + "complexity": 9, + "lineno": 249, + "col_offset": 0, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "__getitem__", + "endline": 861, + "complexity": 9, + "classname": "CompactMask", + "lineno": 795, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "with_offset", + "endline": 1185, + "complexity": 9, + "classname": "CompactMask", + "lineno": 1067, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "resize", + "endline": 1306, + "complexity": 9, + "classname": "CompactMask", + "lineno": 1192, + "col_offset": 4, + "closures": [] + }, + { + "type": "function", + "rank": "B", + "name": "_rle_join_cols", + "endline": 246, + "complexity": 7, + "lineno": 193, + "col_offset": 0, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "merge", + "endline": 982, + "complexity": 7, + "classname": "CompactMask", + "lineno": 924, + "col_offset": 4, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "_rle_scale_col", + "endline": 190, + "complexity": 5, + "lineno": 128, + "col_offset": 0, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "from_dense", + "endline": 549, + "complexity": 5, + "classname": "CompactMask", + "lineno": 476, + "col_offset": 4, + "closures": [] + }, + { + "type": "class", + "rank": "A", + "name": "CompactMask", + "endline": 1306, + "complexity": 4, + "lineno": 389, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 469, + "complexity": 1, + "classname": "CompactMask", + "lineno": 459, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "from_dense", + "endline": 549, + "complexity": 5, + "classname": "CompactMask", + "lineno": 476, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "to_dense", + "endline": 585, + "complexity": 2, + "classname": "CompactMask", + "lineno": 555, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "crop", + "endline": 614, + "complexity": 1, + "classname": "CompactMask", + "lineno": 587, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__len__", + "endline": 638, + "complexity": 1, + "classname": "CompactMask", + "lineno": 620, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__iter__", + "endline": 643, + "complexity": 2, + "classname": "CompactMask", + "lineno": 640, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "shape", + "endline": 665, + "complexity": 1, + "classname": "CompactMask", + "lineno": 646, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "offsets", + "endline": 687, + "complexity": 1, + "classname": "CompactMask", + "lineno": 668, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "bbox_xyxy", + "endline": 720, + "complexity": 2, + "classname": "CompactMask", + "lineno": 690, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "dtype", + "endline": 741, + "complexity": 1, + "classname": "CompactMask", + "lineno": 723, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "area", + "endline": 764, + "complexity": 2, + "classname": "CompactMask", + "lineno": 744, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "sum", + "endline": 793, + "complexity": 2, + "classname": "CompactMask", + "lineno": 766, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "__getitem__", + "endline": 861, + "complexity": 9, + "classname": "CompactMask", + "lineno": 795, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__array__", + "endline": 889, + "complexity": 2, + "classname": "CompactMask", + "lineno": 863, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__eq__", + "endline": 917, + "complexity": 3, + "classname": "CompactMask", + "lineno": 891, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "merge", + "endline": 982, + "complexity": 7, + "classname": "CompactMask", + "lineno": 924, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "repack", + "endline": 1060, + "complexity": 4, + "classname": "CompactMask", + "lineno": 984, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "with_offset", + "endline": 1185, + "complexity": 9, + "classname": "CompactMask", + "lineno": 1067, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "resize", + "endline": 1306, + "complexity": 9, + "classname": "CompactMask", + "lineno": 1192, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "name": "repack", + "endline": 1060, + "complexity": 4, + "classname": "CompactMask", + "lineno": 984, + "col_offset": 4, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "_resize_crop", + "endline": 386, + "complexity": 3, + "lineno": 341, + "col_offset": 0, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__eq__", + "endline": 917, + "complexity": 3, + "classname": "CompactMask", + "lineno": 891, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "to_dense", + "endline": 585, + "complexity": 2, + "classname": "CompactMask", + "lineno": 555, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__iter__", + "endline": 643, + "complexity": 2, + "classname": "CompactMask", + "lineno": 640, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "bbox_xyxy", + "endline": 720, + "complexity": 2, + "classname": "CompactMask", + "lineno": 690, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "area", + "endline": 764, + "complexity": 2, + "classname": "CompactMask", + "lineno": 744, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "sum", + "endline": 793, + "complexity": 2, + "classname": "CompactMask", + "lineno": 766, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__array__", + "endline": 889, + "complexity": 2, + "classname": "CompactMask", + "lineno": 863, + "col_offset": 4, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "_rle_area", + "endline": 46, + "complexity": 1, + "lineno": 27, + "col_offset": 0, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 469, + "complexity": 1, + "classname": "CompactMask", + "lineno": 459, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "crop", + "endline": 614, + "complexity": 1, + "classname": "CompactMask", + "lineno": 587, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__len__", + "endline": 638, + "complexity": 1, + "classname": "CompactMask", + "lineno": 620, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "shape", + "endline": 665, + "complexity": 1, + "classname": "CompactMask", + "lineno": 646, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "offsets", + "endline": 687, + "complexity": 1, + "classname": "CompactMask", + "lineno": 668, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "dtype", + "endline": 741, + "complexity": 1, + "classname": "CompactMask", + "lineno": 723, + "col_offset": 4, + "closures": [] + } + ], + "src\\supervision\\detection\\core.py": [ + { + "type": "method", + "rank": "C", + "name": "from_vlm", + "endline": 1928, + "complexity": 20, + "classname": "Detections", + "lineno": 1431, + "col_offset": 4, + "closures": [] + }, + { + "type": "function", + "rank": "C", + "name": "_merge_detection_group", + "endline": 2732, + "complexity": 15, + "lineno": 2648, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "C", + "name": "merge_inner_detection_object_pair", + "endline": 2825, + "complexity": 12, + "lineno": 2737, + "col_offset": 0, + "closures": [] + }, + { + "type": "method", + "rank": "C", + "name": "get_anchors_coordinates", + "endline": 2250, + "complexity": 12, + "classname": "Detections", + "lineno": 2187, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "C", + "name": "from_ultralytics", + "endline": 333, + "complexity": 11, + "classname": "Detections", + "lineno": 254, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "from_azure_analyze_image", + "endline": 896, + "complexity": 10, + "classname": "Detections", + "lineno": 813, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "with_nmm", + "endline": 2602, + "complexity": 9, + "classname": "Detections", + "lineno": 2510, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "merge", + "endline": 2184, + "complexity": 8, + "classname": "Detections", + "lineno": 2081, + "col_offset": 4, + "closures": [ + { + "type": "function", + "rank": "C", + "name": "stack_or_none", + "endline": 2165, + "complexity": 11, + "lineno": 2152, + "col_offset": 8, + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "B", + "name": "__getitem__", + "endline": 2298, + "complexity": 8, + "classname": "Detections", + "lineno": 2252, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "from_easyocr", + "endline": 1972, + "complexity": 7, + "classname": "Detections", + "lineno": 1931, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "with_nms", + "endline": 2508, + "complexity": 7, + "classname": "Detections", + "lineno": 2433, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "__iter__", + "endline": 203, + "complexity": 6, + "classname": "Detections", + "lineno": 180, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "from_transformers", + "endline": 567, + "complexity": 6, + "classname": "Detections", + "lineno": 492, + "col_offset": 4, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "merge_inner_detections_objects", + "endline": 2854, + "complexity": 5, + "lineno": 2830, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "_normalize_sam3_prediction", + "endline": 2910, + "complexity": 5, + "lineno": 2898, + "col_offset": 0, + "closures": [] + }, + { + "type": "class", + "rank": "A", + "name": "Detections", + "endline": 2602, + "complexity": 5, + "lineno": 68, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "__post_init__", + "endline": 171, + "complexity": 1, + "classname": "Detections", + "lineno": 164, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__len__", + "endline": 178, + "complexity": 1, + "classname": "Detections", + "lineno": 174, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "__iter__", + "endline": 203, + "complexity": 6, + "classname": "Detections", + "lineno": 180, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__eq__", + "endline": 217, + "complexity": 2, + "classname": "Detections", + "lineno": 206, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "from_yolov5", + "endline": 250, + "complexity": 1, + "classname": "Detections", + "lineno": 222, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "C", + "name": "from_ultralytics", + "endline": 333, + "complexity": 11, + "classname": "Detections", + "lineno": 254, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "from_yolo_nas", + "endline": 369, + "complexity": 2, + "classname": "Detections", + "lineno": 336, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "from_tensorflow", + "endline": 414, + "complexity": 1, + "classname": "Detections", + "lineno": 373, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "from_deepsparse", + "endline": 450, + "complexity": 2, + "classname": "Detections", + "lineno": 418, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "from_mmdetection", + "endline": 487, + "complexity": 2, + "classname": "Detections", + "lineno": 454, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "from_transformers", + "endline": 567, + "complexity": 6, + "classname": "Detections", + "lineno": 492, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "from_detectron2", + "endline": 616, + "complexity": 2, + "classname": "Detections", + "lineno": 573, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "from_inference", + "endline": 672, + "complexity": 4, + "classname": "Detections", + "lineno": 620, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "from_sam", + "endline": 715, + "complexity": 4, + "classname": "Detections", + "lineno": 676, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "from_sam3", + "endline": 809, + "complexity": 5, + "classname": "Detections", + "lineno": 718, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "from_azure_analyze_image", + "endline": 896, + "complexity": 10, + "classname": "Detections", + "lineno": 813, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "from_paddledet", + "endline": 938, + "complexity": 2, + "classname": "Detections", + "lineno": 900, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "from_lmm", + "endline": 1428, + "complexity": 5, + "classname": "Detections", + "lineno": 942, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "C", + "name": "from_vlm", + "endline": 1928, + "complexity": 20, + "classname": "Detections", + "lineno": 1431, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "from_easyocr", + "endline": 1972, + "complexity": 7, + "classname": "Detections", + "lineno": 1931, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "from_ncnn", + "endline": 2031, + "complexity": 3, + "classname": "Detections", + "lineno": 1977, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "empty", + "endline": 2053, + "complexity": 1, + "classname": "Detections", + "lineno": 2035, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "is_empty", + "endline": 2078, + "complexity": 1, + "classname": "Detections", + "lineno": 2056, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "merge", + "endline": 2184, + "complexity": 8, + "classname": "Detections", + "lineno": 2081, + "col_offset": 4, + "closures": [ + { + "type": "function", + "rank": "C", + "name": "stack_or_none", + "endline": 2165, + "complexity": 11, + "lineno": 2152, + "col_offset": 8, + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "C", + "name": "get_anchors_coordinates", + "endline": 2250, + "complexity": 12, + "classname": "Detections", + "lineno": 2187, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "__getitem__", + "endline": 2298, + "complexity": 8, + "classname": "Detections", + "lineno": 2252, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__setitem__", + "endline": 2334, + "complexity": 3, + "classname": "Detections", + "lineno": 2301, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "area", + "endline": 2382, + "complexity": 5, + "classname": "Detections", + "lineno": 2337, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "box_area", + "endline": 2394, + "complexity": 1, + "classname": "Detections", + "lineno": 2385, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "box_aspect_ratio", + "endline": 2431, + "complexity": 1, + "classname": "Detections", + "lineno": 2397, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "with_nms", + "endline": 2508, + "complexity": 7, + "classname": "Detections", + "lineno": 2433, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "with_nmm", + "endline": 2602, + "complexity": 9, + "classname": "Detections", + "lineno": 2510, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "name": "from_sam3", + "endline": 809, + "complexity": 5, + "classname": "Detections", + "lineno": 718, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "from_lmm", + "endline": 1428, + "complexity": 5, + "classname": "Detections", + "lineno": 942, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "area", + "endline": 2382, + "complexity": 5, + "classname": "Detections", + "lineno": 2337, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "from_inference", + "endline": 672, + "complexity": 4, + "classname": "Detections", + "lineno": 620, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "from_sam", + "endline": 715, + "complexity": 4, + "classname": "Detections", + "lineno": 676, + "col_offset": 4, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "_normalize_sam3_prompt_results", + "endline": 2887, + "complexity": 3, + "lineno": 2878, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "_validate_fields_both_defined_or_none", + "endline": 2947, + "complexity": 3, + "lineno": 2928, + "col_offset": 0, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "from_ncnn", + "endline": 2031, + "complexity": 3, + "classname": "Detections", + "lineno": 1977, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__setitem__", + "endline": 2334, + "complexity": 3, + "classname": "Detections", + "lineno": 2301, + "col_offset": 4, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "_get_sam3_value", + "endline": 2875, + "complexity": 2, + "lineno": 2872, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "_build_sam3_mask", + "endline": 2925, + "complexity": 2, + "lineno": 2913, + "col_offset": 0, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__eq__", + "endline": 217, + "complexity": 2, + "classname": "Detections", + "lineno": 206, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "from_yolo_nas", + "endline": 369, + "complexity": 2, + "classname": "Detections", + "lineno": 336, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "from_deepsparse", + "endline": 450, + "complexity": 2, + "classname": "Detections", + "lineno": 418, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "from_mmdetection", + "endline": 487, + "complexity": 2, + "classname": "Detections", + "lineno": 454, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "from_detectron2", + "endline": 616, + "complexity": 2, + "classname": "Detections", + "lineno": 573, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "from_paddledet", + "endline": 938, + "complexity": 2, + "classname": "Detections", + "lineno": 900, + "col_offset": 4, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "_merge_obb_corners", + "endline": 2645, + "complexity": 1, + "lineno": 2605, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "merge_inner_detections_objects_without_iou", + "endline": 2869, + "complexity": 1, + "lineno": 2858, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "_normalize_sam3_prompt_result", + "endline": 2895, + "complexity": 1, + "lineno": 2890, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "validate_fields_both_defined_or_none", + "endline": 2960, + "complexity": 1, + "lineno": 2957, + "col_offset": 0, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__post_init__", + "endline": 171, + "complexity": 1, + "classname": "Detections", + "lineno": 164, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__len__", + "endline": 178, + "complexity": 1, + "classname": "Detections", + "lineno": 174, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "from_yolov5", + "endline": 250, + "complexity": 1, + "classname": "Detections", + "lineno": 222, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "from_tensorflow", + "endline": 414, + "complexity": 1, + "classname": "Detections", + "lineno": 373, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "empty", + "endline": 2053, + "complexity": 1, + "classname": "Detections", + "lineno": 2035, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "is_empty", + "endline": 2078, + "complexity": 1, + "classname": "Detections", + "lineno": 2056, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "box_area", + "endline": 2394, + "complexity": 1, + "classname": "Detections", + "lineno": 2385, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "box_aspect_ratio", + "endline": 2431, + "complexity": 1, + "classname": "Detections", + "lineno": 2397, + "col_offset": 4, + "closures": [] + } + ], + "src\\supervision\\detection\\line_zone.py": [ + { + "type": "method", + "rank": "C", + "name": "trigger", + "endline": 264, + "complexity": 12, + "classname": "LineZone", + "lineno": 192, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "C", + "name": "annotate", + "endline": 944, + "complexity": 12, + "classname": "LineZoneAnnotatorMulticlass", + "lineno": 840, + "col_offset": 4, + "closures": [] + }, + { + "type": "class", + "rank": "B", + "name": "LineZoneAnnotatorMulticlass", + "endline": 944, + "complexity": 8, + "lineno": 772, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 837, + "complexity": 2, + "classname": "LineZoneAnnotatorMulticlass", + "lineno": 783, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "C", + "name": "annotate", + "endline": 944, + "complexity": 12, + "classname": "LineZoneAnnotatorMulticlass", + "lineno": 840, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "B", + "name": "_update_class_id_to_name", + "endline": 377, + "complexity": 6, + "classname": "LineZone", + "lineno": 357, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "annotate", + "endline": 507, + "complexity": 5, + "classname": "LineZoneAnnotator", + "lineno": 438, + "col_offset": 4, + "closures": [] + }, + { + "type": "class", + "rank": "A", + "name": "LineZone", + "endline": 377, + "complexity": 4, + "lineno": 73, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 174, + "complexity": 2, + "classname": "LineZone", + "lineno": 138, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "in_count", + "endline": 178, + "complexity": 1, + "classname": "LineZone", + "lineno": 177, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "out_count", + "endline": 182, + "complexity": 1, + "classname": "LineZone", + "lineno": 181, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "in_count_per_class", + "endline": 186, + "complexity": 1, + "classname": "LineZone", + "lineno": 185, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "out_count_per_class", + "endline": 190, + "complexity": 1, + "classname": "LineZone", + "lineno": 189, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "C", + "name": "trigger", + "endline": 264, + "complexity": 12, + "classname": "LineZone", + "lineno": 192, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_calculate_region_of_interest_limits", + "endline": 296, + "complexity": 2, + "classname": "LineZone", + "lineno": 267, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_compute_anchor_sides", + "endline": 355, + "complexity": 4, + "classname": "LineZone", + "lineno": 298, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "_update_class_id_to_name", + "endline": 377, + "complexity": 6, + "classname": "LineZone", + "lineno": 357, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "name": "_compute_anchor_sides", + "endline": 355, + "complexity": 4, + "classname": "LineZone", + "lineno": 298, + "col_offset": 4, + "closures": [] + }, + { + "type": "class", + "rank": "A", + "name": "LineZoneAnnotator", + "endline": 769, + "complexity": 4, + "lineno": 380, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 435, + "complexity": 3, + "classname": "LineZoneAnnotator", + "lineno": 381, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "annotate", + "endline": 507, + "complexity": 5, + "classname": "LineZoneAnnotator", + "lineno": 438, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_get_line_angle", + "endline": 532, + "complexity": 4, + "classname": "LineZoneAnnotator", + "lineno": 509, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_calculate_anchor_in_frame", + "endline": 596, + "complexity": 3, + "classname": "LineZoneAnnotator", + "lineno": 534, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_draw_basic_label", + "endline": 642, + "complexity": 3, + "classname": "LineZoneAnnotator", + "lineno": 598, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_draw_oriented_label", + "endline": 696, + "complexity": 2, + "classname": "LineZoneAnnotator", + "lineno": 644, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_make_label_image", + "endline": 769, + "complexity": 4, + "classname": "LineZoneAnnotator", + "lineno": 700, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "name": "_get_line_angle", + "endline": 532, + "complexity": 4, + "classname": "LineZoneAnnotator", + "lineno": 509, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_make_label_image", + "endline": 769, + "complexity": 4, + "classname": "LineZoneAnnotator", + "lineno": 700, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 435, + "complexity": 3, + "classname": "LineZoneAnnotator", + "lineno": 381, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_calculate_anchor_in_frame", + "endline": 596, + "complexity": 3, + "classname": "LineZoneAnnotator", + "lineno": 534, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_draw_basic_label", + "endline": 642, + "complexity": 3, + "classname": "LineZoneAnnotator", + "lineno": 598, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 174, + "complexity": 2, + "classname": "LineZone", + "lineno": 138, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_calculate_region_of_interest_limits", + "endline": 296, + "complexity": 2, + "classname": "LineZone", + "lineno": 267, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_draw_oriented_label", + "endline": 696, + "complexity": 2, + "classname": "LineZoneAnnotator", + "lineno": 644, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 837, + "complexity": 2, + "classname": "LineZoneAnnotatorMulticlass", + "lineno": 783, + "col_offset": 4, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "_multiclass_config_property", + "endline": 70, + "complexity": 1, + "lineno": 63, + "col_offset": 0, + "closures": [ + { + "type": "function", + "rank": "A", + "name": "getter", + "endline": 65, + "complexity": 1, + "lineno": 64, + "col_offset": 4, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "setter", + "endline": 68, + "complexity": 1, + "lineno": 67, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "class", + "rank": "A", + "name": "LineZoneAnnotatorConfig", + "endline": 42, + "complexity": 1, + "lineno": 28, + "col_offset": 0, + "methods": [] + }, + { + "type": "class", + "rank": "A", + "name": "LineZoneAnnotatorMulticlassConfig", + "endline": 60, + "complexity": 1, + "lineno": 46, + "col_offset": 0, + "methods": [] + }, + { + "type": "method", + "rank": "A", + "name": "in_count", + "endline": 178, + "complexity": 1, + "classname": "LineZone", + "lineno": 177, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "out_count", + "endline": 182, + "complexity": 1, + "classname": "LineZone", + "lineno": 181, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "in_count_per_class", + "endline": 186, + "complexity": 1, + "classname": "LineZone", + "lineno": 185, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "out_count_per_class", + "endline": 190, + "complexity": 1, + "classname": "LineZone", + "lineno": 189, + "col_offset": 4, + "closures": [] + } + ], + "src\\supervision\\detection\\vlm.py": [ + { + "type": "function", + "rank": "C", + "name": "from_qwen_2_5_vl", + "endline": 394, + "complexity": 16, + "lineno": 305, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "C", + "name": "from_florence_2", + "endline": 588, + "complexity": 15, + "lineno": 495, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "B", + "name": "from_google_gemini_2_0", + "endline": 837, + "complexity": 10, + "lineno": 764, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "B", + "name": "_validate_vlm_parameters", + "endline": 203, + "complexity": 9, + "lineno": 163, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "B", + "name": "from_deepseek_vl_2", + "endline": 492, + "complexity": 9, + "lineno": 424, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "B", + "name": "from_moondream", + "endline": 984, + "complexity": 9, + "lineno": 923, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "B", + "name": "_collect_gemini_2_5_items", + "endline": 690, + "complexity": 7, + "lineno": 652, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "B", + "name": "from_paligemma", + "endline": 257, + "complexity": 6, + "lineno": 215, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "B", + "name": "recover_truncated_qwen_2_5_vl_response", + "endline": 302, + "complexity": 6, + "lineno": 260, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "B", + "name": "_parse_gemini_2_5_item", + "endline": 649, + "complexity": 6, + "lineno": 621, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "B", + "name": "_decode_mask_for_item", + "endline": 761, + "complexity": 6, + "lineno": 728, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "B", + "name": "from_google_gemini_2_5", + "endline": 920, + "complexity": 6, + "lineno": 840, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "_extract_json_from_backticks", + "endline": 602, + "complexity": 5, + "lineno": 591, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "_filter_gemini_2_5_results", + "endline": 717, + "complexity": 5, + "lineno": 693, + "col_offset": 0, + "closures": [] + }, + { + "type": "class", + "rank": "A", + "name": "LMM", + "endline": 69, + "complexity": 4, + "lineno": 22, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "list", + "endline": 51, + "complexity": 2, + "classname": "LMM", + "lineno": 50, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "from_value", + "endline": 69, + "complexity": 4, + "classname": "LMM", + "lineno": 54, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "name": "from_value", + "endline": 69, + "complexity": 4, + "classname": "LMM", + "lineno": 54, + "col_offset": 4, + "closures": [] + }, + { + "type": "class", + "rank": "A", + "name": "VLM", + "endline": 112, + "complexity": 4, + "lineno": 73, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "list", + "endline": 98, + "complexity": 2, + "classname": "VLM", + "lineno": 97, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "from_value", + "endline": 112, + "complexity": 4, + "classname": "VLM", + "lineno": 101, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "name": "from_value", + "endline": 112, + "complexity": 4, + "classname": "VLM", + "lineno": 101, + "col_offset": 4, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "_build_gemini_2_5_class_id", + "endline": 725, + "complexity": 3, + "lineno": 720, + "col_offset": 0, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "list", + "endline": 51, + "complexity": 2, + "classname": "LMM", + "lineno": 50, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "list", + "endline": 98, + "complexity": 2, + "classname": "VLM", + "lineno": 97, + "col_offset": 4, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "validate_vlm_parameters", + "endline": 212, + "complexity": 1, + "lineno": 211, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "from_qwen_3_vl", + "endline": 420, + "complexity": 1, + "lineno": 397, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "_build_empty_gemini_2_5_result", + "endline": 617, + "complexity": 1, + "lineno": 605, + "col_offset": 0, + "closures": [] + } + ], + "src\\supervision\\detection\\tools\\csv_sink.py": [ + { + "type": "method", + "rank": "B", + "name": "parse_detection_data", + "endline": 194, + "complexity": 9, + "classname": "CSVSink", + "lineno": 145, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "append", + "endline": 230, + "complexity": 6, + "classname": "CSVSink", + "lineno": 196, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_slice_value", + "endline": 142, + "complexity": 5, + "classname": "CSVSink", + "lineno": 119, + "col_offset": 4, + "closures": [] + }, + { + "type": "class", + "rank": "A", + "name": "CSVSink", + "endline": 241, + "complexity": 4, + "lineno": 31, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 86, + "complexity": 1, + "classname": "CSVSink", + "lineno": 75, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__enter__", + "endline": 90, + "complexity": 1, + "classname": "CSVSink", + "lineno": 88, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__exit__", + "endline": 98, + "complexity": 1, + "classname": "CSVSink", + "lineno": 92, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "open", + "endline": 109, + "complexity": 3, + "classname": "CSVSink", + "lineno": 100, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "close", + "endline": 116, + "complexity": 2, + "classname": "CSVSink", + "lineno": 111, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_slice_value", + "endline": 142, + "complexity": 5, + "classname": "CSVSink", + "lineno": 119, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "parse_detection_data", + "endline": 194, + "complexity": 9, + "classname": "CSVSink", + "lineno": 145, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "append", + "endline": 230, + "complexity": 6, + "classname": "CSVSink", + "lineno": 196, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "parse_field_names", + "endline": 241, + "complexity": 2, + "classname": "CSVSink", + "lineno": 234, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "name": "open", + "endline": 109, + "complexity": 3, + "classname": "CSVSink", + "lineno": 100, + "col_offset": 4, + "closures": [] + }, + { + "type": "class", + "rank": "A", + "name": "WriterProtocol", + "endline": 28, + "complexity": 2, + "lineno": 27, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "writerow", + "endline": 28, + "complexity": 1, + "classname": "WriterProtocol", + "lineno": 28, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "name": "close", + "endline": 116, + "complexity": 2, + "classname": "CSVSink", + "lineno": 111, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "parse_field_names", + "endline": 241, + "complexity": 2, + "classname": "CSVSink", + "lineno": 234, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "writerow", + "endline": 28, + "complexity": 1, + "classname": "WriterProtocol", + "lineno": 28, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 86, + "complexity": 1, + "classname": "CSVSink", + "lineno": 75, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__enter__", + "endline": 90, + "complexity": 1, + "classname": "CSVSink", + "lineno": 88, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__exit__", + "endline": 98, + "complexity": 1, + "classname": "CSVSink", + "lineno": 92, + "col_offset": 4, + "closures": [] + } + ], + "src\\supervision\\detection\\tools\\inference_slicer.py": [ + { + "type": "method", + "rank": "C", + "name": "_run_callback", + "endline": 503, + "complexity": 12, + "classname": "InferenceSlicer", + "lineno": 443, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "C", + "name": "_collect_detections", + "endline": 360, + "complexity": 11, + "classname": "InferenceSlicer", + "lineno": 302, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "_normalize_slice_wh", + "endline": 527, + "complexity": 7, + "classname": "InferenceSlicer", + "lineno": 506, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "_normalize_overlap_wh", + "endline": 553, + "complexity": 7, + "classname": "InferenceSlicer", + "lineno": 531, + "col_offset": 4, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "move_detections", + "endline": 82, + "complexity": 5, + "lineno": 44, + "col_offset": 0, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_validate_overlap", + "endline": 638, + "complexity": 5, + "classname": "InferenceSlicer", + "lineno": 621, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_probe_remaining_offsets", + "endline": 384, + "complexity": 4, + "classname": "InferenceSlicer", + "lineno": 362, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_warn_obb_sequential_fallback", + "endline": 420, + "complexity": 4, + "classname": "InferenceSlicer", + "lineno": 405, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_apply_overlap_filter", + "endline": 441, + "complexity": 4, + "classname": "InferenceSlicer", + "lineno": 423, + "col_offset": 4, + "closures": [] + }, + { + "type": "class", + "rank": "A", + "name": "InferenceSlicer", + "endline": 638, + "complexity": 3, + "lineno": 85, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 198, + "complexity": 2, + "classname": "InferenceSlicer", + "lineno": 166, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "callback", + "endline": 202, + "complexity": 1, + "classname": "InferenceSlicer", + "lineno": 201, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "callback", + "endline": 206, + "complexity": 1, + "classname": "InferenceSlicer", + "lineno": 205, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "slice_wh", + "endline": 210, + "complexity": 1, + "classname": "InferenceSlicer", + "lineno": 209, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "slice_wh", + "endline": 215, + "complexity": 1, + "classname": "InferenceSlicer", + "lineno": 213, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "overlap_wh", + "endline": 219, + "complexity": 1, + "classname": "InferenceSlicer", + "lineno": 218, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "overlap_wh", + "endline": 224, + "complexity": 1, + "classname": "InferenceSlicer", + "lineno": 222, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "iou_threshold", + "endline": 228, + "complexity": 1, + "classname": "InferenceSlicer", + "lineno": 227, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "iou_threshold", + "endline": 232, + "complexity": 1, + "classname": "InferenceSlicer", + "lineno": 231, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "overlap_metric", + "endline": 236, + "complexity": 1, + "classname": "InferenceSlicer", + "lineno": 235, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "overlap_metric", + "endline": 240, + "complexity": 1, + "classname": "InferenceSlicer", + "lineno": 239, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "overlap_filter", + "endline": 244, + "complexity": 1, + "classname": "InferenceSlicer", + "lineno": 243, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "overlap_filter", + "endline": 248, + "complexity": 1, + "classname": "InferenceSlicer", + "lineno": 247, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "thread_workers", + "endline": 252, + "complexity": 1, + "classname": "InferenceSlicer", + "lineno": 251, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "thread_workers", + "endline": 261, + "complexity": 2, + "classname": "InferenceSlicer", + "lineno": 255, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "compact_masks", + "endline": 265, + "complexity": 1, + "classname": "InferenceSlicer", + "lineno": 264, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "compact_masks", + "endline": 269, + "complexity": 1, + "classname": "InferenceSlicer", + "lineno": 268, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__call__", + "endline": 300, + "complexity": 1, + "classname": "InferenceSlicer", + "lineno": 271, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "C", + "name": "_collect_detections", + "endline": 360, + "complexity": 11, + "classname": "InferenceSlicer", + "lineno": 302, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_probe_remaining_offsets", + "endline": 384, + "complexity": 4, + "classname": "InferenceSlicer", + "lineno": 362, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_run_sequential_inference", + "endline": 391, + "complexity": 2, + "classname": "InferenceSlicer", + "lineno": 386, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_run_parallel_inference", + "endline": 403, + "complexity": 3, + "classname": "InferenceSlicer", + "lineno": 393, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_warn_obb_sequential_fallback", + "endline": 420, + "complexity": 4, + "classname": "InferenceSlicer", + "lineno": 405, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_apply_overlap_filter", + "endline": 441, + "complexity": 4, + "classname": "InferenceSlicer", + "lineno": 423, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "C", + "name": "_run_callback", + "endline": 503, + "complexity": 12, + "classname": "InferenceSlicer", + "lineno": 443, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "_normalize_slice_wh", + "endline": 527, + "complexity": 7, + "classname": "InferenceSlicer", + "lineno": 506, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "_normalize_overlap_wh", + "endline": 553, + "complexity": 7, + "classname": "InferenceSlicer", + "lineno": 531, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_generate_offset", + "endline": 618, + "complexity": 1, + "classname": "InferenceSlicer", + "lineno": 557, + "col_offset": 4, + "closures": [ + { + "type": "function", + "rank": "A", + "name": "_compute_axis_starts", + "endline": 596, + "complexity": 5, + "lineno": 581, + "col_offset": 8, + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "name": "_validate_overlap", + "endline": 638, + "complexity": 5, + "classname": "InferenceSlicer", + "lineno": 621, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "name": "_run_parallel_inference", + "endline": 403, + "complexity": 3, + "classname": "InferenceSlicer", + "lineno": 393, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 198, + "complexity": 2, + "classname": "InferenceSlicer", + "lineno": 166, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "thread_workers", + "endline": 261, + "complexity": 2, + "classname": "InferenceSlicer", + "lineno": 255, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_run_sequential_inference", + "endline": 391, + "complexity": 2, + "classname": "InferenceSlicer", + "lineno": 386, + "col_offset": 4, + "closures": [] + }, + { + "type": "class", + "rank": "A", + "name": "_InferenceSlicerConfig", + "endline": 33, + "complexity": 1, + "lineno": 25, + "col_offset": 0, + "methods": [] + }, + { + "type": "class", + "rank": "A", + "name": "_InferenceSlicerState", + "endline": 41, + "complexity": 1, + "lineno": 37, + "col_offset": 0, + "methods": [] + }, + { + "type": "method", + "rank": "A", + "name": "callback", + "endline": 202, + "complexity": 1, + "classname": "InferenceSlicer", + "lineno": 201, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "callback", + "endline": 206, + "complexity": 1, + "classname": "InferenceSlicer", + "lineno": 205, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "slice_wh", + "endline": 210, + "complexity": 1, + "classname": "InferenceSlicer", + "lineno": 209, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "slice_wh", + "endline": 215, + "complexity": 1, + "classname": "InferenceSlicer", + "lineno": 213, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "overlap_wh", + "endline": 219, + "complexity": 1, + "classname": "InferenceSlicer", + "lineno": 218, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "overlap_wh", + "endline": 224, + "complexity": 1, + "classname": "InferenceSlicer", + "lineno": 222, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "iou_threshold", + "endline": 228, + "complexity": 1, + "classname": "InferenceSlicer", + "lineno": 227, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "iou_threshold", + "endline": 232, + "complexity": 1, + "classname": "InferenceSlicer", + "lineno": 231, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "overlap_metric", + "endline": 236, + "complexity": 1, + "classname": "InferenceSlicer", + "lineno": 235, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "overlap_metric", + "endline": 240, + "complexity": 1, + "classname": "InferenceSlicer", + "lineno": 239, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "overlap_filter", + "endline": 244, + "complexity": 1, + "classname": "InferenceSlicer", + "lineno": 243, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "overlap_filter", + "endline": 248, + "complexity": 1, + "classname": "InferenceSlicer", + "lineno": 247, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "thread_workers", + "endline": 252, + "complexity": 1, + "classname": "InferenceSlicer", + "lineno": 251, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "compact_masks", + "endline": 265, + "complexity": 1, + "classname": "InferenceSlicer", + "lineno": 264, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "compact_masks", + "endline": 269, + "complexity": 1, + "classname": "InferenceSlicer", + "lineno": 268, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__call__", + "endline": 300, + "complexity": 1, + "classname": "InferenceSlicer", + "lineno": 271, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_generate_offset", + "endline": 618, + "complexity": 1, + "classname": "InferenceSlicer", + "lineno": 557, + "col_offset": 4, + "closures": [ + { + "type": "function", + "rank": "A", + "name": "_compute_axis_starts", + "endline": 596, + "complexity": 5, + "lineno": 581, + "col_offset": 8, + "closures": [] + } + ] + } + ], + "src\\supervision\\detection\\tools\\json_sink.py": [ + { + "type": "method", + "rank": "B", + "name": "parse_detection_data", + "endline": 198, + "complexity": 10, + "classname": "JSONSink", + "lineno": 148, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_slice_value", + "endline": 145, + "complexity": 5, + "classname": "JSONSink", + "lineno": 122, + "col_offset": 4, + "closures": [] + }, + { + "type": "class", + "rank": "A", + "name": "JSONSink", + "endline": 215, + "complexity": 4, + "lineno": 13, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 60, + "complexity": 1, + "classname": "JSONSink", + "lineno": 51, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__enter__", + "endline": 64, + "complexity": 1, + "classname": "JSONSink", + "lineno": 62, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__exit__", + "endline": 72, + "complexity": 1, + "classname": "JSONSink", + "lineno": 66, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "open", + "endline": 82, + "complexity": 3, + "classname": "JSONSink", + "lineno": 74, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_json_default", + "endline": 106, + "complexity": 3, + "classname": "JSONSink", + "lineno": 85, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "write_and_close", + "endline": 119, + "complexity": 2, + "classname": "JSONSink", + "lineno": 109, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_slice_value", + "endline": 145, + "complexity": 5, + "classname": "JSONSink", + "lineno": 122, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "parse_detection_data", + "endline": 198, + "complexity": 10, + "classname": "JSONSink", + "lineno": 148, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "append", + "endline": 215, + "complexity": 1, + "classname": "JSONSink", + "lineno": 200, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "name": "open", + "endline": 82, + "complexity": 3, + "classname": "JSONSink", + "lineno": 74, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_json_default", + "endline": 106, + "complexity": 3, + "classname": "JSONSink", + "lineno": 85, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "write_and_close", + "endline": 119, + "complexity": 2, + "classname": "JSONSink", + "lineno": 109, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 60, + "complexity": 1, + "classname": "JSONSink", + "lineno": 51, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__enter__", + "endline": 64, + "complexity": 1, + "classname": "JSONSink", + "lineno": 62, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__exit__", + "endline": 72, + "complexity": 1, + "classname": "JSONSink", + "lineno": 66, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "append", + "endline": 215, + "complexity": 1, + "classname": "JSONSink", + "lineno": 200, + "col_offset": 4, + "closures": [] + } + ], + "src\\supervision\\detection\\tools\\polygon_zone.py": [ + { + "type": "class", + "rank": "A", + "name": "PolygonZone", + "endline": 123, + "complexity": 4, + "lineno": 33, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 85, + "complexity": 2, + "classname": "PolygonZone", + "lineno": 71, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "trigger", + "endline": 123, + "complexity": 3, + "classname": "PolygonZone", + "lineno": 88, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "name": "annotate", + "endline": 290, + "complexity": 4, + "classname": "PolygonZoneAnnotator", + "lineno": 242, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "trigger", + "endline": 123, + "complexity": 3, + "classname": "PolygonZone", + "lineno": 88, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 85, + "complexity": 2, + "classname": "PolygonZone", + "lineno": 71, + "col_offset": 4, + "closures": [] + }, + { + "type": "class", + "rank": "A", + "name": "PolygonZoneAnnotator", + "endline": 290, + "complexity": 2, + "lineno": 126, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 167, + "complexity": 1, + "classname": "PolygonZoneAnnotator", + "lineno": 146, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "color", + "endline": 172, + "complexity": 1, + "classname": "PolygonZoneAnnotator", + "lineno": 171, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "color", + "endline": 176, + "complexity": 1, + "classname": "PolygonZoneAnnotator", + "lineno": 175, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "thickness", + "endline": 180, + "complexity": 1, + "classname": "PolygonZoneAnnotator", + "lineno": 179, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "thickness", + "endline": 184, + "complexity": 1, + "classname": "PolygonZoneAnnotator", + "lineno": 183, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "text_color", + "endline": 188, + "complexity": 1, + "classname": "PolygonZoneAnnotator", + "lineno": 187, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "text_color", + "endline": 192, + "complexity": 1, + "classname": "PolygonZoneAnnotator", + "lineno": 191, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "text_scale", + "endline": 196, + "complexity": 1, + "classname": "PolygonZoneAnnotator", + "lineno": 195, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "text_scale", + "endline": 200, + "complexity": 1, + "classname": "PolygonZoneAnnotator", + "lineno": 199, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "text_thickness", + "endline": 204, + "complexity": 1, + "classname": "PolygonZoneAnnotator", + "lineno": 203, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "text_thickness", + "endline": 208, + "complexity": 1, + "classname": "PolygonZoneAnnotator", + "lineno": 207, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "text_padding", + "endline": 212, + "complexity": 1, + "classname": "PolygonZoneAnnotator", + "lineno": 211, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "text_padding", + "endline": 216, + "complexity": 1, + "classname": "PolygonZoneAnnotator", + "lineno": 215, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "display_in_zone_count", + "endline": 220, + "complexity": 1, + "classname": "PolygonZoneAnnotator", + "lineno": 219, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "display_in_zone_count", + "endline": 224, + "complexity": 1, + "classname": "PolygonZoneAnnotator", + "lineno": 223, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "opacity", + "endline": 228, + "complexity": 1, + "classname": "PolygonZoneAnnotator", + "lineno": 227, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "opacity", + "endline": 232, + "complexity": 1, + "classname": "PolygonZoneAnnotator", + "lineno": 231, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "font", + "endline": 236, + "complexity": 1, + "classname": "PolygonZoneAnnotator", + "lineno": 235, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "center", + "endline": 240, + "complexity": 1, + "classname": "PolygonZoneAnnotator", + "lineno": 239, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "annotate", + "endline": 290, + "complexity": 4, + "classname": "PolygonZoneAnnotator", + "lineno": 242, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "class", + "rank": "A", + "name": "_PolygonZoneAnnotatorConfig", + "endline": 30, + "complexity": 1, + "lineno": 22, + "col_offset": 0, + "methods": [] + }, + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 167, + "complexity": 1, + "classname": "PolygonZoneAnnotator", + "lineno": 146, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "color", + "endline": 172, + "complexity": 1, + "classname": "PolygonZoneAnnotator", + "lineno": 171, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "color", + "endline": 176, + "complexity": 1, + "classname": "PolygonZoneAnnotator", + "lineno": 175, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "thickness", + "endline": 180, + "complexity": 1, + "classname": "PolygonZoneAnnotator", + "lineno": 179, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "thickness", + "endline": 184, + "complexity": 1, + "classname": "PolygonZoneAnnotator", + "lineno": 183, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "text_color", + "endline": 188, + "complexity": 1, + "classname": "PolygonZoneAnnotator", + "lineno": 187, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "text_color", + "endline": 192, + "complexity": 1, + "classname": "PolygonZoneAnnotator", + "lineno": 191, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "text_scale", + "endline": 196, + "complexity": 1, + "classname": "PolygonZoneAnnotator", + "lineno": 195, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "text_scale", + "endline": 200, + "complexity": 1, + "classname": "PolygonZoneAnnotator", + "lineno": 199, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "text_thickness", + "endline": 204, + "complexity": 1, + "classname": "PolygonZoneAnnotator", + "lineno": 203, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "text_thickness", + "endline": 208, + "complexity": 1, + "classname": "PolygonZoneAnnotator", + "lineno": 207, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "text_padding", + "endline": 212, + "complexity": 1, + "classname": "PolygonZoneAnnotator", + "lineno": 211, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "text_padding", + "endline": 216, + "complexity": 1, + "classname": "PolygonZoneAnnotator", + "lineno": 215, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "display_in_zone_count", + "endline": 220, + "complexity": 1, + "classname": "PolygonZoneAnnotator", + "lineno": 219, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "display_in_zone_count", + "endline": 224, + "complexity": 1, + "classname": "PolygonZoneAnnotator", + "lineno": 223, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "opacity", + "endline": 228, + "complexity": 1, + "classname": "PolygonZoneAnnotator", + "lineno": 227, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "opacity", + "endline": 232, + "complexity": 1, + "classname": "PolygonZoneAnnotator", + "lineno": 231, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "font", + "endline": 236, + "complexity": 1, + "classname": "PolygonZoneAnnotator", + "lineno": 235, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "center", + "endline": 240, + "complexity": 1, + "classname": "PolygonZoneAnnotator", + "lineno": 239, + "col_offset": 4, + "closures": [] + } + ], + "src\\supervision\\detection\\tools\\smoother.py": [ + { + "type": "method", + "rank": "B", + "name": "get_track", + "endline": 164, + "complexity": 9, + "classname": "DetectionsSmoother", + "lineno": 133, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "update_with_detections", + "endline": 131, + "complexity": 8, + "classname": "DetectionsSmoother", + "lineno": 100, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "get_smoothed_detections", + "endline": 184, + "complexity": 8, + "classname": "DetectionsSmoother", + "lineno": 166, + "col_offset": 4, + "closures": [] + }, + { + "type": "class", + "rank": "B", + "name": "DetectionsSmoother", + "endline": 184, + "complexity": 7, + "lineno": 14, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 97, + "complexity": 1, + "classname": "DetectionsSmoother", + "lineno": 90, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "update_with_detections", + "endline": 131, + "complexity": 8, + "classname": "DetectionsSmoother", + "lineno": 100, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "get_track", + "endline": 164, + "complexity": 9, + "classname": "DetectionsSmoother", + "lineno": 133, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "get_smoothed_detections", + "endline": 184, + "complexity": 8, + "classname": "DetectionsSmoother", + "lineno": 166, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 97, + "complexity": 1, + "classname": "DetectionsSmoother", + "lineno": 90, + "col_offset": 4, + "closures": [] + } + ], + "src\\supervision\\detection\\tools\\transformers.py": [ + { + "type": "function", + "rank": "A", + "name": "process_transformers_v4_segmentation_result", + "endline": 78, + "complexity": 5, + "lineno": 43, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "process_transformers_v5_semantic_or_instance_segmentation_result", + "endline": 144, + "complexity": 4, + "lineno": 112, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "append_class_names_to_data", + "endline": 250, + "complexity": 4, + "lineno": 224, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "process_transformers_v4_panoptic_segmentation_result", + "endline": 178, + "complexity": 3, + "lineno": 148, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "process_transformers_v5_segmentation_result", + "endline": 108, + "complexity": 2, + "lineno": 82, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "process_transformers_v5_panoptic_segmentation_result", + "endline": 204, + "complexity": 2, + "lineno": 182, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "process_transformers_detection_result", + "endline": 39, + "complexity": 1, + "lineno": 14, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "png_string_to_segmentation_array", + "endline": 221, + "complexity": 1, + "lineno": 207, + "col_offset": 0, + "closures": [] + } + ], + "src\\supervision\\detection\\utils\\boxes.py": [ + { + "type": "function", + "rank": "A", + "name": "spread_out_boxes", + "endline": 417, + "complexity": 4, + "lineno": 347, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "obb_polygon_area", + "endline": 269, + "complexity": 3, + "lineno": 244, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "xyxyxyxy_to_xyxy", + "endline": 309, + "complexity": 3, + "lineno": 272, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "pad_boxes", + "endline": 96, + "complexity": 2, + "lineno": 52, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "clip_boxes", + "endline": 49, + "complexity": 1, + "lineno": 10, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "denormalize_boxes", + "endline": 161, + "complexity": 1, + "lineno": 105, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "move_boxes", + "endline": 192, + "complexity": 1, + "lineno": 164, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "move_oriented_boxes", + "endline": 241, + "complexity": 1, + "lineno": 195, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "scale_boxes", + "endline": 344, + "complexity": 1, + "lineno": 312, + "col_offset": 0, + "closures": [] + } + ], + "src\\supervision\\detection\\utils\\converters.py": [ + { + "type": "function", + "rank": "B", + "name": "_base48_decode", + "endline": 379, + "complexity": 6, + "lineno": 332, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "_base48_encode", + "endline": 415, + "complexity": 5, + "lineno": 382, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "rle_to_mask", + "endline": 646, + "complexity": 5, + "lineno": 575, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "xyxy_to_mask", + "endline": 304, + "complexity": 4, + "lineno": 248, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "mask_to_rle", + "endline": 721, + "complexity": 4, + "lineno": 649, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "mask_to_polygons", + "endline": 328, + "complexity": 3, + "lineno": 307, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "_mask_to_rle_counts", + "endline": 535, + "complexity": 3, + "lineno": 497, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "xyxy_to_xcycarh", + "endline": 199, + "complexity": 2, + "lineno": 155, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "mask_to_xyxy", + "endline": 245, + "complexity": 2, + "lineno": 202, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "_delta_decode", + "endline": 442, + "complexity": 2, + "lineno": 418, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "_delta_encode", + "endline": 468, + "complexity": 2, + "lineno": 445, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "_rle_counts_to_mask", + "endline": 571, + "complexity": 2, + "lineno": 538, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "xyxy_to_polygons", + "endline": 28, + "complexity": 1, + "lineno": 12, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "polygon_to_mask", + "endline": 49, + "complexity": 1, + "lineno": 31, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "xywh_to_xyxy", + "endline": 82, + "complexity": 1, + "lineno": 52, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "xyxy_to_xywh", + "endline": 116, + "complexity": 1, + "lineno": 85, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "xcycwh_to_xyxy", + "endline": 152, + "complexity": 1, + "lineno": 119, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "is_compressed_rle", + "endline": 494, + "complexity": 1, + "lineno": 471, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "polygon_to_xyxy", + "endline": 738, + "complexity": 1, + "lineno": 724, + "col_offset": 0, + "closures": [] + } + ], + "src\\supervision\\detection\\utils\\internal.py": [ + { + "type": "function", + "rank": "C", + "name": "process_roboflow_result", + "endline": 195, + "complexity": 15, + "lineno": 81, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "C", + "name": "merge_metadata", + "endline": 367, + "complexity": 14, + "lineno": 316, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "C", + "name": "get_data_item", + "endline": 407, + "complexity": 13, + "lineno": 370, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "B", + "name": "_merge_data_values", + "endline": 275, + "complexity": 7, + "lineno": 259, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "B", + "name": "_decode_rle_mask", + "endline": 78, + "complexity": 6, + "lineno": 54, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "extract_ultralytics_masks", + "endline": 51, + "complexity": 5, + "lineno": 18, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "is_metadata_equal", + "endline": 234, + "complexity": 5, + "lineno": 217, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "_validate_data_list_keys", + "endline": 245, + "complexity": 4, + "lineno": 238, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "_validate_data_value_lengths", + "endline": 255, + "complexity": 4, + "lineno": 248, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "merge_data", + "endline": 313, + "complexity": 4, + "lineno": 280, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "is_data_equal", + "endline": 213, + "complexity": 3, + "lineno": 199, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "cross_product", + "endline": 430, + "complexity": 1, + "lineno": 410, + "col_offset": 0, + "closures": [] + } + ], + "src\\supervision\\detection\\utils\\iou_and_nms.py": [ + { + "type": "function", + "rank": "C", + "name": "mask_iou_batch", + "endline": 837, + "complexity": 14, + "lineno": 744, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "C", + "name": "oriented_box_iou_batch", + "endline": 574, + "complexity": 12, + "lineno": 456, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "C", + "name": "oriented_box_non_max_suppression", + "endline": 1338, + "complexity": 12, + "lineno": 1246, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "C", + "name": "oriented_box_non_max_merge", + "endline": 1461, + "complexity": 12, + "lineno": 1366, + "col_offset": 0, + "closures": [ + { + "type": "function", + "rank": "A", + "name": "group_within", + "endline": 1458, + "complexity": 1, + "lineno": 1453, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "function", + "rank": "B", + "name": "compact_mask_iou_batch", + "endline": 677, + "complexity": 10, + "lineno": 577, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "B", + "name": "mask_non_max_merge", + "endline": 1110, + "complexity": 7, + "lineno": 1038, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "B", + "name": "_non_max_merge_per_category", + "endline": 1174, + "complexity": 7, + "lineno": 1144, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "B", + "name": "box_iou_batch_with_jaccard", + "endline": 360, + "complexity": 6, + "lineno": 304, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "B", + "name": "_validate_oriented_box_batch", + "endline": 440, + "complexity": 6, + "lineno": 426, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "box_iou_batch", + "endline": 261, + "complexity": 5, + "lineno": 162, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "mask_non_max_suppression", + "endline": 904, + "complexity": 5, + "lineno": 840, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "_group_overlapping_masks", + "endline": 1035, + "complexity": 5, + "lineno": 981, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "box_iou", + "endline": 159, + "complexity": 4, + "lineno": 90, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "_mask_iou_batch_split", + "endline": 741, + "complexity": 4, + "lineno": 680, + "col_offset": 0, + "closures": [] + }, + { + "type": "class", + "rank": "A", + "name": "OverlapFilter", + "endline": 50, + "complexity": 4, + "lineno": 16, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "list", + "endline": 36, + "complexity": 1, + "classname": "OverlapFilter", + "lineno": 35, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "from_value", + "endline": 50, + "complexity": 4, + "classname": "OverlapFilter", + "lineno": 39, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "name": "from_value", + "endline": 50, + "complexity": 4, + "classname": "OverlapFilter", + "lineno": 39, + "col_offset": 4, + "closures": [] + }, + { + "type": "class", + "rank": "A", + "name": "OverlapMetric", + "endline": 86, + "complexity": 4, + "lineno": 54, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "list", + "endline": 72, + "complexity": 1, + "classname": "OverlapMetric", + "lineno": 71, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "from_value", + "endline": 86, + "complexity": 4, + "classname": "OverlapMetric", + "lineno": 75, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "name": "from_value", + "endline": 86, + "complexity": 4, + "classname": "OverlapMetric", + "lineno": 75, + "col_offset": 4, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "_normalize_oriented_overlap_metric", + "endline": 451, + "complexity": 3, + "lineno": 444, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "_nms_loop_from_iou_matrix", + "endline": 943, + "complexity": 3, + "lineno": 924, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "_greedy_nmm_via_iou_callback", + "endline": 1141, + "complexity": 3, + "lineno": 1113, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "_jaccard", + "endline": 301, + "complexity": 2, + "lineno": 264, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "_prepare_predictions_for_nms", + "endline": 921, + "complexity": 2, + "lineno": 907, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "box_non_max_suppression", + "endline": 978, + "complexity": 2, + "lineno": 946, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "_polygon_areas", + "endline": 375, + "complexity": 1, + "lineno": 363, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "_aabb_envelopes", + "endline": 390, + "complexity": 1, + "lineno": 378, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "_overlapping_envelope_pairs", + "endline": 423, + "complexity": 1, + "lineno": 394, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "_group_overlapping_boxes", + "endline": 1210, + "complexity": 1, + "lineno": 1177, + "col_offset": 0, + "closures": [ + { + "type": "function", + "rank": "A", + "name": "iou_against_candidate", + "endline": 1206, + "complexity": 1, + "lineno": 1200, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "function", + "rank": "A", + "name": "box_non_max_merge", + "endline": 1243, + "complexity": 1, + "lineno": 1214, + "col_offset": 0, + "closures": [ + { + "type": "function", + "rank": "A", + "name": "group_within", + "endline": 1240, + "complexity": 1, + "lineno": 1238, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "function", + "rank": "A", + "name": "_group_overlapping_oriented_boxes", + "endline": 1362, + "complexity": 1, + "lineno": 1341, + "col_offset": 0, + "closures": [ + { + "type": "function", + "rank": "A", + "name": "iou_against_candidate", + "endline": 1358, + "complexity": 1, + "lineno": 1352, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "name": "list", + "endline": 36, + "complexity": 1, + "classname": "OverlapFilter", + "lineno": 35, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "list", + "endline": 72, + "complexity": 1, + "classname": "OverlapMetric", + "lineno": 71, + "col_offset": 4, + "closures": [] + } + ], + "src\\supervision\\detection\\utils\\masks.py": [ + { + "type": "function", + "rank": "B", + "name": "filter_segments_by_distance", + "endline": 475, + "complexity": 6, + "lineno": 344, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "move_masks", + "endline": 87, + "complexity": 5, + "lineno": 12, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "calculate_masks_centroids", + "endline": 147, + "complexity": 5, + "lineno": 90, + "col_offset": 0, + "closures": [ + { + "type": "function", + "rank": "A", + "name": "sum_over_mask", + "endline": 140, + "complexity": 1, + "lineno": 137, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "function", + "rank": "A", + "name": "_filter_labels_by_edge_distance", + "endline": 341, + "complexity": 5, + "lineno": 319, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "contains_holes", + "endline": 198, + "complexity": 4, + "lineno": 151, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "contains_multiple_segments", + "endline": 260, + "complexity": 3, + "lineno": 201, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "_resolve_distance_threshold", + "endline": 303, + "complexity": 3, + "lineno": 291, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "resize_masks", + "endline": 288, + "complexity": 1, + "lineno": 263, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "_filter_labels_by_centroid_distance", + "endline": 316, + "complexity": 1, + "lineno": 306, + "col_offset": 0, + "closures": [] + } + ], + "src\\supervision\\detection\\utils\\polygons.py": [ + { + "type": "function", + "rank": "B", + "name": "filter_polygons_by_area", + "endline": 40, + "complexity": 9, + "lineno": 8, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "B", + "name": "approximate_polygon", + "endline": 116, + "complexity": 7, + "lineno": 44, + "col_offset": 0, + "closures": [] + } + ], + "src\\supervision\\detection\\utils\\vlms.py": [ + { + "type": "function", + "rank": "B", + "name": "edit_distance", + "endline": 62, + "complexity": 6, + "lineno": 4, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "fuzzy_match_index", + "endline": 100, + "complexity": 3, + "lineno": 65, + "col_offset": 0, + "closures": [] + } + ], + "src\\supervision\\draw\\color.py": [ + { + "type": "method", + "rank": "B", + "name": "from_hex", + "endline": 146, + "complexity": 8, + "classname": "Color", + "lineno": 106, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "from_rgba_tuple", + "endline": 232, + "complexity": 5, + "classname": "Color", + "lineno": 205, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "from_bgra_tuple", + "endline": 262, + "complexity": 5, + "classname": "Color", + "lineno": 235, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__eq__", + "endline": 401, + "complexity": 5, + "classname": "Color", + "lineno": 395, + "col_offset": 4, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "_validate_color_hex", + "endline": 62, + "complexity": 4, + "lineno": 57, + "col_offset": 0, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "from_rgb_tuple", + "endline": 174, + "complexity": 4, + "classname": "Color", + "lineno": 149, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "from_bgr_tuple", + "endline": 202, + "complexity": 4, + "classname": "Color", + "lineno": 177, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "from_matplotlib", + "endline": 509, + "complexity": 4, + "classname": "ColorPalette", + "lineno": 479, + "col_offset": 4, + "closures": [] + }, + { + "type": "class", + "rank": "A", + "name": "Color", + "endline": 401, + "complexity": 3, + "lineno": 66, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "B", + "name": "from_hex", + "endline": 146, + "complexity": 8, + "classname": "Color", + "lineno": 106, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "from_rgb_tuple", + "endline": 174, + "complexity": 4, + "classname": "Color", + "lineno": 149, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "from_bgr_tuple", + "endline": 202, + "complexity": 4, + "classname": "Color", + "lineno": 177, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "from_rgba_tuple", + "endline": 232, + "complexity": 5, + "classname": "Color", + "lineno": 205, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "from_bgra_tuple", + "endline": 262, + "complexity": 5, + "classname": "Color", + "lineno": 235, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "as_hex", + "endline": 285, + "complexity": 2, + "classname": "Color", + "lineno": 264, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "as_rgb", + "endline": 302, + "complexity": 1, + "classname": "Color", + "lineno": 287, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "as_bgr", + "endline": 319, + "complexity": 1, + "classname": "Color", + "lineno": 304, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "as_rgba", + "endline": 336, + "complexity": 1, + "classname": "Color", + "lineno": 321, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "as_bgra", + "endline": 353, + "complexity": 1, + "classname": "Color", + "lineno": 338, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "WHITE", + "endline": 357, + "complexity": 1, + "classname": "Color", + "lineno": 356, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "BLACK", + "endline": 361, + "complexity": 1, + "classname": "Color", + "lineno": 360, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "GREY", + "endline": 365, + "complexity": 1, + "classname": "Color", + "lineno": 364, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "RED", + "endline": 369, + "complexity": 1, + "classname": "Color", + "lineno": 368, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "GREEN", + "endline": 373, + "complexity": 1, + "classname": "Color", + "lineno": 372, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "BLUE", + "endline": 377, + "complexity": 1, + "classname": "Color", + "lineno": 376, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "YELLOW", + "endline": 381, + "complexity": 1, + "classname": "Color", + "lineno": 380, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "ROBOFLOW", + "endline": 385, + "complexity": 1, + "classname": "Color", + "lineno": 384, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__hash__", + "endline": 388, + "complexity": 1, + "classname": "Color", + "lineno": 387, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__repr__", + "endline": 393, + "complexity": 2, + "classname": "Color", + "lineno": 390, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__eq__", + "endline": 401, + "complexity": 5, + "classname": "Color", + "lineno": 395, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "function", + "rank": "A", + "name": "unify_to_bgr", + "endline": 572, + "complexity": 2, + "lineno": 547, + "col_offset": 0, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "as_hex", + "endline": 285, + "complexity": 2, + "classname": "Color", + "lineno": 264, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__repr__", + "endline": 393, + "complexity": 2, + "classname": "Color", + "lineno": 390, + "col_offset": 4, + "closures": [] + }, + { + "type": "class", + "rank": "A", + "name": "ColorPalette", + "endline": 544, + "complexity": 2, + "lineno": 406, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "DEFAULT", + "endline": 428, + "complexity": 1, + "classname": "ColorPalette", + "lineno": 410, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "ROBOFLOW", + "endline": 449, + "complexity": 1, + "classname": "ColorPalette", + "lineno": 431, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "LEGACY", + "endline": 453, + "complexity": 1, + "classname": "ColorPalette", + "lineno": 452, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "from_hex", + "endline": 476, + "complexity": 2, + "classname": "ColorPalette", + "lineno": 456, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "from_matplotlib", + "endline": 509, + "complexity": 4, + "classname": "ColorPalette", + "lineno": 479, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "by_idx", + "endline": 535, + "complexity": 2, + "classname": "ColorPalette", + "lineno": 512, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__len__", + "endline": 544, + "complexity": 1, + "classname": "ColorPalette", + "lineno": 537, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "name": "from_hex", + "endline": 476, + "complexity": 2, + "classname": "ColorPalette", + "lineno": 456, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "by_idx", + "endline": 535, + "complexity": 2, + "classname": "ColorPalette", + "lineno": 512, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "as_rgb", + "endline": 302, + "complexity": 1, + "classname": "Color", + "lineno": 287, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "as_bgr", + "endline": 319, + "complexity": 1, + "classname": "Color", + "lineno": 304, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "as_rgba", + "endline": 336, + "complexity": 1, + "classname": "Color", + "lineno": 321, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "as_bgra", + "endline": 353, + "complexity": 1, + "classname": "Color", + "lineno": 338, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "WHITE", + "endline": 357, + "complexity": 1, + "classname": "Color", + "lineno": 356, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "BLACK", + "endline": 361, + "complexity": 1, + "classname": "Color", + "lineno": 360, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "GREY", + "endline": 365, + "complexity": 1, + "classname": "Color", + "lineno": 364, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "RED", + "endline": 369, + "complexity": 1, + "classname": "Color", + "lineno": 368, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "GREEN", + "endline": 373, + "complexity": 1, + "classname": "Color", + "lineno": 372, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "BLUE", + "endline": 377, + "complexity": 1, + "classname": "Color", + "lineno": 376, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "YELLOW", + "endline": 381, + "complexity": 1, + "classname": "Color", + "lineno": 380, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "ROBOFLOW", + "endline": 385, + "complexity": 1, + "classname": "Color", + "lineno": 384, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__hash__", + "endline": 388, + "complexity": 1, + "classname": "Color", + "lineno": 387, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "DEFAULT", + "endline": 428, + "complexity": 1, + "classname": "ColorPalette", + "lineno": 410, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "ROBOFLOW", + "endline": 449, + "complexity": 1, + "classname": "ColorPalette", + "lineno": 431, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "LEGACY", + "endline": 453, + "complexity": 1, + "classname": "ColorPalette", + "lineno": 452, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__len__", + "endline": 544, + "complexity": 1, + "classname": "ColorPalette", + "lineno": 537, + "col_offset": 4, + "closures": [] + } + ], + "src\\supervision\\draw\\utils.py": [ + { + "type": "function", + "rank": "B", + "name": "draw_image", + "endline": 368, + "complexity": 9, + "lineno": 301, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "draw_rounded_rectangle", + "endline": 163, + "complexity": 3, + "lineno": 114, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "draw_filled_rectangle", + "endline": 111, + "complexity": 2, + "lineno": 72, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "draw_filled_polygon", + "endline": 215, + "complexity": 2, + "lineno": 189, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "draw_text", + "endline": 298, + "complexity": 2, + "lineno": 218, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "calculate_optimal_line_thickness", + "endline": 420, + "complexity": 2, + "lineno": 396, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "draw_line", + "endline": 41, + "complexity": 1, + "lineno": 14, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "draw_rectangle", + "endline": 69, + "complexity": 1, + "lineno": 44, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "draw_polygon", + "endline": 186, + "complexity": 1, + "lineno": 166, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "calculate_optimal_text_scale", + "endline": 393, + "complexity": 1, + "lineno": 371, + "col_offset": 0, + "closures": [] + } + ], + "src\\supervision\\geometry\\core.py": [ + { + "type": "class", + "rank": "A", + "name": "Position", + "endline": 26, + "complexity": 2, + "lineno": 8, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "list", + "endline": 26, + "complexity": 1, + "classname": "Position", + "lineno": 25, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "class", + "rank": "A", + "name": "Point", + "endline": 69, + "complexity": 2, + "lineno": 30, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "as_xy_int_tuple", + "endline": 60, + "complexity": 1, + "classname": "Point", + "lineno": 53, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "as_xy_float_tuple", + "endline": 69, + "complexity": 1, + "classname": "Point", + "lineno": 62, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "class", + "rank": "A", + "name": "Vector", + "endline": 142, + "complexity": 2, + "lineno": 73, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "magnitude", + "endline": 108, + "complexity": 1, + "classname": "Vector", + "lineno": 99, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "center", + "endline": 120, + "complexity": 1, + "classname": "Vector", + "lineno": 111, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "cross_product", + "endline": 142, + "complexity": 1, + "classname": "Vector", + "lineno": 123, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "class", + "rank": "A", + "name": "Rect", + "endline": 201, + "complexity": 2, + "lineno": 146, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "from_xyxy", + "endline": 178, + "complexity": 1, + "classname": "Rect", + "lineno": 176, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "top_left", + "endline": 182, + "complexity": 1, + "classname": "Rect", + "lineno": 181, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "bottom_right", + "endline": 186, + "complexity": 1, + "classname": "Rect", + "lineno": 185, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "pad", + "endline": 193, + "complexity": 1, + "classname": "Rect", + "lineno": 188, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "as_xyxy_int_tuple", + "endline": 201, + "complexity": 1, + "classname": "Rect", + "lineno": 196, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "name": "list", + "endline": 26, + "complexity": 1, + "classname": "Position", + "lineno": 25, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "as_xy_int_tuple", + "endline": 60, + "complexity": 1, + "classname": "Point", + "lineno": 53, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "as_xy_float_tuple", + "endline": 69, + "complexity": 1, + "classname": "Point", + "lineno": 62, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "magnitude", + "endline": 108, + "complexity": 1, + "classname": "Vector", + "lineno": 99, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "center", + "endline": 120, + "complexity": 1, + "classname": "Vector", + "lineno": 111, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "cross_product", + "endline": 142, + "complexity": 1, + "classname": "Vector", + "lineno": 123, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "from_xyxy", + "endline": 178, + "complexity": 1, + "classname": "Rect", + "lineno": 176, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "top_left", + "endline": 182, + "complexity": 1, + "classname": "Rect", + "lineno": 181, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "bottom_right", + "endline": 186, + "complexity": 1, + "classname": "Rect", + "lineno": 185, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "pad", + "endline": 193, + "complexity": 1, + "classname": "Rect", + "lineno": 188, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "as_xyxy_int_tuple", + "endline": 201, + "complexity": 1, + "classname": "Rect", + "lineno": 196, + "col_offset": 4, + "closures": [] + } + ], + "src\\supervision\\geometry\\utils.py": [ + { + "type": "function", + "rank": "A", + "name": "get_polygon_center", + "endline": 51, + "complexity": 3, + "lineno": 7, + "col_offset": 0, + "closures": [] + } + ], + "src\\supervision\\key_points\\annotators.py": [ + { + "type": "method", + "rank": "C", + "name": "annotate", + "endline": 258, + "complexity": 16, + "classname": "EdgeAnnotator", + "lineno": 141, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "C", + "name": "annotate", + "endline": 905, + "complexity": 13, + "classname": "VertexLabelAnnotator", + "lineno": 740, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "C", + "name": "__init__", + "endline": 296, + "complexity": 11, + "classname": "_BaseVertexEllipseAnnotator", + "lineno": 268, + "col_offset": 4, + "closures": [] + }, + { + "type": "class", + "rank": "B", + "name": "EdgeAnnotator", + "endline": 258, + "complexity": 10, + "lineno": 111, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 138, + "complexity": 1, + "classname": "EdgeAnnotator", + "lineno": 117, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "C", + "name": "annotate", + "endline": 258, + "complexity": 16, + "classname": "EdgeAnnotator", + "lineno": 141, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "B", + "name": "_iter_ellipse_params", + "endline": 367, + "complexity": 10, + "classname": "_BaseVertexEllipseAnnotator", + "lineno": 330, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "annotate", + "endline": 697, + "complexity": 9, + "classname": "VertexEllipseHaloAnnotator", + "lineno": 606, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "annotate", + "endline": 108, + "complexity": 8, + "classname": "VertexAnnotator", + "lineno": 51, + "col_offset": 4, + "closures": [] + }, + { + "type": "class", + "rank": "B", + "name": "_BaseVertexEllipseAnnotator", + "endline": 367, + "complexity": 8, + "lineno": 261, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "C", + "name": "__init__", + "endline": 296, + "complexity": 11, + "classname": "_BaseVertexEllipseAnnotator", + "lineno": 268, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_get_covariances", + "endline": 313, + "complexity": 3, + "classname": "_BaseVertexEllipseAnnotator", + "lineno": 298, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_decompose_covariance", + "endline": 328, + "complexity": 5, + "classname": "_BaseVertexEllipseAnnotator", + "lineno": 315, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "_iter_ellipse_params", + "endline": 367, + "complexity": 10, + "classname": "_BaseVertexEllipseAnnotator", + "lineno": 330, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "B", + "name": "_resolve_labels", + "endline": 957, + "complexity": 7, + "classname": "VertexLabelAnnotator", + "lineno": 930, + "col_offset": 4, + "closures": [] + }, + { + "type": "class", + "rank": "B", + "name": "VertexAnnotator", + "endline": 108, + "complexity": 6, + "lineno": 30, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 48, + "complexity": 1, + "classname": "VertexAnnotator", + "lineno": 37, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "annotate", + "endline": 108, + "complexity": 8, + "classname": "VertexAnnotator", + "lineno": 51, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "class", + "rank": "B", + "name": "VertexEllipseHaloAnnotator", + "endline": 697, + "complexity": 6, + "lineno": 568, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 603, + "complexity": 1, + "classname": "VertexEllipseHaloAnnotator", + "lineno": 583, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "annotate", + "endline": 697, + "complexity": 9, + "classname": "VertexEllipseHaloAnnotator", + "lineno": 606, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "class", + "rank": "B", + "name": "VertexLabelAnnotator", + "endline": 972, + "complexity": 6, + "lineno": 703, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 738, + "complexity": 1, + "classname": "VertexLabelAnnotator", + "lineno": 709, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "C", + "name": "annotate", + "endline": 905, + "complexity": 13, + "classname": "VertexLabelAnnotator", + "lineno": 740, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "get_text_bounding_box", + "endline": 926, + "complexity": 1, + "classname": "VertexLabelAnnotator", + "lineno": 908, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "_resolve_labels", + "endline": 957, + "complexity": 7, + "classname": "VertexLabelAnnotator", + "lineno": 930, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_resolve_color_list", + "endline": 972, + "complexity": 3, + "classname": "VertexLabelAnnotator", + "lineno": 960, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "name": "_decompose_covariance", + "endline": 328, + "complexity": 5, + "classname": "_BaseVertexEllipseAnnotator", + "lineno": 315, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "annotate", + "endline": 468, + "complexity": 5, + "classname": "VertexEllipseAreaAnnotator", + "lineno": 406, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "annotate", + "endline": 565, + "complexity": 5, + "classname": "VertexEllipseOutlineAnnotator", + "lineno": 504, + "col_offset": 4, + "closures": [] + }, + { + "type": "class", + "rank": "A", + "name": "VertexEllipseAreaAnnotator", + "endline": 468, + "complexity": 4, + "lineno": 370, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 403, + "complexity": 1, + "classname": "VertexEllipseAreaAnnotator", + "lineno": 383, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "annotate", + "endline": 468, + "complexity": 5, + "classname": "VertexEllipseAreaAnnotator", + "lineno": 406, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "class", + "rank": "A", + "name": "VertexEllipseOutlineAnnotator", + "endline": 565, + "complexity": 4, + "lineno": 471, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 501, + "complexity": 1, + "classname": "VertexEllipseOutlineAnnotator", + "lineno": 482, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "annotate", + "endline": 565, + "complexity": 5, + "classname": "VertexEllipseOutlineAnnotator", + "lineno": 504, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "name": "_get_covariances", + "endline": 313, + "complexity": 3, + "classname": "_BaseVertexEllipseAnnotator", + "lineno": 298, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_resolve_color_list", + "endline": 972, + "complexity": 3, + "classname": "VertexLabelAnnotator", + "lineno": 960, + "col_offset": 4, + "closures": [] + }, + { + "type": "class", + "rank": "A", + "name": "BaseKeyPointAnnotator", + "endline": 27, + "complexity": 2, + "lineno": 24, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "annotate", + "endline": 27, + "complexity": 1, + "classname": "BaseKeyPointAnnotator", + "lineno": 26, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "name": "annotate", + "endline": 27, + "complexity": 1, + "classname": "BaseKeyPointAnnotator", + "lineno": 26, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 48, + "complexity": 1, + "classname": "VertexAnnotator", + "lineno": 37, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 138, + "complexity": 1, + "classname": "EdgeAnnotator", + "lineno": 117, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 403, + "complexity": 1, + "classname": "VertexEllipseAreaAnnotator", + "lineno": 383, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 501, + "complexity": 1, + "classname": "VertexEllipseOutlineAnnotator", + "lineno": 482, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 603, + "complexity": 1, + "classname": "VertexEllipseHaloAnnotator", + "lineno": 583, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 738, + "complexity": 1, + "classname": "VertexLabelAnnotator", + "lineno": 709, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "get_text_bounding_box", + "endline": 926, + "complexity": 1, + "classname": "VertexLabelAnnotator", + "lineno": 908, + "col_offset": 4, + "closures": [] + } + ], + "src\\supervision\\key_points\\core.py": [ + { + "type": "method", + "rank": "C", + "name": "_normalize_getitem_index", + "endline": 959, + "complexity": 17, + "classname": "KeyPoints", + "lineno": 925, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "C", + "name": "_get_by_2d_bool_mask", + "endline": 922, + "complexity": 15, + "classname": "KeyPoints", + "lineno": 830, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "C", + "name": "_reshape_selected", + "endline": 1038, + "complexity": 15, + "classname": "KeyPoints", + "lineno": 998, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "C", + "name": "from_mediapipe", + "endline": 594, + "complexity": 12, + "classname": "KeyPoints", + "lineno": 472, + "col_offset": 4, + "closures": [] + }, + { + "type": "function", + "rank": "B", + "name": "_normalize_row_index", + "endline": 71, + "complexity": 10, + "lineno": 51, + "col_offset": 0, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "from_inference", + "endline": 468, + "complexity": 7, + "classname": "KeyPoints", + "lineno": 388, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "with_nms", + "endline": 1270, + "complexity": 7, + "classname": "KeyPoints", + "lineno": 1184, + "col_offset": 4, + "closures": [] + }, + { + "type": "class", + "rank": "B", + "name": "KeyPoints", + "endline": 1342, + "complexity": 6, + "lineno": 75, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 296, + "complexity": 4, + "classname": "KeyPoints", + "lineno": 245, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__post_init__", + "endline": 305, + "complexity": 1, + "classname": "KeyPoints", + "lineno": 298, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "confidence", + "endline": 315, + "complexity": 1, + "classname": "KeyPoints", + "lineno": 309, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "confidence", + "endline": 323, + "complexity": 1, + "classname": "KeyPoints", + "lineno": 318, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__len__", + "endline": 343, + "complexity": 1, + "classname": "KeyPoints", + "lineno": 325, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__iter__", + "endline": 366, + "complexity": 4, + "classname": "KeyPoints", + "lineno": 345, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__eq__", + "endline": 383, + "complexity": 2, + "classname": "KeyPoints", + "lineno": 369, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "from_inference", + "endline": 468, + "complexity": 7, + "classname": "KeyPoints", + "lineno": 388, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "C", + "name": "from_mediapipe", + "endline": 594, + "complexity": 12, + "classname": "KeyPoints", + "lineno": 472, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "from_ultralytics", + "endline": 634, + "complexity": 3, + "classname": "KeyPoints", + "lineno": 598, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "from_yolo_nas", + "endline": 691, + "complexity": 6, + "classname": "KeyPoints", + "lineno": 637, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "from_detectron2", + "endline": 743, + "complexity": 3, + "classname": "KeyPoints", + "lineno": 695, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "from_transformers", + "endline": 828, + "complexity": 4, + "classname": "KeyPoints", + "lineno": 746, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "C", + "name": "_get_by_2d_bool_mask", + "endline": 922, + "complexity": 15, + "classname": "KeyPoints", + "lineno": 830, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "C", + "name": "_normalize_getitem_index", + "endline": 959, + "complexity": 17, + "classname": "KeyPoints", + "lineno": 925, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_select_fields", + "endline": 995, + "complexity": 5, + "classname": "KeyPoints", + "lineno": 961, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "C", + "name": "_reshape_selected", + "endline": 1038, + "complexity": 15, + "classname": "KeyPoints", + "lineno": 998, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_getitem_by_normalized_index", + "endline": 1056, + "complexity": 1, + "classname": "KeyPoints", + "lineno": 1040, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__getitem__", + "endline": 1108, + "complexity": 5, + "classname": "KeyPoints", + "lineno": 1059, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__setitem__", + "endline": 1143, + "complexity": 3, + "classname": "KeyPoints", + "lineno": 1110, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "empty", + "endline": 1162, + "complexity": 1, + "classname": "KeyPoints", + "lineno": 1146, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "is_empty", + "endline": 1182, + "complexity": 1, + "classname": "KeyPoints", + "lineno": 1164, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "with_nms", + "endline": 1270, + "complexity": 7, + "classname": "KeyPoints", + "lineno": 1184, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "as_detections", + "endline": 1342, + "complexity": 6, + "classname": "KeyPoints", + "lineno": 1272, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "B", + "name": "from_yolo_nas", + "endline": 691, + "complexity": 6, + "classname": "KeyPoints", + "lineno": 637, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "as_detections", + "endline": 1342, + "complexity": 6, + "classname": "KeyPoints", + "lineno": 1272, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_select_fields", + "endline": 995, + "complexity": 5, + "classname": "KeyPoints", + "lineno": 961, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__getitem__", + "endline": 1108, + "complexity": 5, + "classname": "KeyPoints", + "lineno": 1059, + "col_offset": 4, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "_optional_array_equal", + "endline": 48, + "complexity": 4, + "lineno": 42, + "col_offset": 0, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 296, + "complexity": 4, + "classname": "KeyPoints", + "lineno": 245, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__iter__", + "endline": 366, + "complexity": 4, + "classname": "KeyPoints", + "lineno": 345, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "from_transformers", + "endline": 828, + "complexity": 4, + "classname": "KeyPoints", + "lineno": 746, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "from_ultralytics", + "endline": 634, + "complexity": 3, + "classname": "KeyPoints", + "lineno": 598, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "from_detectron2", + "endline": 743, + "complexity": 3, + "classname": "KeyPoints", + "lineno": 695, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__setitem__", + "endline": 1143, + "complexity": 3, + "classname": "KeyPoints", + "lineno": 1110, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__eq__", + "endline": 383, + "complexity": 2, + "classname": "KeyPoints", + "lineno": 369, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__post_init__", + "endline": 305, + "complexity": 1, + "classname": "KeyPoints", + "lineno": 298, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "confidence", + "endline": 315, + "complexity": 1, + "classname": "KeyPoints", + "lineno": 309, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "confidence", + "endline": 323, + "complexity": 1, + "classname": "KeyPoints", + "lineno": 318, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__len__", + "endline": 343, + "complexity": 1, + "classname": "KeyPoints", + "lineno": 325, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_getitem_by_normalized_index", + "endline": 1056, + "complexity": 1, + "classname": "KeyPoints", + "lineno": 1040, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "empty", + "endline": 1162, + "complexity": 1, + "classname": "KeyPoints", + "lineno": 1146, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "is_empty", + "endline": 1182, + "complexity": 1, + "classname": "KeyPoints", + "lineno": 1164, + "col_offset": 4, + "closures": [] + } + ], + "src\\supervision\\key_points\\skeletons.py": [ + { + "type": "class", + "rank": "A", + "name": "Skeleton", + "endline": 2635, + "complexity": 1, + "lineno": 6, + "col_offset": 0, + "methods": [] + } + ], + "src\\supervision\\metrics\\core.py": [ + { + "type": "class", + "rank": "A", + "name": "Metric", + "endline": 33, + "complexity": 2, + "lineno": 8, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "update", + "endline": 19, + "complexity": 1, + "classname": "Metric", + "lineno": 14, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "reset", + "endline": 26, + "complexity": 1, + "classname": "Metric", + "lineno": 22, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "compute", + "endline": 33, + "complexity": 1, + "classname": "Metric", + "lineno": 29, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "name": "update", + "endline": 19, + "complexity": 1, + "classname": "Metric", + "lineno": 14, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "reset", + "endline": 26, + "complexity": 1, + "classname": "Metric", + "lineno": 22, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "compute", + "endline": 33, + "complexity": 1, + "classname": "Metric", + "lineno": 29, + "col_offset": 4, + "closures": [] + }, + { + "type": "class", + "rank": "A", + "name": "MetricTarget", + "endline": 48, + "complexity": 1, + "lineno": 36, + "col_offset": 0, + "methods": [] + }, + { + "type": "class", + "rank": "A", + "name": "AveragingMethod", + "endline": 72, + "complexity": 1, + "lineno": 51, + "col_offset": 0, + "methods": [] + } + ], + "src\\supervision\\metrics\\detection.py": [ + { + "type": "method", + "rank": "C", + "name": "plot", + "endline": 775, + "complexity": 15, + "classname": "ConfusionMatrix", + "lineno": 688, + "col_offset": 4, + "closures": [] + }, + { + "type": "function", + "rank": "B", + "name": "detections_to_tensor", + "endline": 143, + "complexity": 10, + "lineno": 29, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "B", + "name": "_fill_confusion_matrix_from_iou", + "endline": 305, + "complexity": 10, + "lineno": 255, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "B", + "name": "_validate_input_tensors", + "endline": 183, + "complexity": 9, + "lineno": 146, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "B", + "name": "_validate_detection_batch_shapes", + "endline": 215, + "complexity": 7, + "lineno": 195, + "col_offset": 0, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "from_tensors", + "endline": 1008, + "complexity": 7, + "classname": "MeanAveragePrecision", + "lineno": 915, + "col_offset": 4, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "_try_early_exit", + "endline": 239, + "complexity": 5, + "lineno": 219, + "col_offset": 0, + "closures": [] + }, + { + "type": "class", + "rank": "A", + "name": "ConfusionMatrix", + "endline": 775, + "complexity": 5, + "lineno": 321, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "__eq__", + "endline": 353, + "complexity": 5, + "classname": "ConfusionMatrix", + "lineno": 346, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "from_detections", + "endline": 439, + "complexity": 2, + "classname": "ConfusionMatrix", + "lineno": 359, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "from_tensors", + "endline": 531, + "complexity": 2, + "classname": "ConfusionMatrix", + "lineno": 443, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "evaluate_detection_batch", + "endline": 602, + "complexity": 2, + "classname": "ConfusionMatrix", + "lineno": 535, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_drop_extra_matches", + "endline": 618, + "complexity": 2, + "classname": "ConfusionMatrix", + "lineno": 605, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "benchmark", + "endline": 685, + "complexity": 2, + "classname": "ConfusionMatrix", + "lineno": 621, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "C", + "name": "plot", + "endline": 775, + "complexity": 15, + "classname": "ConfusionMatrix", + "lineno": 688, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "name": "__eq__", + "endline": 353, + "complexity": 5, + "classname": "ConfusionMatrix", + "lineno": 346, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_average_precisions_per_class", + "endline": 1148, + "complexity": 5, + "classname": "MeanAveragePrecision", + "lineno": 1095, + "col_offset": 4, + "closures": [] + }, + { + "type": "class", + "rank": "A", + "name": "MeanAveragePrecision", + "endline": 1148, + "complexity": 4, + "lineno": 784, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "from_detections", + "endline": 864, + "complexity": 2, + "classname": "MeanAveragePrecision", + "lineno": 815, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "benchmark", + "endline": 911, + "complexity": 2, + "classname": "MeanAveragePrecision", + "lineno": 868, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "from_tensors", + "endline": 1008, + "complexity": 7, + "classname": "MeanAveragePrecision", + "lineno": 915, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "compute_average_precision", + "endline": 1047, + "complexity": 2, + "classname": "MeanAveragePrecision", + "lineno": 1012, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_match_detection_batch", + "endline": 1092, + "complexity": 4, + "classname": "MeanAveragePrecision", + "lineno": 1050, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_average_precisions_per_class", + "endline": 1148, + "complexity": 5, + "classname": "MeanAveragePrecision", + "lineno": 1095, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "name": "_match_detection_batch", + "endline": 1092, + "complexity": 4, + "classname": "MeanAveragePrecision", + "lineno": 1050, + "col_offset": 4, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "_assert_supported_target", + "endline": 25, + "complexity": 2, + "lineno": 22, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "_get_coordinate_metadata", + "endline": 192, + "complexity": 2, + "lineno": 187, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "_get_iou_batch", + "endline": 252, + "complexity": 2, + "lineno": 242, + "col_offset": 0, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "from_detections", + "endline": 439, + "complexity": 2, + "classname": "ConfusionMatrix", + "lineno": 359, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "from_tensors", + "endline": 531, + "complexity": 2, + "classname": "ConfusionMatrix", + "lineno": 443, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "evaluate_detection_batch", + "endline": 602, + "complexity": 2, + "classname": "ConfusionMatrix", + "lineno": 535, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_drop_extra_matches", + "endline": 618, + "complexity": 2, + "classname": "ConfusionMatrix", + "lineno": 605, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "benchmark", + "endline": 685, + "complexity": 2, + "classname": "ConfusionMatrix", + "lineno": 621, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "from_detections", + "endline": 864, + "complexity": 2, + "classname": "MeanAveragePrecision", + "lineno": 815, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "benchmark", + "endline": 911, + "complexity": 2, + "classname": "MeanAveragePrecision", + "lineno": 868, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "compute_average_precision", + "endline": 1047, + "complexity": 2, + "classname": "MeanAveragePrecision", + "lineno": 1012, + "col_offset": 4, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "validate_input_tensors", + "endline": 317, + "complexity": 1, + "lineno": 313, + "col_offset": 0, + "closures": [] + } + ], + "src\\supervision\\metrics\\f1_score.py": [ + { + "type": "method", + "rank": "C", + "name": "_compute", + "endline": 250, + "complexity": 15, + "classname": "F1Score", + "lineno": 152, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "_filter_detections_by_size", + "endline": 482, + "complexity": 9, + "classname": "F1Score", + "lineno": 458, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "_detections_content", + "endline": 444, + "complexity": 7, + "classname": "F1Score", + "lineno": 428, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "to_pandas", + "endline": 729, + "complexity": 7, + "classname": "F1ScoreResult", + "lineno": 701, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "__str__", + "endline": 699, + "complexity": 6, + "classname": "F1ScoreResult", + "lineno": 633, + "col_offset": 4, + "closures": [] + }, + { + "type": "class", + "rank": "A", + "name": "F1Score", + "endline": 502, + "complexity": 5, + "lineno": 30, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 83, + "complexity": 1, + "classname": "F1Score", + "lineno": 66, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "reset", + "endline": 90, + "complexity": 1, + "classname": "F1Score", + "lineno": 85, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "update", + "endline": 121, + "complexity": 4, + "classname": "F1Score", + "lineno": 92, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "compute", + "endline": 150, + "complexity": 1, + "classname": "F1Score", + "lineno": 123, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "C", + "name": "_compute", + "endline": 250, + "complexity": 15, + "classname": "F1Score", + "lineno": 152, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_compute_f1_for_classes", + "endline": 306, + "complexity": 5, + "classname": "F1Score", + "lineno": 253, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_match_detection_batch", + "endline": 338, + "complexity": 4, + "classname": "F1Score", + "lineno": 309, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_compute_confusion_matrix", + "endline": 396, + "complexity": 4, + "classname": "F1Score", + "lineno": 341, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_compute_f1", + "endline": 426, + "complexity": 2, + "classname": "F1Score", + "lineno": 399, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "_detections_content", + "endline": 444, + "complexity": 7, + "classname": "F1Score", + "lineno": 428, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_make_empty_content", + "endline": 456, + "complexity": 4, + "classname": "F1Score", + "lineno": 446, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "_filter_detections_by_size", + "endline": 482, + "complexity": 9, + "classname": "F1Score", + "lineno": 458, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_filter_predictions_and_targets_by_size", + "endline": 502, + "complexity": 2, + "classname": "F1Score", + "lineno": 484, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "name": "_compute_f1_for_classes", + "endline": 306, + "complexity": 5, + "classname": "F1Score", + "lineno": 253, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 595, + "complexity": 5, + "classname": "F1ScoreResult", + "lineno": 562, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "plot", + "endline": 793, + "complexity": 5, + "classname": "F1ScoreResult", + "lineno": 731, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "update", + "endline": 121, + "complexity": 4, + "classname": "F1Score", + "lineno": 92, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_match_detection_batch", + "endline": 338, + "complexity": 4, + "classname": "F1Score", + "lineno": 309, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_compute_confusion_matrix", + "endline": 396, + "complexity": 4, + "classname": "F1Score", + "lineno": 341, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_make_empty_content", + "endline": 456, + "complexity": 4, + "classname": "F1Score", + "lineno": 446, + "col_offset": 4, + "closures": [] + }, + { + "type": "class", + "rank": "A", + "name": "F1ScoreResult", + "endline": 793, + "complexity": 3, + "lineno": 515, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "f1_50", + "endline": 550, + "complexity": 1, + "classname": "F1ScoreResult", + "lineno": 549, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "f1_75", + "endline": 554, + "complexity": 1, + "classname": "F1ScoreResult", + "lineno": 553, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 595, + "complexity": 5, + "classname": "F1ScoreResult", + "lineno": 562, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_ensure_size_results", + "endline": 601, + "complexity": 2, + "classname": "F1ScoreResult", + "lineno": 597, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "small_objects", + "endline": 607, + "complexity": 2, + "classname": "F1ScoreResult", + "lineno": 604, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "small_objects", + "endline": 611, + "complexity": 1, + "classname": "F1ScoreResult", + "lineno": 610, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "medium_objects", + "endline": 617, + "complexity": 2, + "classname": "F1ScoreResult", + "lineno": 614, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "medium_objects", + "endline": 621, + "complexity": 1, + "classname": "F1ScoreResult", + "lineno": 620, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "large_objects", + "endline": 627, + "complexity": 2, + "classname": "F1ScoreResult", + "lineno": 624, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "large_objects", + "endline": 631, + "complexity": 1, + "classname": "F1ScoreResult", + "lineno": 630, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "__str__", + "endline": 699, + "complexity": 6, + "classname": "F1ScoreResult", + "lineno": 633, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "to_pandas", + "endline": 729, + "complexity": 7, + "classname": "F1ScoreResult", + "lineno": 701, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "plot", + "endline": 793, + "complexity": 5, + "classname": "F1ScoreResult", + "lineno": 731, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "name": "_compute_f1", + "endline": 426, + "complexity": 2, + "classname": "F1Score", + "lineno": 399, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_filter_predictions_and_targets_by_size", + "endline": 502, + "complexity": 2, + "classname": "F1Score", + "lineno": 484, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_ensure_size_results", + "endline": 601, + "complexity": 2, + "classname": "F1ScoreResult", + "lineno": 597, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "small_objects", + "endline": 607, + "complexity": 2, + "classname": "F1ScoreResult", + "lineno": 604, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "medium_objects", + "endline": 617, + "complexity": 2, + "classname": "F1ScoreResult", + "lineno": 614, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "large_objects", + "endline": 627, + "complexity": 2, + "classname": "F1ScoreResult", + "lineno": 624, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 83, + "complexity": 1, + "classname": "F1Score", + "lineno": 66, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "reset", + "endline": 90, + "complexity": 1, + "classname": "F1Score", + "lineno": 85, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "compute", + "endline": 150, + "complexity": 1, + "classname": "F1Score", + "lineno": 123, + "col_offset": 4, + "closures": [] + }, + { + "type": "class", + "rank": "A", + "name": "F1ScoreSizeResults", + "endline": 511, + "complexity": 1, + "lineno": 506, + "col_offset": 0, + "methods": [] + }, + { + "type": "method", + "rank": "A", + "name": "f1_50", + "endline": 550, + "complexity": 1, + "classname": "F1ScoreResult", + "lineno": 549, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "f1_75", + "endline": 554, + "complexity": 1, + "classname": "F1ScoreResult", + "lineno": 553, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "small_objects", + "endline": 611, + "complexity": 1, + "classname": "F1ScoreResult", + "lineno": 610, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "medium_objects", + "endline": 621, + "complexity": 1, + "classname": "F1ScoreResult", + "lineno": 620, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "large_objects", + "endline": 631, + "complexity": 1, + "classname": "F1ScoreResult", + "lineno": 630, + "col_offset": 4, + "closures": [] + } + ], + "src\\supervision\\metrics\\mean_average_precision.py": [ + { + "type": "method", + "rank": "D", + "name": "_evaluate_image", + "endline": 944, + "complexity": 28, + "classname": "COCOEvaluator", + "lineno": 822, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "C", + "name": "_compute_raw_metrics", + "endline": 1134, + "complexity": 20, + "classname": "COCOEvaluator", + "lineno": 1036, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "C", + "name": "get_annotation_ids", + "endline": 456, + "complexity": 17, + "classname": "EvaluationDataset", + "lineno": 404, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "C", + "name": "_prepare_targets", + "endline": 1573, + "complexity": 17, + "classname": "MeanAveragePrecision", + "lineno": 1514, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "C", + "name": "get_category_ids", + "endline": 502, + "complexity": 14, + "classname": "EvaluationDataset", + "lineno": 458, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "C", + "name": "load_predictions", + "endline": 613, + "complexity": 14, + "classname": "EvaluationDataset", + "lineno": 549, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "C", + "name": "_prepare_predictions", + "endline": 1625, + "complexity": 11, + "classname": "MeanAveragePrecision", + "lineno": 1576, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "create_class_members", + "endline": 402, + "complexity": 10, + "classname": "EvaluationDataset", + "lineno": 374, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "_select_evaluation_indices", + "endline": 1033, + "complexity": 10, + "classname": "COCOEvaluator", + "lineno": 1004, + "col_offset": 4, + "closures": [] + }, + { + "type": "class", + "rank": "B", + "name": "EvaluationDataset", + "endline": 613, + "complexity": 9, + "lineno": 339, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 368, + "complexity": 2, + "classname": "EvaluationDataset", + "lineno": 345, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "empty", + "endline": 372, + "complexity": 1, + "classname": "EvaluationDataset", + "lineno": 371, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "create_class_members", + "endline": 402, + "complexity": 10, + "classname": "EvaluationDataset", + "lineno": 374, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "C", + "name": "get_annotation_ids", + "endline": 456, + "complexity": 17, + "classname": "EvaluationDataset", + "lineno": 404, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "C", + "name": "get_category_ids", + "endline": 502, + "complexity": 14, + "classname": "EvaluationDataset", + "lineno": 458, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "get_image_ids", + "endline": 533, + "complexity": 8, + "classname": "EvaluationDataset", + "lineno": 504, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "get_annotations", + "endline": 547, + "complexity": 3, + "classname": "EvaluationDataset", + "lineno": 535, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "C", + "name": "load_predictions", + "endline": 613, + "complexity": 14, + "classname": "EvaluationDataset", + "lineno": 549, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "B", + "name": "_compute_iou", + "endline": 820, + "complexity": 9, + "classname": "COCOEvaluator", + "lineno": 781, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "update", + "endline": 1512, + "complexity": 9, + "classname": "MeanAveragePrecision", + "lineno": 1472, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "get_image_ids", + "endline": 533, + "complexity": 8, + "classname": "EvaluationDataset", + "lineno": 504, + "col_offset": 4, + "closures": [] + }, + { + "type": "class", + "rank": "B", + "name": "MeanAveragePrecision", + "endline": 1697, + "complexity": 8, + "lineno": 1403, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 1463, + "complexity": 1, + "classname": "MeanAveragePrecision", + "lineno": 1441, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "reset", + "endline": 1470, + "complexity": 1, + "classname": "MeanAveragePrecision", + "lineno": 1465, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "update", + "endline": 1512, + "complexity": 9, + "classname": "MeanAveragePrecision", + "lineno": 1472, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "C", + "name": "_prepare_targets", + "endline": 1573, + "complexity": 17, + "classname": "MeanAveragePrecision", + "lineno": 1514, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "C", + "name": "_prepare_predictions", + "endline": 1625, + "complexity": 11, + "classname": "MeanAveragePrecision", + "lineno": 1576, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "compute", + "endline": 1697, + "complexity": 2, + "classname": "MeanAveragePrecision", + "lineno": 1627, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "B", + "name": "to_pandas", + "endline": 267, + "complexity": 7, + "classname": "MeanAveragePrecisionResult", + "lineno": 235, + "col_offset": 4, + "closures": [] + }, + { + "type": "class", + "rank": "B", + "name": "COCOEvaluator", + "endline": 1400, + "complexity": 6, + "lineno": 690, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 717, + "complexity": 3, + "classname": "COCOEvaluator", + "lineno": 695, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "eval_imgs", + "endline": 722, + "complexity": 1, + "classname": "COCOEvaluator", + "lineno": 720, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "results", + "endline": 727, + "complexity": 1, + "classname": "COCOEvaluator", + "lineno": 725, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "stats", + "endline": 732, + "complexity": 1, + "classname": "COCOEvaluator", + "lineno": 730, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "ious", + "endline": 737, + "complexity": 1, + "classname": "COCOEvaluator", + "lineno": 735, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_targets", + "endline": 741, + "complexity": 1, + "classname": "COCOEvaluator", + "lineno": 740, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_predictions", + "endline": 745, + "complexity": 1, + "classname": "COCOEvaluator", + "lineno": 744, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "_prepare_targets_and_predictions", + "endline": 779, + "complexity": 6, + "classname": "COCOEvaluator", + "lineno": 747, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "_compute_iou", + "endline": 820, + "complexity": 9, + "classname": "COCOEvaluator", + "lineno": 781, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "D", + "name": "_evaluate_image", + "endline": 944, + "complexity": 28, + "classname": "COCOEvaluator", + "lineno": 822, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_initialize_accumulation", + "endline": 1001, + "complexity": 1, + "classname": "COCOEvaluator", + "lineno": 947, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "_select_evaluation_indices", + "endline": 1033, + "complexity": 10, + "classname": "COCOEvaluator", + "lineno": 1004, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "C", + "name": "_compute_raw_metrics", + "endline": 1134, + "complexity": 20, + "classname": "COCOEvaluator", + "lineno": 1036, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_compute_average_precision", + "endline": 1172, + "complexity": 1, + "classname": "COCOEvaluator", + "lineno": 1137, + "col_offset": 4, + "closures": [ + { + "type": "function", + "rank": "A", + "name": "mean_with_mask", + "endline": 1154, + "complexity": 1, + "lineno": 1143, + "col_offset": 8, + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "name": "_compute_average_precision_by_size", + "endline": 1220, + "complexity": 1, + "classname": "COCOEvaluator", + "lineno": 1174, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_accumulate", + "endline": 1271, + "complexity": 1, + "classname": "COCOEvaluator", + "lineno": 1223, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_pycocotools_summarize", + "endline": 1367, + "complexity": 2, + "classname": "COCOEvaluator", + "lineno": 1274, + "col_offset": 4, + "closures": [ + { + "type": "function", + "rank": "B", + "name": "_summarize", + "endline": 1320, + "complexity": 8, + "lineno": 1279, + "col_offset": 8, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "_summarize_predictions", + "endline": 1364, + "complexity": 1, + "lineno": 1322, + "col_offset": 8, + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "B", + "name": "evaluate", + "endline": 1400, + "complexity": 6, + "classname": "COCOEvaluator", + "lineno": 1369, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "B", + "name": "_prepare_targets_and_predictions", + "endline": 779, + "complexity": 6, + "classname": "COCOEvaluator", + "lineno": 747, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "evaluate", + "endline": 1400, + "complexity": 6, + "classname": "COCOEvaluator", + "lineno": 1369, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "plot", + "endline": 336, + "complexity": 5, + "classname": "MeanAveragePrecisionResult", + "lineno": 270, + "col_offset": 4, + "closures": [] + }, + { + "type": "class", + "rank": "A", + "name": "MeanAveragePrecisionResult", + "endline": 336, + "complexity": 4, + "lineno": 39, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 100, + "complexity": 4, + "classname": "MeanAveragePrecisionResult", + "lineno": 72, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "map50_95", + "endline": 110, + "complexity": 2, + "classname": "MeanAveragePrecisionResult", + "lineno": 104, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "map50", + "endline": 115, + "complexity": 1, + "classname": "MeanAveragePrecisionResult", + "lineno": 113, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "map75", + "endline": 120, + "complexity": 1, + "classname": "MeanAveragePrecisionResult", + "lineno": 118, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "small_objects", + "endline": 128, + "complexity": 2, + "classname": "MeanAveragePrecisionResult", + "lineno": 123, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "small_objects", + "endline": 138, + "complexity": 4, + "classname": "MeanAveragePrecisionResult", + "lineno": 131, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "medium_objects", + "endline": 146, + "complexity": 2, + "classname": "MeanAveragePrecisionResult", + "lineno": 141, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "medium_objects", + "endline": 156, + "complexity": 4, + "classname": "MeanAveragePrecisionResult", + "lineno": 149, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "large_objects", + "endline": 164, + "complexity": 2, + "classname": "MeanAveragePrecisionResult", + "lineno": 159, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "large_objects", + "endline": 174, + "complexity": 4, + "classname": "MeanAveragePrecisionResult", + "lineno": 167, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__str__", + "endline": 232, + "complexity": 4, + "classname": "MeanAveragePrecisionResult", + "lineno": 176, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "to_pandas", + "endline": 267, + "complexity": 7, + "classname": "MeanAveragePrecisionResult", + "lineno": 235, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "plot", + "endline": 336, + "complexity": 5, + "classname": "MeanAveragePrecisionResult", + "lineno": 270, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 100, + "complexity": 4, + "classname": "MeanAveragePrecisionResult", + "lineno": 72, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "small_objects", + "endline": 138, + "complexity": 4, + "classname": "MeanAveragePrecisionResult", + "lineno": 131, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "medium_objects", + "endline": 156, + "complexity": 4, + "classname": "MeanAveragePrecisionResult", + "lineno": 149, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "large_objects", + "endline": 174, + "complexity": 4, + "classname": "MeanAveragePrecisionResult", + "lineno": 167, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__str__", + "endline": 232, + "complexity": 4, + "classname": "MeanAveragePrecisionResult", + "lineno": 176, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "get_annotations", + "endline": 547, + "complexity": 3, + "classname": "EvaluationDataset", + "lineno": 535, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 717, + "complexity": 3, + "classname": "COCOEvaluator", + "lineno": 695, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "map50_95", + "endline": 110, + "complexity": 2, + "classname": "MeanAveragePrecisionResult", + "lineno": 104, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "small_objects", + "endline": 128, + "complexity": 2, + "classname": "MeanAveragePrecisionResult", + "lineno": 123, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "medium_objects", + "endline": 146, + "complexity": 2, + "classname": "MeanAveragePrecisionResult", + "lineno": 141, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "large_objects", + "endline": 164, + "complexity": 2, + "classname": "MeanAveragePrecisionResult", + "lineno": 159, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 368, + "complexity": 2, + "classname": "EvaluationDataset", + "lineno": 345, + "col_offset": 4, + "closures": [] + }, + { + "type": "class", + "rank": "A", + "name": "COCOEvaluatorParameters", + "endline": 670, + "complexity": 2, + "lineno": 636, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 670, + "complexity": 1, + "classname": "COCOEvaluatorParameters", + "lineno": 641, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "name": "_pycocotools_summarize", + "endline": 1367, + "complexity": 2, + "classname": "COCOEvaluator", + "lineno": 1274, + "col_offset": 4, + "closures": [ + { + "type": "function", + "rank": "B", + "name": "_summarize", + "endline": 1320, + "complexity": 8, + "lineno": 1279, + "col_offset": 8, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "_summarize_predictions", + "endline": 1364, + "complexity": 1, + "lineno": 1322, + "col_offset": 8, + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "name": "compute", + "endline": 1697, + "complexity": 2, + "classname": "MeanAveragePrecision", + "lineno": 1627, + "col_offset": 4, + "closures": [] + }, + { + "type": "class", + "rank": "A", + "name": "MeanAveragePrecisionSizeResults", + "endline": 35, + "complexity": 1, + "lineno": 30, + "col_offset": 0, + "methods": [] + }, + { + "type": "method", + "rank": "A", + "name": "map50", + "endline": 115, + "complexity": 1, + "classname": "MeanAveragePrecisionResult", + "lineno": 113, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "map75", + "endline": 120, + "complexity": 1, + "classname": "MeanAveragePrecisionResult", + "lineno": 118, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "empty", + "endline": 372, + "complexity": 1, + "classname": "EvaluationDataset", + "lineno": 371, + "col_offset": 4, + "closures": [] + }, + { + "type": "class", + "rank": "A", + "name": "ObjectSize", + "endline": 633, + "complexity": 1, + "lineno": 625, + "col_offset": 0, + "methods": [] + }, + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 670, + "complexity": 1, + "classname": "COCOEvaluatorParameters", + "lineno": 641, + "col_offset": 4, + "closures": [] + }, + { + "type": "class", + "rank": "A", + "name": "COCOEvaluatorState", + "endline": 687, + "complexity": 1, + "lineno": 675, + "col_offset": 0, + "methods": [] + }, + { + "type": "method", + "rank": "A", + "name": "eval_imgs", + "endline": 722, + "complexity": 1, + "classname": "COCOEvaluator", + "lineno": 720, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "results", + "endline": 727, + "complexity": 1, + "classname": "COCOEvaluator", + "lineno": 725, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "stats", + "endline": 732, + "complexity": 1, + "classname": "COCOEvaluator", + "lineno": 730, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "ious", + "endline": 737, + "complexity": 1, + "classname": "COCOEvaluator", + "lineno": 735, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_targets", + "endline": 741, + "complexity": 1, + "classname": "COCOEvaluator", + "lineno": 740, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_predictions", + "endline": 745, + "complexity": 1, + "classname": "COCOEvaluator", + "lineno": 744, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_initialize_accumulation", + "endline": 1001, + "complexity": 1, + "classname": "COCOEvaluator", + "lineno": 947, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_compute_average_precision", + "endline": 1172, + "complexity": 1, + "classname": "COCOEvaluator", + "lineno": 1137, + "col_offset": 4, + "closures": [ + { + "type": "function", + "rank": "A", + "name": "mean_with_mask", + "endline": 1154, + "complexity": 1, + "lineno": 1143, + "col_offset": 8, + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "name": "_compute_average_precision_by_size", + "endline": 1220, + "complexity": 1, + "classname": "COCOEvaluator", + "lineno": 1174, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_accumulate", + "endline": 1271, + "complexity": 1, + "classname": "COCOEvaluator", + "lineno": 1223, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 1463, + "complexity": 1, + "classname": "MeanAveragePrecision", + "lineno": 1441, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "reset", + "endline": 1470, + "complexity": 1, + "classname": "MeanAveragePrecision", + "lineno": 1465, + "col_offset": 4, + "closures": [] + } + ], + "src\\supervision\\metrics\\mean_average_recall.py": [ + { + "type": "method", + "rank": "C", + "name": "_compute", + "endline": 555, + "complexity": 11, + "classname": "MeanAverageRecall", + "lineno": 468, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "_filter_detections_by_size", + "endline": 773, + "complexity": 9, + "classname": "MeanAverageRecall", + "lineno": 749, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "to_pandas", + "endline": 270, + "complexity": 7, + "classname": "MeanAverageRecallResult", + "lineno": 241, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "_detections_content", + "endline": 732, + "complexity": 7, + "classname": "MeanAverageRecall", + "lineno": 716, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "__str__", + "endline": 239, + "complexity": 6, + "classname": "MeanAverageRecallResult", + "lineno": 172, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 158, + "complexity": 5, + "classname": "MeanAverageRecallResult", + "lineno": 125, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "plot", + "endline": 343, + "complexity": 5, + "classname": "MeanAverageRecallResult", + "lineno": 272, + "col_offset": 4, + "closures": [] + }, + { + "type": "class", + "rank": "A", + "name": "MeanAverageRecall", + "endline": 793, + "complexity": 5, + "lineno": 346, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 399, + "complexity": 1, + "classname": "MeanAverageRecall", + "lineno": 384, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "reset", + "endline": 406, + "complexity": 1, + "classname": "MeanAverageRecall", + "lineno": 401, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "update", + "endline": 437, + "complexity": 4, + "classname": "MeanAverageRecall", + "lineno": 408, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "compute", + "endline": 466, + "complexity": 1, + "classname": "MeanAverageRecall", + "lineno": 439, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "C", + "name": "_compute", + "endline": 555, + "complexity": 11, + "classname": "MeanAverageRecall", + "lineno": 468, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_compute_average_recall_for_classes", + "endline": 592, + "complexity": 2, + "classname": "MeanAverageRecall", + "lineno": 558, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_match_detection_batch", + "endline": 623, + "complexity": 4, + "classname": "MeanAverageRecall", + "lineno": 595, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_compute_confusion_matrix", + "endline": 686, + "complexity": 4, + "classname": "MeanAverageRecall", + "lineno": 626, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_compute_recall", + "endline": 714, + "complexity": 2, + "classname": "MeanAverageRecall", + "lineno": 689, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "_detections_content", + "endline": 732, + "complexity": 7, + "classname": "MeanAverageRecall", + "lineno": 716, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_make_empty_content", + "endline": 747, + "complexity": 4, + "classname": "MeanAverageRecall", + "lineno": 734, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "_filter_detections_by_size", + "endline": 773, + "complexity": 9, + "classname": "MeanAverageRecall", + "lineno": 749, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_filter_predictions_and_targets_by_size", + "endline": 793, + "complexity": 2, + "classname": "MeanAverageRecall", + "lineno": 775, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "class", + "rank": "A", + "name": "MeanAverageRecallResult", + "endline": 343, + "complexity": 4, + "lineno": 85, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 158, + "complexity": 5, + "classname": "MeanAverageRecallResult", + "lineno": 125, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "mAR_at_1", + "endline": 162, + "complexity": 1, + "classname": "MeanAverageRecallResult", + "lineno": 161, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "mAR_at_10", + "endline": 166, + "complexity": 1, + "classname": "MeanAverageRecallResult", + "lineno": 165, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "mAR_at_100", + "endline": 170, + "complexity": 1, + "classname": "MeanAverageRecallResult", + "lineno": 169, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "__str__", + "endline": 239, + "complexity": 6, + "classname": "MeanAverageRecallResult", + "lineno": 172, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "to_pandas", + "endline": 270, + "complexity": 7, + "classname": "MeanAverageRecallResult", + "lineno": 241, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "plot", + "endline": 343, + "complexity": 5, + "classname": "MeanAverageRecallResult", + "lineno": 272, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "name": "update", + "endline": 437, + "complexity": 4, + "classname": "MeanAverageRecall", + "lineno": 408, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_match_detection_batch", + "endline": 623, + "complexity": 4, + "classname": "MeanAverageRecall", + "lineno": 595, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_compute_confusion_matrix", + "endline": 686, + "complexity": 4, + "classname": "MeanAverageRecall", + "lineno": 626, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_make_empty_content", + "endline": 747, + "complexity": 4, + "classname": "MeanAverageRecall", + "lineno": 734, + "col_offset": 4, + "closures": [] + }, + { + "type": "class", + "rank": "A", + "name": "_MeanAverageRecallSizeResultsMixin", + "endline": 81, + "complexity": 2, + "lineno": 39, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "_ensure_size_results", + "endline": 48, + "complexity": 2, + "classname": "_MeanAverageRecallSizeResultsMixin", + "lineno": 44, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "small_objects", + "endline": 55, + "complexity": 2, + "classname": "_MeanAverageRecallSizeResultsMixin", + "lineno": 51, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "small_objects", + "endline": 59, + "complexity": 1, + "classname": "_MeanAverageRecallSizeResultsMixin", + "lineno": 58, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "medium_objects", + "endline": 66, + "complexity": 2, + "classname": "_MeanAverageRecallSizeResultsMixin", + "lineno": 62, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "medium_objects", + "endline": 70, + "complexity": 1, + "classname": "_MeanAverageRecallSizeResultsMixin", + "lineno": 69, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "large_objects", + "endline": 77, + "complexity": 2, + "classname": "_MeanAverageRecallSizeResultsMixin", + "lineno": 73, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "large_objects", + "endline": 81, + "complexity": 1, + "classname": "_MeanAverageRecallSizeResultsMixin", + "lineno": 80, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "name": "_ensure_size_results", + "endline": 48, + "complexity": 2, + "classname": "_MeanAverageRecallSizeResultsMixin", + "lineno": 44, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "small_objects", + "endline": 55, + "complexity": 2, + "classname": "_MeanAverageRecallSizeResultsMixin", + "lineno": 51, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "medium_objects", + "endline": 66, + "complexity": 2, + "classname": "_MeanAverageRecallSizeResultsMixin", + "lineno": 62, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "large_objects", + "endline": 77, + "complexity": 2, + "classname": "_MeanAverageRecallSizeResultsMixin", + "lineno": 73, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_compute_average_recall_for_classes", + "endline": 592, + "complexity": 2, + "classname": "MeanAverageRecall", + "lineno": 558, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_compute_recall", + "endline": 714, + "complexity": 2, + "classname": "MeanAverageRecall", + "lineno": 689, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_filter_predictions_and_targets_by_size", + "endline": 793, + "complexity": 2, + "classname": "MeanAverageRecall", + "lineno": 775, + "col_offset": 4, + "closures": [] + }, + { + "type": "class", + "rank": "A", + "name": "MeanAverageRecallSizeResults", + "endline": 36, + "complexity": 1, + "lineno": 31, + "col_offset": 0, + "methods": [] + }, + { + "type": "method", + "rank": "A", + "name": "small_objects", + "endline": 59, + "complexity": 1, + "classname": "_MeanAverageRecallSizeResultsMixin", + "lineno": 58, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "medium_objects", + "endline": 70, + "complexity": 1, + "classname": "_MeanAverageRecallSizeResultsMixin", + "lineno": 69, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "large_objects", + "endline": 81, + "complexity": 1, + "classname": "_MeanAverageRecallSizeResultsMixin", + "lineno": 80, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "mAR_at_1", + "endline": 162, + "complexity": 1, + "classname": "MeanAverageRecallResult", + "lineno": 161, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "mAR_at_10", + "endline": 166, + "complexity": 1, + "classname": "MeanAverageRecallResult", + "lineno": 165, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "mAR_at_100", + "endline": 170, + "complexity": 1, + "classname": "MeanAverageRecallResult", + "lineno": 169, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 399, + "complexity": 1, + "classname": "MeanAverageRecall", + "lineno": 384, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "reset", + "endline": 406, + "complexity": 1, + "classname": "MeanAverageRecall", + "lineno": 401, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "compute", + "endline": 466, + "complexity": 1, + "classname": "MeanAverageRecall", + "lineno": 439, + "col_offset": 4, + "closures": [] + } + ], + "src\\supervision\\metrics\\precision.py": [ + { + "type": "method", + "rank": "C", + "name": "_compute", + "endline": 567, + "complexity": 15, + "classname": "Precision", + "lineno": 463, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "_filter_detections_by_size", + "endline": 805, + "complexity": 9, + "classname": "Precision", + "lineno": 781, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "to_pandas", + "endline": 272, + "complexity": 7, + "classname": "PrecisionResult", + "lineno": 244, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "_detections_content", + "endline": 764, + "complexity": 7, + "classname": "Precision", + "lineno": 748, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "__str__", + "endline": 242, + "complexity": 6, + "classname": "PrecisionResult", + "lineno": 174, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "plot", + "endline": 335, + "complexity": 5, + "classname": "PrecisionResult", + "lineno": 274, + "col_offset": 4, + "closures": [] + }, + { + "type": "class", + "rank": "A", + "name": "Precision", + "endline": 825, + "complexity": 5, + "lineno": 338, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 394, + "complexity": 1, + "classname": "Precision", + "lineno": 377, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "reset", + "endline": 401, + "complexity": 1, + "classname": "Precision", + "lineno": 396, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "update", + "endline": 432, + "complexity": 4, + "classname": "Precision", + "lineno": 403, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "compute", + "endline": 461, + "complexity": 1, + "classname": "Precision", + "lineno": 434, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "C", + "name": "_compute", + "endline": 567, + "complexity": 15, + "classname": "Precision", + "lineno": 463, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_compute_precision_for_classes", + "endline": 625, + "complexity": 5, + "classname": "Precision", + "lineno": 570, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_match_detection_batch", + "endline": 656, + "complexity": 4, + "classname": "Precision", + "lineno": 628, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_compute_confusion_matrix", + "endline": 713, + "complexity": 4, + "classname": "Precision", + "lineno": 659, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_compute_precision", + "endline": 746, + "complexity": 2, + "classname": "Precision", + "lineno": 716, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "_detections_content", + "endline": 764, + "complexity": 7, + "classname": "Precision", + "lineno": 748, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_make_empty_content", + "endline": 779, + "complexity": 4, + "classname": "Precision", + "lineno": 766, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "_filter_detections_by_size", + "endline": 805, + "complexity": 9, + "classname": "Precision", + "lineno": 781, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_filter_predictions_and_targets_by_size", + "endline": 825, + "complexity": 2, + "classname": "Precision", + "lineno": 807, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "name": "_compute_precision_for_classes", + "endline": 625, + "complexity": 5, + "classname": "Precision", + "lineno": 570, + "col_offset": 4, + "closures": [] + }, + { + "type": "class", + "rank": "A", + "name": "PrecisionResult", + "endline": 335, + "complexity": 4, + "lineno": 40, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 109, + "complexity": 4, + "classname": "PrecisionResult", + "lineno": 81, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "precision_at_50", + "endline": 114, + "complexity": 1, + "classname": "PrecisionResult", + "lineno": 113, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "precision_at_75", + "endline": 118, + "complexity": 1, + "classname": "PrecisionResult", + "lineno": 117, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "small_objects", + "endline": 126, + "complexity": 2, + "classname": "PrecisionResult", + "lineno": 121, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "small_objects", + "endline": 136, + "complexity": 4, + "classname": "PrecisionResult", + "lineno": 129, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "medium_objects", + "endline": 144, + "complexity": 2, + "classname": "PrecisionResult", + "lineno": 139, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "medium_objects", + "endline": 154, + "complexity": 4, + "classname": "PrecisionResult", + "lineno": 147, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "large_objects", + "endline": 162, + "complexity": 2, + "classname": "PrecisionResult", + "lineno": 157, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "large_objects", + "endline": 172, + "complexity": 4, + "classname": "PrecisionResult", + "lineno": 165, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "__str__", + "endline": 242, + "complexity": 6, + "classname": "PrecisionResult", + "lineno": 174, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "to_pandas", + "endline": 272, + "complexity": 7, + "classname": "PrecisionResult", + "lineno": 244, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "plot", + "endline": 335, + "complexity": 5, + "classname": "PrecisionResult", + "lineno": 274, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 109, + "complexity": 4, + "classname": "PrecisionResult", + "lineno": 81, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "small_objects", + "endline": 136, + "complexity": 4, + "classname": "PrecisionResult", + "lineno": 129, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "medium_objects", + "endline": 154, + "complexity": 4, + "classname": "PrecisionResult", + "lineno": 147, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "large_objects", + "endline": 172, + "complexity": 4, + "classname": "PrecisionResult", + "lineno": 165, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "update", + "endline": 432, + "complexity": 4, + "classname": "Precision", + "lineno": 403, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_match_detection_batch", + "endline": 656, + "complexity": 4, + "classname": "Precision", + "lineno": 628, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_compute_confusion_matrix", + "endline": 713, + "complexity": 4, + "classname": "Precision", + "lineno": 659, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_make_empty_content", + "endline": 779, + "complexity": 4, + "classname": "Precision", + "lineno": 766, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "small_objects", + "endline": 126, + "complexity": 2, + "classname": "PrecisionResult", + "lineno": 121, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "medium_objects", + "endline": 144, + "complexity": 2, + "classname": "PrecisionResult", + "lineno": 139, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "large_objects", + "endline": 162, + "complexity": 2, + "classname": "PrecisionResult", + "lineno": 157, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_compute_precision", + "endline": 746, + "complexity": 2, + "classname": "Precision", + "lineno": 716, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_filter_predictions_and_targets_by_size", + "endline": 825, + "complexity": 2, + "classname": "Precision", + "lineno": 807, + "col_offset": 4, + "closures": [] + }, + { + "type": "class", + "rank": "A", + "name": "PrecisionSizeResults", + "endline": 36, + "complexity": 1, + "lineno": 31, + "col_offset": 0, + "methods": [] + }, + { + "type": "method", + "rank": "A", + "name": "precision_at_50", + "endline": 114, + "complexity": 1, + "classname": "PrecisionResult", + "lineno": 113, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "precision_at_75", + "endline": 118, + "complexity": 1, + "classname": "PrecisionResult", + "lineno": 117, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 394, + "complexity": 1, + "classname": "Precision", + "lineno": 377, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "reset", + "endline": 401, + "complexity": 1, + "classname": "Precision", + "lineno": 396, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "compute", + "endline": 461, + "complexity": 1, + "classname": "Precision", + "lineno": 434, + "col_offset": 4, + "closures": [] + } + ], + "src\\supervision\\metrics\\recall.py": [ + { + "type": "method", + "rank": "C", + "name": "_compute", + "endline": 366, + "complexity": 11, + "classname": "Recall", + "lineno": 285, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "_filter_detections_by_size", + "endline": 585, + "complexity": 9, + "classname": "Recall", + "lineno": 561, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "_detections_content", + "endline": 542, + "complexity": 7, + "classname": "Recall", + "lineno": 526, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "to_pandas", + "endline": 704, + "complexity": 7, + "classname": "Recall", + "lineno": 676, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "__str__", + "endline": 674, + "complexity": 6, + "classname": "Recall", + "lineno": 606, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 118, + "complexity": 5, + "classname": "RecallResult", + "lineno": 85, + "col_offset": 4, + "closures": [] + }, + { + "type": "class", + "rank": "A", + "name": "Recall", + "endline": 768, + "complexity": 5, + "lineno": 160, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 216, + "complexity": 1, + "classname": "Recall", + "lineno": 199, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "reset", + "endline": 223, + "complexity": 1, + "classname": "Recall", + "lineno": 218, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "update", + "endline": 254, + "complexity": 4, + "classname": "Recall", + "lineno": 225, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "compute", + "endline": 283, + "complexity": 1, + "classname": "Recall", + "lineno": 256, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "C", + "name": "_compute", + "endline": 366, + "complexity": 11, + "classname": "Recall", + "lineno": 285, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_compute_recall_for_classes", + "endline": 403, + "complexity": 4, + "classname": "Recall", + "lineno": 369, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_match_detection_batch", + "endline": 434, + "complexity": 4, + "classname": "Recall", + "lineno": 406, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_compute_confusion_matrix", + "endline": 491, + "complexity": 4, + "classname": "Recall", + "lineno": 437, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_compute_recall", + "endline": 524, + "complexity": 2, + "classname": "Recall", + "lineno": 494, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "_detections_content", + "endline": 542, + "complexity": 7, + "classname": "Recall", + "lineno": 526, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_make_empty_content", + "endline": 559, + "complexity": 4, + "classname": "Recall", + "lineno": 544, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "_filter_detections_by_size", + "endline": 585, + "complexity": 9, + "classname": "Recall", + "lineno": 561, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_filter_predictions_and_targets_by_size", + "endline": 605, + "complexity": 2, + "classname": "Recall", + "lineno": 587, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "__str__", + "endline": 674, + "complexity": 6, + "classname": "Recall", + "lineno": 606, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "to_pandas", + "endline": 704, + "complexity": 7, + "classname": "Recall", + "lineno": 676, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "plot", + "endline": 768, + "complexity": 5, + "classname": "Recall", + "lineno": 706, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "name": "plot", + "endline": 768, + "complexity": 5, + "classname": "Recall", + "lineno": 706, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "update", + "endline": 254, + "complexity": 4, + "classname": "Recall", + "lineno": 225, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_compute_recall_for_classes", + "endline": 403, + "complexity": 4, + "classname": "Recall", + "lineno": 369, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_match_detection_batch", + "endline": 434, + "complexity": 4, + "classname": "Recall", + "lineno": 406, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_compute_confusion_matrix", + "endline": 491, + "complexity": 4, + "classname": "Recall", + "lineno": 437, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_make_empty_content", + "endline": 559, + "complexity": 4, + "classname": "Recall", + "lineno": 544, + "col_offset": 4, + "closures": [] + }, + { + "type": "class", + "rank": "A", + "name": "RecallResult", + "endline": 157, + "complexity": 2, + "lineno": 40, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "recall_at_50", + "endline": 73, + "complexity": 1, + "classname": "RecallResult", + "lineno": 72, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "recall_at_75", + "endline": 77, + "complexity": 1, + "classname": "RecallResult", + "lineno": 76, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 118, + "complexity": 5, + "classname": "RecallResult", + "lineno": 85, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_ensure_size_results", + "endline": 124, + "complexity": 2, + "classname": "RecallResult", + "lineno": 120, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "small_objects", + "endline": 131, + "complexity": 2, + "classname": "RecallResult", + "lineno": 127, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "small_objects", + "endline": 135, + "complexity": 1, + "classname": "RecallResult", + "lineno": 134, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "medium_objects", + "endline": 142, + "complexity": 2, + "classname": "RecallResult", + "lineno": 138, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "medium_objects", + "endline": 146, + "complexity": 1, + "classname": "RecallResult", + "lineno": 145, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "large_objects", + "endline": 153, + "complexity": 2, + "classname": "RecallResult", + "lineno": 149, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "large_objects", + "endline": 157, + "complexity": 1, + "classname": "RecallResult", + "lineno": 156, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "name": "_ensure_size_results", + "endline": 124, + "complexity": 2, + "classname": "RecallResult", + "lineno": 120, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "small_objects", + "endline": 131, + "complexity": 2, + "classname": "RecallResult", + "lineno": 127, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "medium_objects", + "endline": 142, + "complexity": 2, + "classname": "RecallResult", + "lineno": 138, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "large_objects", + "endline": 153, + "complexity": 2, + "classname": "RecallResult", + "lineno": 149, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_compute_recall", + "endline": 524, + "complexity": 2, + "classname": "Recall", + "lineno": 494, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_filter_predictions_and_targets_by_size", + "endline": 605, + "complexity": 2, + "classname": "Recall", + "lineno": 587, + "col_offset": 4, + "closures": [] + }, + { + "type": "class", + "rank": "A", + "name": "RecallSizeResults", + "endline": 36, + "complexity": 1, + "lineno": 31, + "col_offset": 0, + "methods": [] + }, + { + "type": "method", + "rank": "A", + "name": "recall_at_50", + "endline": 73, + "complexity": 1, + "classname": "RecallResult", + "lineno": 72, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "recall_at_75", + "endline": 77, + "complexity": 1, + "classname": "RecallResult", + "lineno": 76, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "small_objects", + "endline": 135, + "complexity": 1, + "classname": "RecallResult", + "lineno": 134, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "medium_objects", + "endline": 146, + "complexity": 1, + "classname": "RecallResult", + "lineno": 145, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "large_objects", + "endline": 157, + "complexity": 1, + "classname": "RecallResult", + "lineno": 156, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 216, + "complexity": 1, + "classname": "Recall", + "lineno": 199, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "reset", + "endline": 223, + "complexity": 1, + "classname": "Recall", + "lineno": 218, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "compute", + "endline": 283, + "complexity": 1, + "classname": "Recall", + "lineno": 256, + "col_offset": 4, + "closures": [] + } + ], + "src\\supervision\\metrics\\utils\\object_size.py": [ + { + "type": "function", + "rank": "B", + "name": "get_detection_size_category", + "endline": 241, + "complexity": 6, + "lineno": 214, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "get_object_size_category", + "endline": 82, + "complexity": 4, + "lineno": 46, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "get_obb_size_category", + "endline": 211, + "complexity": 4, + "lineno": 168, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "get_bbox_size_category", + "endline": 123, + "complexity": 3, + "lineno": 85, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "get_mask_size_category", + "endline": 165, + "complexity": 3, + "lineno": 126, + "col_offset": 0, + "closures": [] + }, + { + "type": "class", + "rank": "A", + "name": "ObjectSizeCategory", + "endline": 43, + "complexity": 1, + "lineno": 19, + "col_offset": 0, + "methods": [] + } + ], + "src\\supervision\\metrics\\utils\\utils.py": [ + { + "type": "function", + "rank": "A", + "name": "ensure_pandas_installed", + "endline": 6, + "complexity": 2, + "lineno": 1, + "col_offset": 0, + "closures": [] + } + ], + "src\\supervision\\tracker\\byte_tracker\\core.py": [ + { + "type": "function", + "rank": "B", + "name": "remove_duplicate_tracks", + "endline": 540, + "complexity": 7, + "lineno": 518, + "col_offset": 0, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "_second_association", + "endline": 384, + "complexity": 7, + "classname": "ByteTrack", + "lineno": 349, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "_unconfirmed_and_init_new", + "endline": 416, + "complexity": 7, + "classname": "ByteTrack", + "lineno": 386, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "_remove_stale_lost_tracks", + "endline": 450, + "complexity": 7, + "classname": "ByteTrack", + "lineno": 418, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "update_with_detections", + "endline": 183, + "complexity": 6, + "classname": "ByteTrack", + "lineno": 111, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_split_by_confidence", + "endline": 293, + "complexity": 5, + "classname": "ByteTrack", + "lineno": 239, + "col_offset": 4, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "sub_tracks", + "endline": 515, + "complexity": 4, + "lineno": 498, + "col_offset": 0, + "closures": [] + }, + { + "type": "class", + "rank": "A", + "name": "ByteTrack", + "endline": 468, + "complexity": 4, + "lineno": 49, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 101, + "complexity": 1, + "classname": "ByteTrack", + "lineno": 83, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "frame_id", + "endline": 105, + "complexity": 1, + "classname": "ByteTrack", + "lineno": 104, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "frame_id", + "endline": 109, + "complexity": 1, + "classname": "ByteTrack", + "lineno": 108, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "update_with_detections", + "endline": 183, + "complexity": 6, + "classname": "ByteTrack", + "lineno": 111, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "reset", + "endline": 194, + "complexity": 1, + "classname": "ByteTrack", + "lineno": 185, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "update_with_tensors", + "endline": 237, + "complexity": 3, + "classname": "ByteTrack", + "lineno": 196, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_split_by_confidence", + "endline": 293, + "complexity": 5, + "classname": "ByteTrack", + "lineno": 239, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_build_stracks", + "endline": 308, + "complexity": 3, + "classname": "ByteTrack", + "lineno": 294, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_separate_tracks", + "endline": 321, + "complexity": 3, + "classname": "ByteTrack", + "lineno": 311, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_first_association", + "endline": 347, + "complexity": 3, + "classname": "ByteTrack", + "lineno": 323, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "_second_association", + "endline": 384, + "complexity": 7, + "classname": "ByteTrack", + "lineno": 349, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "_unconfirmed_and_init_new", + "endline": 416, + "complexity": 7, + "classname": "ByteTrack", + "lineno": 386, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "_remove_stale_lost_tracks", + "endline": 450, + "complexity": 7, + "classname": "ByteTrack", + "lineno": 418, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_update_state", + "endline": 468, + "complexity": 3, + "classname": "ByteTrack", + "lineno": 451, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "function", + "rank": "A", + "name": "joint_tracks", + "endline": 495, + "complexity": 3, + "lineno": 472, + "col_offset": 0, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "update_with_tensors", + "endline": 237, + "complexity": 3, + "classname": "ByteTrack", + "lineno": 196, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_build_stracks", + "endline": 308, + "complexity": 3, + "classname": "ByteTrack", + "lineno": 294, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_separate_tracks", + "endline": 321, + "complexity": 3, + "classname": "ByteTrack", + "lineno": 311, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_first_association", + "endline": 347, + "complexity": 3, + "classname": "ByteTrack", + "lineno": 323, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_update_state", + "endline": 468, + "complexity": 3, + "classname": "ByteTrack", + "lineno": 451, + "col_offset": 4, + "closures": [] + }, + { + "type": "class", + "rank": "A", + "name": "_ByteTrackConfig", + "endline": 24, + "complexity": 1, + "lineno": 19, + "col_offset": 0, + "methods": [] + }, + { + "type": "class", + "rank": "A", + "name": "_ByteTrackResources", + "endline": 32, + "complexity": 1, + "lineno": 28, + "col_offset": 0, + "methods": [] + }, + { + "type": "class", + "rank": "A", + "name": "_ByteTrackState", + "endline": 41, + "complexity": 1, + "lineno": 36, + "col_offset": 0, + "methods": [] + }, + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 101, + "complexity": 1, + "classname": "ByteTrack", + "lineno": 83, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "frame_id", + "endline": 105, + "complexity": 1, + "classname": "ByteTrack", + "lineno": 104, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "frame_id", + "endline": 109, + "complexity": 1, + "classname": "ByteTrack", + "lineno": 108, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "reset", + "endline": 194, + "complexity": 1, + "classname": "ByteTrack", + "lineno": 185, + "col_offset": 4, + "closures": [] + } + ], + "src\\supervision\\tracker\\byte_tracker\\kalman_filter.py": [ + { + "type": "class", + "rank": "A", + "name": "KalmanFilter", + "endline": 193, + "complexity": 2, + "lineno": 8, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 30, + "complexity": 2, + "classname": "KalmanFilter", + "lineno": 21, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "initiate", + "endline": 59, + "complexity": 1, + "classname": "KalmanFilter", + "lineno": 32, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "predict", + "endline": 94, + "complexity": 1, + "classname": "KalmanFilter", + "lineno": 61, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "project", + "endline": 121, + "complexity": 1, + "classname": "KalmanFilter", + "lineno": 96, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "multi_predict", + "endline": 158, + "complexity": 2, + "classname": "KalmanFilter", + "lineno": 123, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "update", + "endline": 193, + "complexity": 1, + "classname": "KalmanFilter", + "lineno": 160, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 30, + "complexity": 2, + "classname": "KalmanFilter", + "lineno": 21, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "multi_predict", + "endline": 158, + "complexity": 2, + "classname": "KalmanFilter", + "lineno": 123, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "initiate", + "endline": 59, + "complexity": 1, + "classname": "KalmanFilter", + "lineno": 32, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "predict", + "endline": 94, + "complexity": 1, + "classname": "KalmanFilter", + "lineno": 61, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "project", + "endline": 121, + "complexity": 1, + "classname": "KalmanFilter", + "lineno": 96, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "update", + "endline": 193, + "complexity": 1, + "classname": "KalmanFilter", + "lineno": 160, + "col_offset": 4, + "closures": [] + } + ], + "src\\supervision\\tracker\\byte_tracker\\matching.py": [ + { + "type": "function", + "rank": "B", + "name": "iou_distance", + "endline": 62, + "complexity": 8, + "lineno": 44, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "fuse_score", + "endline": 75, + "complexity": 3, + "lineno": 65, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "linear_assignment", + "endline": 41, + "complexity": 2, + "lineno": 27, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "indices_to_matches", + "endline": 24, + "complexity": 1, + "lineno": 15, + "col_offset": 0, + "closures": [] + } + ], + "src\\supervision\\tracker\\byte_tracker\\single_object_track.py": [ + { + "type": "method", + "rank": "B", + "name": "multi_predict", + "endline": 182, + "complexity": 7, + "classname": "STrack", + "lineno": 165, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "update", + "endline": 239, + "complexity": 6, + "classname": "STrack", + "lineno": 215, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "predict", + "endline": 161, + "complexity": 5, + "classname": "STrack", + "lineno": 153, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "re_activate", + "endline": 213, + "complexity": 4, + "classname": "STrack", + "lineno": 202, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "activate", + "endline": 200, + "complexity": 3, + "classname": "STrack", + "lineno": 184, + "col_offset": 4, + "closures": [] + }, + { + "type": "class", + "rank": "A", + "name": "_STrackData", + "endline": 41, + "complexity": 2, + "lineno": 21, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "__post_init__", + "endline": 41, + "complexity": 1, + "classname": "_STrackData", + "lineno": 38, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "class", + "rank": "A", + "name": "STrack", + "endline": 288, + "complexity": 2, + "lineno": 44, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 58, + "complexity": 1, + "classname": "STrack", + "lineno": 45, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "state", + "endline": 63, + "complexity": 1, + "classname": "STrack", + "lineno": 62, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "state", + "endline": 67, + "complexity": 1, + "classname": "STrack", + "lineno": 66, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "is_activated", + "endline": 71, + "complexity": 1, + "classname": "STrack", + "lineno": 70, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "is_activated", + "endline": 75, + "complexity": 1, + "classname": "STrack", + "lineno": 74, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "start_frame", + "endline": 79, + "complexity": 1, + "classname": "STrack", + "lineno": 78, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "start_frame", + "endline": 83, + "complexity": 1, + "classname": "STrack", + "lineno": 82, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "frame_id", + "endline": 87, + "complexity": 1, + "classname": "STrack", + "lineno": 86, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "frame_id", + "endline": 91, + "complexity": 1, + "classname": "STrack", + "lineno": 90, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "kalman_filter", + "endline": 95, + "complexity": 1, + "classname": "STrack", + "lineno": 94, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "kalman_filter", + "endline": 99, + "complexity": 1, + "classname": "STrack", + "lineno": 98, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "mean", + "endline": 103, + "complexity": 1, + "classname": "STrack", + "lineno": 102, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "mean", + "endline": 107, + "complexity": 1, + "classname": "STrack", + "lineno": 106, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "covariance", + "endline": 111, + "complexity": 1, + "classname": "STrack", + "lineno": 110, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "covariance", + "endline": 115, + "complexity": 1, + "classname": "STrack", + "lineno": 114, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "score", + "endline": 119, + "complexity": 1, + "classname": "STrack", + "lineno": 118, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "score", + "endline": 123, + "complexity": 1, + "classname": "STrack", + "lineno": 122, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "tracklet_len", + "endline": 127, + "complexity": 1, + "classname": "STrack", + "lineno": 126, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "tracklet_len", + "endline": 131, + "complexity": 1, + "classname": "STrack", + "lineno": 130, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "minimum_consecutive_frames", + "endline": 135, + "complexity": 1, + "classname": "STrack", + "lineno": 134, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "internal_track_id", + "endline": 139, + "complexity": 1, + "classname": "STrack", + "lineno": 138, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "internal_track_id", + "endline": 143, + "complexity": 1, + "classname": "STrack", + "lineno": 142, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "external_track_id", + "endline": 147, + "complexity": 1, + "classname": "STrack", + "lineno": 146, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "external_track_id", + "endline": 151, + "complexity": 1, + "classname": "STrack", + "lineno": 150, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "predict", + "endline": 161, + "complexity": 5, + "classname": "STrack", + "lineno": 153, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "multi_predict", + "endline": 182, + "complexity": 7, + "classname": "STrack", + "lineno": 165, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "activate", + "endline": 200, + "complexity": 3, + "classname": "STrack", + "lineno": 184, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "re_activate", + "endline": 213, + "complexity": 4, + "classname": "STrack", + "lineno": 202, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "update", + "endline": 239, + "complexity": 6, + "classname": "STrack", + "lineno": 215, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "tlwh", + "endline": 251, + "complexity": 2, + "classname": "STrack", + "lineno": 242, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "tlbr", + "endline": 260, + "complexity": 1, + "classname": "STrack", + "lineno": 254, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "tlwh_to_xyah", + "endline": 270, + "complexity": 1, + "classname": "STrack", + "lineno": 263, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "to_xyah", + "endline": 273, + "complexity": 1, + "classname": "STrack", + "lineno": 272, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "tlbr_to_tlwh", + "endline": 279, + "complexity": 1, + "classname": "STrack", + "lineno": 276, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "tlwh_to_tlbr", + "endline": 285, + "complexity": 1, + "classname": "STrack", + "lineno": 282, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__repr__", + "endline": 288, + "complexity": 1, + "classname": "STrack", + "lineno": 287, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "name": "tlwh", + "endline": 251, + "complexity": 2, + "classname": "STrack", + "lineno": 242, + "col_offset": 4, + "closures": [] + }, + { + "type": "class", + "rank": "A", + "name": "TrackState", + "endline": 17, + "complexity": 1, + "lineno": 13, + "col_offset": 0, + "methods": [] + }, + { + "type": "method", + "rank": "A", + "name": "__post_init__", + "endline": 41, + "complexity": 1, + "classname": "_STrackData", + "lineno": 38, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 58, + "complexity": 1, + "classname": "STrack", + "lineno": 45, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "state", + "endline": 63, + "complexity": 1, + "classname": "STrack", + "lineno": 62, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "state", + "endline": 67, + "complexity": 1, + "classname": "STrack", + "lineno": 66, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "is_activated", + "endline": 71, + "complexity": 1, + "classname": "STrack", + "lineno": 70, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "is_activated", + "endline": 75, + "complexity": 1, + "classname": "STrack", + "lineno": 74, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "start_frame", + "endline": 79, + "complexity": 1, + "classname": "STrack", + "lineno": 78, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "start_frame", + "endline": 83, + "complexity": 1, + "classname": "STrack", + "lineno": 82, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "frame_id", + "endline": 87, + "complexity": 1, + "classname": "STrack", + "lineno": 86, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "frame_id", + "endline": 91, + "complexity": 1, + "classname": "STrack", + "lineno": 90, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "kalman_filter", + "endline": 95, + "complexity": 1, + "classname": "STrack", + "lineno": 94, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "kalman_filter", + "endline": 99, + "complexity": 1, + "classname": "STrack", + "lineno": 98, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "mean", + "endline": 103, + "complexity": 1, + "classname": "STrack", + "lineno": 102, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "mean", + "endline": 107, + "complexity": 1, + "classname": "STrack", + "lineno": 106, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "covariance", + "endline": 111, + "complexity": 1, + "classname": "STrack", + "lineno": 110, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "covariance", + "endline": 115, + "complexity": 1, + "classname": "STrack", + "lineno": 114, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "score", + "endline": 119, + "complexity": 1, + "classname": "STrack", + "lineno": 118, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "score", + "endline": 123, + "complexity": 1, + "classname": "STrack", + "lineno": 122, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "tracklet_len", + "endline": 127, + "complexity": 1, + "classname": "STrack", + "lineno": 126, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "tracklet_len", + "endline": 131, + "complexity": 1, + "classname": "STrack", + "lineno": 130, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "minimum_consecutive_frames", + "endline": 135, + "complexity": 1, + "classname": "STrack", + "lineno": 134, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "internal_track_id", + "endline": 139, + "complexity": 1, + "classname": "STrack", + "lineno": 138, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "internal_track_id", + "endline": 143, + "complexity": 1, + "classname": "STrack", + "lineno": 142, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "external_track_id", + "endline": 147, + "complexity": 1, + "classname": "STrack", + "lineno": 146, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "external_track_id", + "endline": 151, + "complexity": 1, + "classname": "STrack", + "lineno": 150, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "tlbr", + "endline": 260, + "complexity": 1, + "classname": "STrack", + "lineno": 254, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "tlwh_to_xyah", + "endline": 270, + "complexity": 1, + "classname": "STrack", + "lineno": 263, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "to_xyah", + "endline": 273, + "complexity": 1, + "classname": "STrack", + "lineno": 272, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "tlbr_to_tlwh", + "endline": 279, + "complexity": 1, + "classname": "STrack", + "lineno": 276, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "tlwh_to_tlbr", + "endline": 285, + "complexity": 1, + "classname": "STrack", + "lineno": 282, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__repr__", + "endline": 288, + "complexity": 1, + "classname": "STrack", + "lineno": 287, + "col_offset": 4, + "closures": [] + } + ], + "src\\supervision\\tracker\\byte_tracker\\utils.py": [ + { + "type": "class", + "rank": "A", + "name": "IdCounter", + "endline": 37, + "complexity": 2, + "lineno": 4, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 18, + "complexity": 2, + "classname": "IdCounter", + "lineno": 5, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "reset", + "endline": 22, + "complexity": 1, + "classname": "IdCounter", + "lineno": 20, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "new_id", + "endline": 33, + "complexity": 1, + "classname": "IdCounter", + "lineno": 24, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "NO_ID", + "endline": 37, + "complexity": 1, + "classname": "IdCounter", + "lineno": 36, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 18, + "complexity": 2, + "classname": "IdCounter", + "lineno": 5, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "reset", + "endline": 22, + "complexity": 1, + "classname": "IdCounter", + "lineno": 20, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "new_id", + "endline": 33, + "complexity": 1, + "classname": "IdCounter", + "lineno": 24, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "NO_ID", + "endline": 37, + "complexity": 1, + "classname": "IdCounter", + "lineno": 36, + "col_offset": 4, + "closures": [] + } + ], + "src\\supervision\\utils\\conversion.py": [ + { + "type": "function", + "rank": "A", + "name": "images_to_cv2", + "endline": 145, + "complexity": 3, + "lineno": 127, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "ensure_cv2_image_for_class_method", + "endline": 40, + "complexity": 1, + "lineno": 16, + "col_offset": 0, + "closures": [ + { + "type": "function", + "rank": "A", + "name": "wrapper", + "endline": 38, + "complexity": 3, + "lineno": 28, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "function", + "rank": "A", + "name": "ensure_cv2_image_for_annotation", + "endline": 51, + "complexity": 1, + "lineno": 48, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "ensure_cv2_image_for_standalone_function", + "endline": 76, + "complexity": 1, + "lineno": 54, + "col_offset": 0, + "closures": [ + { + "type": "function", + "rank": "A", + "name": "wrapper", + "endline": 74, + "complexity": 3, + "lineno": 65, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "function", + "rank": "A", + "name": "ensure_pil_image_for_class_method", + "endline": 102, + "complexity": 1, + "lineno": 79, + "col_offset": 0, + "closures": [ + { + "type": "function", + "rank": "A", + "name": "wrapper", + "endline": 100, + "complexity": 3, + "lineno": 90, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "function", + "rank": "A", + "name": "ensure_pil_image_for_annotation", + "endline": 113, + "complexity": 1, + "lineno": 110, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "ensure_cv2_image_for_processing", + "endline": 124, + "complexity": 1, + "lineno": 121, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "pillow_to_cv2", + "endline": 163, + "complexity": 1, + "lineno": 148, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "cv2_to_pillow", + "endline": 178, + "complexity": 1, + "lineno": 166, + "col_offset": 0, + "closures": [] + } + ], + "src\\supervision\\utils\\file.py": [ + { + "type": "function", + "rank": "C", + "name": "list_files_with_extensions", + "endline": 89, + "complexity": 12, + "lineno": 22, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "read_txt_file", + "endline": 126, + "complexity": 5, + "lineno": 92, + "col_offset": 0, + "closures": [] + }, + { + "type": "class", + "rank": "A", + "name": "NumpyJsonEncoder", + "endline": 19, + "complexity": 5, + "lineno": 11, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "default", + "endline": 19, + "complexity": 4, + "classname": "NumpyJsonEncoder", + "lineno": 12, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "name": "default", + "endline": 19, + "complexity": 4, + "classname": "NumpyJsonEncoder", + "lineno": 12, + "col_offset": 4, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "save_text_file", + "endline": 139, + "complexity": 2, + "lineno": 129, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "read_json_file", + "endline": 168, + "complexity": 1, + "lineno": 142, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "save_json_file", + "endline": 183, + "complexity": 1, + "lineno": 171, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "read_yaml_file", + "endline": 198, + "complexity": 1, + "lineno": 186, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "save_yaml_file", + "endline": 211, + "complexity": 1, + "lineno": 201, + "col_offset": 0, + "closures": [] + } + ], + "src\\supervision\\utils\\image.py": [ + { + "type": "function", + "rank": "B", + "name": "create_tiles", + "endline": 703, + "complexity": 9, + "lineno": 565, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "B", + "name": "_establish_grid_size", + "endline": 753, + "complexity": 8, + "lineno": 739, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "B", + "name": "overlay_image", + "endline": 352, + "complexity": 6, + "lineno": 283, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "_draw_texts", + "endline": 857, + "complexity": 5, + "lineno": 816, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "crop_image", + "endline": 90, + "complexity": 4, + "lineno": 34, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "resize_image", + "endline": 206, + "complexity": 4, + "lineno": 146, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "get_image_resolution_wh", + "endline": 477, + "complexity": 4, + "lineno": 434, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "_prepare_default_titles_anchors", + "endline": 876, + "complexity": 4, + "lineno": 860, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "scale_image", + "endline": 142, + "complexity": 3, + "lineno": 95, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "tint_image", + "endline": 400, + "complexity": 3, + "lineno": 356, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "_negotiate_tiles_format", + "endline": 710, + "complexity": 3, + "lineno": 706, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "_calculate_aggregated_images_shape", + "endline": 718, + "complexity": 3, + "lineno": 713, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "_negotiate_grid_size", + "endline": 764, + "complexity": 3, + "lineno": 756, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "_generate_tiles", + "endline": 812, + "complexity": 3, + "lineno": 767, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "_merge_tiles_elements", + "endline": 914, + "complexity": 3, + "lineno": 879, + "col_offset": 0, + "closures": [] + }, + { + "type": "class", + "rank": "A", + "name": "ImageSink", + "endline": 557, + "complexity": 3, + "lineno": 481, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 519, + "complexity": 1, + "classname": "ImageSink", + "lineno": 482, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__enter__", + "endline": 529, + "complexity": 3, + "classname": "ImageSink", + "lineno": 521, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "save_image", + "endline": 549, + "complexity": 2, + "classname": "ImageSink", + "lineno": 531, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__exit__", + "endline": 557, + "complexity": 1, + "classname": "ImageSink", + "lineno": 551, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "name": "__enter__", + "endline": 529, + "complexity": 3, + "classname": "ImageSink", + "lineno": 521, + "col_offset": 4, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "letterbox_image", + "endline": 275, + "complexity": 2, + "lineno": 210, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "_aggregate_images_shape", + "endline": 736, + "complexity": 2, + "lineno": 728, + "col_offset": 0, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "save_image", + "endline": 549, + "complexity": 2, + "classname": "ImageSink", + "lineno": 531, + "col_offset": 4, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "grayscale_image", + "endline": 431, + "complexity": 1, + "lineno": 404, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "_generate_color_image", + "endline": 923, + "complexity": 1, + "lineno": 918, + "col_offset": 0, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 519, + "complexity": 1, + "classname": "ImageSink", + "lineno": 482, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__exit__", + "endline": 557, + "complexity": 1, + "classname": "ImageSink", + "lineno": 551, + "col_offset": 4, + "closures": [] + } + ], + "src\\supervision\\utils\\internal.py": [ + { + "type": "function", + "rank": "B", + "name": "get_instance_variables", + "endline": 208, + "complexity": 8, + "lineno": 169, + "col_offset": 0, + "closures": [] + }, + { + "type": "class", + "rank": "A", + "name": "classproperty", + "endline": 166, + "complexity": 3, + "lineno": 133, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 150, + "complexity": 1, + "classname": "classproperty", + "lineno": 145, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__get__", + "endline": 166, + "complexity": 2, + "classname": "classproperty", + "lineno": 152, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "name": "__get__", + "endline": 166, + "complexity": 2, + "classname": "classproperty", + "lineno": 152, + "col_offset": 4, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "format_warning", + "endline": 32, + "complexity": 1, + "lineno": 21, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "warn_deprecated", + "endline": 50, + "complexity": 1, + "lineno": 43, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "deprecated_parameter", + "endline": 127, + "complexity": 1, + "lineno": 53, + "col_offset": 0, + "closures": [ + { + "type": "function", + "rank": "A", + "name": "decorator", + "endline": 125, + "complexity": 1, + "lineno": 102, + "col_offset": 4, + "closures": [ + { + "type": "function", + "rank": "A", + "name": "wrapper", + "endline": 123, + "complexity": 4, + "lineno": 104, + "col_offset": 8, + "closures": [] + } + ] + } + ] + }, + { + "type": "class", + "rank": "A", + "name": "SupervisionWarnings", + "endline": 18, + "complexity": 1, + "lineno": 11, + "col_offset": 0, + "methods": [] + }, + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 150, + "complexity": 1, + "classname": "classproperty", + "lineno": 145, + "col_offset": 4, + "closures": [] + } + ], + "src\\supervision\\utils\\iterables.py": [ + { + "type": "function", + "rank": "A", + "name": "create_batches", + "endline": 42, + "complexity": 4, + "lineno": 7, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "find_duplicates", + "endline": 103, + "complexity": 3, + "lineno": 76, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "fill", + "endline": 73, + "complexity": 1, + "lineno": 45, + "col_offset": 0, + "closures": [] + } + ], + "src\\supervision\\utils\\logger.py": [ + { + "type": "function", + "rank": "A", + "name": "_get_logger", + "endline": 63, + "complexity": 3, + "lineno": 8, + "col_offset": 0, + "closures": [] + } + ], + "src\\supervision\\utils\\notebook.py": [ + { + "type": "function", + "rank": "B", + "name": "plot_images_grid", + "endline": 117, + "complexity": 9, + "lineno": 50, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "plot_image", + "endline": 47, + "complexity": 3, + "lineno": 11, + "col_offset": 0, + "closures": [] + } + ], + "src\\supervision\\utils\\video.py": [ + { + "type": "function", + "rank": "B", + "name": "_validate_and_setup_video", + "endline": 228, + "complexity": 9, + "lineno": 207, + "col_offset": 0, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "_drain_and_cleanup", + "endline": 355, + "complexity": 8, + "classname": "_VideoProcessor", + "lineno": 336, + "col_offset": 4, + "closures": [] + }, + { + "type": "function", + "rank": "B", + "name": "_mux_audio", + "endline": 204, + "complexity": 7, + "lineno": 140, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "B", + "name": "get_video_frames_generator", + "endline": 280, + "complexity": 7, + "lineno": 231, + "col_offset": 0, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_total_frames", + "endline": 369, + "complexity": 4, + "classname": "_VideoProcessor", + "lineno": 366, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_process_frames", + "endline": 399, + "complexity": 4, + "classname": "_VideoProcessor", + "lineno": 382, + "col_offset": 4, + "closures": [] + }, + { + "type": "class", + "rank": "A", + "name": "VideoInfo", + "endline": 73, + "complexity": 3, + "lineno": 26, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "from_video_path", + "endline": 69, + "complexity": 2, + "classname": "VideoInfo", + "lineno": 59, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "resolution_wh", + "endline": 73, + "complexity": 1, + "classname": "VideoInfo", + "lineno": 72, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "class", + "rank": "A", + "name": "VideoSink", + "endline": 137, + "complexity": 3, + "lineno": 76, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 103, + "complexity": 1, + "classname": "VideoSink", + "lineno": 99, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__enter__", + "endline": 117, + "complexity": 2, + "classname": "VideoSink", + "lineno": 105, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "write_frame", + "endline": 128, + "complexity": 2, + "classname": "VideoSink", + "lineno": 119, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__exit__", + "endline": 137, + "complexity": 2, + "classname": "VideoSink", + "lineno": 130, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "class", + "rank": "A", + "name": "_VideoProcessor", + "endline": 421, + "complexity": 3, + "lineno": 283, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 318, + "complexity": 1, + "classname": "_VideoProcessor", + "lineno": 284, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_reader_thread", + "endline": 327, + "complexity": 2, + "classname": "_VideoProcessor", + "lineno": 320, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_writer_thread", + "endline": 334, + "complexity": 3, + "classname": "_VideoProcessor", + "lineno": 329, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "B", + "name": "_drain_and_cleanup", + "endline": 355, + "complexity": 8, + "classname": "_VideoProcessor", + "lineno": 336, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_mux_audio_if_needed", + "endline": 364, + "complexity": 2, + "classname": "_VideoProcessor", + "lineno": 357, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_total_frames", + "endline": 369, + "complexity": 4, + "classname": "_VideoProcessor", + "lineno": 366, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_start_workers", + "endline": 373, + "complexity": 1, + "classname": "_VideoProcessor", + "lineno": 371, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_setup_progress_bar", + "endline": 379, + "complexity": 1, + "classname": "_VideoProcessor", + "lineno": 375, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_process_frames", + "endline": 399, + "complexity": 4, + "classname": "_VideoProcessor", + "lineno": 382, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "run", + "endline": 421, + "complexity": 2, + "classname": "_VideoProcessor", + "lineno": 401, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "name": "_writer_thread", + "endline": 334, + "complexity": 3, + "classname": "_VideoProcessor", + "lineno": 329, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "fps", + "endline": 548, + "complexity": 3, + "classname": "FPSMonitor", + "lineno": 538, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "from_video_path", + "endline": 69, + "complexity": 2, + "classname": "VideoInfo", + "lineno": 59, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__enter__", + "endline": 117, + "complexity": 2, + "classname": "VideoSink", + "lineno": 105, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "write_frame", + "endline": 128, + "complexity": 2, + "classname": "VideoSink", + "lineno": 119, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__exit__", + "endline": 137, + "complexity": 2, + "classname": "VideoSink", + "lineno": 130, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_reader_thread", + "endline": 327, + "complexity": 2, + "classname": "_VideoProcessor", + "lineno": 320, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_mux_audio_if_needed", + "endline": 364, + "complexity": 2, + "classname": "_VideoProcessor", + "lineno": 357, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "run", + "endline": 421, + "complexity": 2, + "classname": "_VideoProcessor", + "lineno": 401, + "col_offset": 4, + "closures": [] + }, + { + "type": "class", + "rank": "A", + "name": "FPSMonitor", + "endline": 560, + "complexity": 2, + "lineno": 510, + "col_offset": 0, + "methods": [ + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 535, + "complexity": 1, + "classname": "FPSMonitor", + "lineno": 515, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "fps", + "endline": 548, + "complexity": 3, + "classname": "FPSMonitor", + "lineno": 538, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "tick", + "endline": 554, + "complexity": 1, + "classname": "FPSMonitor", + "lineno": 550, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "reset", + "endline": 560, + "complexity": 1, + "classname": "FPSMonitor", + "lineno": 556, + "col_offset": 4, + "closures": [] + } + ] + }, + { + "type": "function", + "rank": "A", + "name": "process_video", + "endline": 507, + "complexity": 1, + "lineno": 424, + "col_offset": 0, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "resolution_wh", + "endline": 73, + "complexity": 1, + "classname": "VideoInfo", + "lineno": 72, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 103, + "complexity": 1, + "classname": "VideoSink", + "lineno": 99, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 318, + "complexity": 1, + "classname": "_VideoProcessor", + "lineno": 284, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_start_workers", + "endline": 373, + "complexity": 1, + "classname": "_VideoProcessor", + "lineno": 371, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "_setup_progress_bar", + "endline": 379, + "complexity": 1, + "classname": "_VideoProcessor", + "lineno": 375, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "__init__", + "endline": 535, + "complexity": 1, + "classname": "FPSMonitor", + "lineno": 515, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "tick", + "endline": 554, + "complexity": 1, + "classname": "FPSMonitor", + "lineno": 550, + "col_offset": 4, + "closures": [] + }, + { + "type": "method", + "rank": "A", + "name": "reset", + "endline": 560, + "complexity": 1, + "classname": "FPSMonitor", + "lineno": 556, + "col_offset": 4, + "closures": [] + } + ], + "src\\supervision\\validators\\__init__.py": [ + { + "type": "function", + "rank": "B", + "name": "_validate_data", + "endline": 204, + "complexity": 9, + "lineno": 191, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "B", + "name": "_validate_mask", + "endline": 62, + "complexity": 8, + "lineno": 37, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "B", + "name": "_validate_keypoint_confidence", + "endline": 147, + "complexity": 7, + "lineno": 129, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "B", + "name": "_validate_visible", + "endline": 255, + "complexity": 7, + "lineno": 236, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "B", + "name": "_validate_resolution", + "endline": 354, + "complexity": 7, + "lineno": 334, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "_validate_xyxy", + "endline": 24, + "complexity": 4, + "lineno": 10, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "_validate_class_id", + "endline": 93, + "complexity": 4, + "lineno": 84, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "_validate_confidence", + "endline": 116, + "complexity": 4, + "lineno": 106, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "_validate_tracker_id", + "endline": 178, + "complexity": 4, + "lineno": 169, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "_validate_xy", + "endline": 223, + "complexity": 4, + "lineno": 216, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "_validate_keypoints_fields", + "endline": 309, + "complexity": 4, + "lineno": 292, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "validate_xyxy", + "endline": 34, + "complexity": 1, + "lineno": 33, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "validate_mask", + "endline": 81, + "complexity": 1, + "lineno": 80, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "validate_class_id", + "endline": 103, + "complexity": 1, + "lineno": 102, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "validate_confidence", + "endline": 126, + "complexity": 1, + "lineno": 125, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "validate_key_point_confidence", + "endline": 157, + "complexity": 1, + "lineno": 156, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "validate_keypoint_confidence", + "endline": 166, + "complexity": 1, + "lineno": 165, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "validate_tracker_id", + "endline": 188, + "complexity": 1, + "lineno": 187, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "validate_data", + "endline": 213, + "complexity": 1, + "lineno": 212, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "validate_xy", + "endline": 233, + "complexity": 1, + "lineno": 232, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "_validate_detections_fields", + "endline": 273, + "complexity": 1, + "lineno": 259, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "validate_detections_fields", + "endline": 289, + "complexity": 1, + "lineno": 281, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "validate_key_points_fields", + "endline": 320, + "complexity": 1, + "lineno": 317, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "validate_keypoints_fields", + "endline": 331, + "complexity": 1, + "lineno": 328, + "col_offset": 0, + "closures": [] + }, + { + "type": "function", + "rank": "A", + "name": "validate_resolution", + "endline": 363, + "complexity": 1, + "lineno": 362, + "col_offset": 0, + "closures": [] + } + ] +} \ No newline at end of file diff --git a/metrics-after-radon/cc_por_arquivo_depois.csv b/metrics-after-radon/cc_por_arquivo_depois.csv new file mode 100644 index 0000000000..3ad47ee5b9 --- /dev/null +++ b/metrics-after-radon/cc_por_arquivo_depois.csv @@ -0,0 +1,59 @@ +arquivo,funcoes,cc_media,cc_max,cc_soma,pior_rank,pior_classe,pior_funcao,pior_linha_ini +src/supervision/annotators/base.py,1,1.0,1,1,A,BaseAnnotator,annotate,9 +src/supervision/geometry/core.py,11,1.0,1,11,A,Position,list,25 +src/supervision/metrics/core.py,3,1.0,1,3,A,Metric,update,14 +src/supervision/tracker/byte_tracker/utils.py,4,1.25,2,5,A,IdCounter,__init__,5 +src/supervision/detection/tools/polygon_zone.py,22,1.27,4,28,A,PolygonZoneAnnotator,annotate,242 +src/supervision/tracker/byte_tracker/kalman_filter.py,6,1.33,2,8,A,KalmanFilter,__init__,21 +src/supervision/assets/list.py,2,1.5,2,3,A,Assets,list,19 +src/supervision/tracker/byte_tracker/single_object_track.py,37,1.57,7,58,B,STrack,multi_predict,165 +src/supervision/utils/conversion.py,12,1.67,3,20,A,,images_to_cv2,127 +src/supervision/detection/utils/boxes.py,9,1.89,4,17,A,,spread_out_boxes,347 +src/supervision/classification/core.py,8,2.0,4,16,A,,_validate_confidence,22 +src/supervision/metrics/utils/utils.py,1,2.0,2,2,A,,ensure_pandas_installed,1 +src/supervision/draw/color.py,30,2.2,8,66,B,Color,from_hex,106 +src/supervision/utils/internal.py,8,2.38,8,19,B,,get_instance_variables,169 +src/supervision/draw/utils.py,10,2.4,9,24,B,,draw_image,301 +src/supervision/detection/utils/converters.py,19,2.47,6,47,B,,_base48_decode,332 +src/supervision/dataset/utils.py,8,2.62,4,21,A,,map_detections_class_id,108 +src/supervision/utils/iterables.py,3,2.67,4,8,A,,create_batches,7 +src/supervision/detection/tools/transformers.py,8,2.75,5,22,A,,process_transformers_v4_segmentation_result,43 +src/supervision/utils/video.py,24,2.83,9,68,B,,_validate_and_setup_video,207 +src/supervision/detection/tools/inference_slicer.py,31,2.9,12,90,C,InferenceSlicer,_run_callback,443 +src/supervision/detection/tools/json_sink.py,9,3.0,10,27,B,JSONSink,parse_detection_data,148 +src/supervision/geometry/utils.py,1,3.0,3,3,A,,get_polygon_center,7 +src/supervision/utils/logger.py,1,3.0,3,3,A,,_get_logger,8 +src/supervision/validators/__init__.py,25,3.04,9,76,B,,_validate_data,191 +src/supervision/detection/tools/csv_sink.py,10,3.1,9,31,B,CSVSink,parse_detection_data,145 +src/supervision/annotators/core.py,88,3.18,11,280,C,PercentageBarAnnotator,calculate_border_coordinates,2795 +src/supervision/metrics/mean_average_recall.py,27,3.3,11,89,C,MeanAverageRecall,_compute,468 +src/supervision/detection/line_zone.py,21,3.38,12,71,C,LineZone,trigger,192 +src/supervision/utils/file.py,8,3.38,12,27,C,,list_files_with_extensions,22 +src/supervision/utils/image.py,23,3.39,9,78,B,,create_tiles,565 +src/supervision/detection/utils/masks.py,10,3.4,6,34,B,,filter_segments_by_distance,344 +src/supervision/metrics/recall.py,26,3.46,11,90,C,Recall,_compute,285 +src/supervision/tracker/byte_tracker/matching.py,4,3.5,8,14,B,,iou_distance,44 +src/supervision/dataset/core.py,27,3.52,13,95,C,DetectionDataset,merge,231 +src/supervision/annotators/utils.py,18,3.56,11,64,C,,resolve_text_background_xyxy,80 +src/supervision/metrics/f1_score.py,26,3.65,15,95,C,F1Score,_compute,152 +src/supervision/tracker/byte_tracker/core.py,17,3.82,7,65,B,,remove_duplicate_tracks,518 +src/supervision/assets/downloader.py,2,4.0,6,8,B,,download_assets,41 +src/supervision/metrics/utils/object_size.py,5,4.0,6,20,B,,get_detection_size_category,214 +src/supervision/detection/compact_mask.py,25,4.04,12,101,C,,_rle_split_cols,49 +src/supervision/metrics/precision.py,25,4.04,15,101,C,Precision,_compute,463 +src/supervision/detection/utils/iou_and_nms.py,34,4.24,14,144,C,,mask_iou_batch,744 +src/supervision/detection/utils/vlms.py,2,4.5,6,9,B,,edit_distance,4 +src/supervision/dataset/formats/coco.py,13,4.54,9,59,B,,coco_annotations_to_detections,146 +src/supervision/metrics/detection.py,22,4.55,15,100,C,ConfusionMatrix,plot,688 +src/supervision/dataset/formats/yolo.py,14,4.64,14,65,C,,_extract_class_names,70 +src/supervision/detection/core.py,45,4.78,20,215,C,Detections,from_vlm,1431 +src/supervision/dataset/formats/pascal_voc.py,7,4.86,12,34,C,,detections_from_xml_obj,235 +src/supervision/key_points/annotators.py,20,5.15,16,103,C,EdgeAnnotator,annotate,141 +src/supervision/metrics/mean_average_precision.py,49,5.24,28,257,D,COCOEvaluator,_evaluate_image,822 +src/supervision/key_points/core.py,26,5.35,17,139,C,KeyPoints,_normalize_getitem_index,925 +src/supervision/utils/notebook.py,2,6.0,9,12,B,,plot_images_grid,50 +src/supervision/detection/vlm.py,22,6.05,16,133,C,,from_qwen_2_5_vl,305 +src/supervision/detection/tools/smoother.py,4,6.5,9,26,B,DetectionsSmoother,get_track,133 +src/supervision/detection/utils/internal.py,12,6.75,15,81,C,,process_roboflow_result,81 +src/supervision/detection/utils/polygons.py,2,8.0,9,16,B,,filter_polygons_by_area,8 +src/supervision/key_points/skeletons.py,0,,,,,,, diff --git a/metrics-after-radon/cc_por_funcao_depois.csv b/metrics-after-radon/cc_por_funcao_depois.csv new file mode 100644 index 0000000000..4515fe06f2 --- /dev/null +++ b/metrics-after-radon/cc_por_funcao_depois.csv @@ -0,0 +1,930 @@ +arquivo,tipo,classe,nome,rank_cc,complexity,linha_ini,linha_fim +src/supervision/annotators/base.py,method,BaseAnnotator,annotate,A,1,9,12 +src/supervision/annotators/core.py,function,,_normalize_color_input,A,1,59,59 +src/supervision/annotators/core.py,function,,_normalize_color_input,A,1,63,65 +src/supervision/annotators/core.py,method,_BaseLabelAnnotator,__init__,A,1,102,145 +src/supervision/annotators/core.py,method,_BaseLabelAnnotator,color,A,1,149,150 +src/supervision/annotators/core.py,method,_BaseLabelAnnotator,color,A,1,153,154 +src/supervision/annotators/core.py,method,_BaseLabelAnnotator,color_lookup,A,1,157,158 +src/supervision/annotators/core.py,method,_BaseLabelAnnotator,color_lookup,A,1,161,162 +src/supervision/annotators/core.py,method,_BaseLabelAnnotator,text_color,A,1,165,166 +src/supervision/annotators/core.py,method,_BaseLabelAnnotator,text_color,A,1,169,170 +src/supervision/annotators/core.py,method,_BaseLabelAnnotator,text_padding,A,1,173,174 +src/supervision/annotators/core.py,method,_BaseLabelAnnotator,text_padding,A,1,177,178 +src/supervision/annotators/core.py,method,_BaseLabelAnnotator,text_anchor,A,1,181,182 +src/supervision/annotators/core.py,method,_BaseLabelAnnotator,text_anchor,A,1,185,186 +src/supervision/annotators/core.py,method,_BaseLabelAnnotator,text_offset,A,1,189,190 +src/supervision/annotators/core.py,method,_BaseLabelAnnotator,text_offset,A,1,193,194 +src/supervision/annotators/core.py,method,_BaseLabelAnnotator,border_radius,A,1,197,198 +src/supervision/annotators/core.py,method,_BaseLabelAnnotator,border_radius,A,1,201,202 +src/supervision/annotators/core.py,method,_BaseLabelAnnotator,smart_position,A,1,205,206 +src/supervision/annotators/core.py,method,_BaseLabelAnnotator,smart_position,A,1,209,210 +src/supervision/annotators/core.py,method,_BaseLabelAnnotator,max_line_length,A,1,213,214 +src/supervision/annotators/core.py,method,_BaseLabelAnnotator,max_line_length,A,1,217,218 +src/supervision/annotators/core.py,method,BoxAnnotator,__init__,A,1,268,284 +src/supervision/annotators/core.py,method,OrientedBoxAnnotator,__init__,A,1,355,371 +src/supervision/annotators/core.py,method,MaskAnnotator,__init__,A,1,505,521 +src/supervision/annotators/core.py,method,PolygonAnnotator,__init__,A,1,593,609 +src/supervision/annotators/core.py,method,ColorAnnotator,__init__,A,1,684,700 +src/supervision/annotators/core.py,method,HaloAnnotator,__init__,A,1,780,800 +src/supervision/annotators/core.py,method,EllipseAnnotator,__init__,A,1,878,900 +src/supervision/annotators/core.py,method,BoxCornerAnnotator,__init__,A,1,977,996 +src/supervision/annotators/core.py,method,CircleAnnotator,__init__,A,1,1072,1089 +src/supervision/annotators/core.py,method,DotAnnotator,__init__,A,1,1165,1192 +src/supervision/annotators/core.py,method,LabelAnnotator,__init__,A,1,1275,1321 +src/supervision/annotators/core.py,method,RichLabelAnnotator,__init__,A,1,1591,1638 +src/supervision/annotators/core.py,method,IconAnnotator,__init__,A,1,1866,1882 +src/supervision/annotators/core.py,method,TraceAnnotator,__init__,A,1,2058,2087 +src/supervision/annotators/core.py,method,HeatMapAnnotator,__init__,A,1,2199,2225 +src/supervision/annotators/core.py,method,TriangleAnnotator,__init__,A,1,2404,2434 +src/supervision/annotators/core.py,method,PercentageBarAnnotator,validate_custom_values,A,1,2856,2860 +src/supervision/annotators/core.py,method,CropAnnotator,__init__,A,1,2868,2893 +src/supervision/annotators/core.py,method,BackgroundOverlayAnnotator,__init__,A,1,3033,3048 +src/supervision/annotators/core.py,method,ComparisonAnnotator,__init__,A,1,3128,3162 +src/supervision/annotators/utils.py,function,,validate_labels,A,1,231,232 +src/supervision/annotators/utils.py,function,,snap_boxes,A,1,266,329 +src/supervision/annotators/utils.py,function,,is_valid_hex,A,1,430,441 +src/supervision/annotators/utils.py,function,,calculate_dynamic_kernel_size,A,1,444,464 +src/supervision/annotators/utils.py,function,,calculate_dynamic_pixel_size,A,1,467,487 +src/supervision/annotators/utils.py,method,ColorLookup,list,A,1,36,37 +src/supervision/annotators/utils.py,method,Trace,__init__,A,1,333,345 +src/supervision/annotators/utils.py,method,Trace,get,A,1,377,381 +src/supervision/assets/list.py,method,Assets,__new__,A,1,11,16 +src/supervision/classification/core.py,method,Classifications,__post_init__,A,1,37,44 +src/supervision/classification/core.py,method,Classifications,__len__,A,1,46,50 +src/supervision/classification/core.py,method,Classifications,from_ultralytics,A,1,93,118 +src/supervision/dataset/core.py,function,,is_lazy,A,1,282,283 +src/supervision/dataset/core.py,method,BaseDataset,__len__,A,1,43,44 +src/supervision/dataset/core.py,method,BaseDataset,split,A,1,47,53 +src/supervision/dataset/core.py,method,DetectionDataset,__getitem__,A,1,113,122 +src/supervision/dataset/core.py,method,DetectionDataset,from_pascal_voc,A,1,388,438 +src/supervision/dataset/core.py,method,DetectionDataset,from_yolo,A,1,442,501 +src/supervision/dataset/core.py,method,DetectionDataset,from_coco,A,1,578,624 +src/supervision/dataset/core.py,method,ClassificationDataset,__getitem__,A,1,778,787 +src/supervision/dataset/utils.py,function,,mask_to_rle,A,1,30,34 +src/supervision/dataset/utils.py,function,,rle_to_mask,A,1,38,43 +src/supervision/dataset/formats/coco.py,function,,_with_seg_mask,A,1,530,531 +src/supervision/dataset/formats/pascal_voc.py,function,,_with_poly_mask,A,1,335,336 +src/supervision/dataset/formats/yolo.py,function,,_parse_box,A,1,28,37 +src/supervision/dataset/formats/yolo.py,function,,_box_to_polygon,A,1,41,43 +src/supervision/dataset/formats/yolo.py,function,,_parse_polygon,A,1,47,48 +src/supervision/dataset/formats/yolo.py,function,,_image_name_to_annotation_name,A,1,133,135 +src/supervision/dataset/formats/yolo.py,function,,save_data_yaml,A,1,474,477 +src/supervision/detection/compact_mask.py,function,,_rle_area,A,1,27,46 +src/supervision/detection/compact_mask.py,method,CompactMask,__init__,A,1,459,469 +src/supervision/detection/compact_mask.py,method,CompactMask,crop,A,1,587,614 +src/supervision/detection/compact_mask.py,method,CompactMask,__len__,A,1,620,638 +src/supervision/detection/compact_mask.py,method,CompactMask,shape,A,1,646,665 +src/supervision/detection/compact_mask.py,method,CompactMask,offsets,A,1,668,687 +src/supervision/detection/compact_mask.py,method,CompactMask,dtype,A,1,723,741 +src/supervision/detection/core.py,function,,_merge_obb_corners,A,1,2605,2645 +src/supervision/detection/core.py,function,,merge_inner_detections_objects_without_iou,A,1,2858,2869 +src/supervision/detection/core.py,function,,_normalize_sam3_prompt_result,A,1,2890,2895 +src/supervision/detection/core.py,function,,validate_fields_both_defined_or_none,A,1,2957,2960 +src/supervision/detection/core.py,method,Detections,__post_init__,A,1,164,171 +src/supervision/detection/core.py,method,Detections,__len__,A,1,174,178 +src/supervision/detection/core.py,method,Detections,from_yolov5,A,1,222,250 +src/supervision/detection/core.py,method,Detections,from_tensorflow,A,1,373,414 +src/supervision/detection/core.py,method,Detections,empty,A,1,2035,2053 +src/supervision/detection/core.py,method,Detections,is_empty,A,1,2056,2078 +src/supervision/detection/core.py,method,Detections,box_area,A,1,2385,2394 +src/supervision/detection/core.py,method,Detections,box_aspect_ratio,A,1,2397,2431 +src/supervision/detection/line_zone.py,function,,_multiclass_config_property,A,1,63,70 +src/supervision/detection/line_zone.py,function,,getter,A,1,64,65 +src/supervision/detection/line_zone.py,function,,setter,A,1,67,68 +src/supervision/detection/line_zone.py,method,LineZone,in_count,A,1,177,178 +src/supervision/detection/line_zone.py,method,LineZone,out_count,A,1,181,182 +src/supervision/detection/line_zone.py,method,LineZone,in_count_per_class,A,1,185,186 +src/supervision/detection/line_zone.py,method,LineZone,out_count_per_class,A,1,189,190 +src/supervision/detection/vlm.py,function,,validate_vlm_parameters,A,1,211,212 +src/supervision/detection/vlm.py,function,,from_qwen_3_vl,A,1,397,420 +src/supervision/detection/vlm.py,function,,_build_empty_gemini_2_5_result,A,1,605,617 +src/supervision/detection/tools/csv_sink.py,method,WriterProtocol,writerow,A,1,28,28 +src/supervision/detection/tools/csv_sink.py,method,CSVSink,__init__,A,1,75,86 +src/supervision/detection/tools/csv_sink.py,method,CSVSink,__enter__,A,1,88,90 +src/supervision/detection/tools/csv_sink.py,method,CSVSink,__exit__,A,1,92,98 +src/supervision/detection/tools/inference_slicer.py,method,InferenceSlicer,callback,A,1,201,202 +src/supervision/detection/tools/inference_slicer.py,method,InferenceSlicer,callback,A,1,205,206 +src/supervision/detection/tools/inference_slicer.py,method,InferenceSlicer,slice_wh,A,1,209,210 +src/supervision/detection/tools/inference_slicer.py,method,InferenceSlicer,slice_wh,A,1,213,215 +src/supervision/detection/tools/inference_slicer.py,method,InferenceSlicer,overlap_wh,A,1,218,219 +src/supervision/detection/tools/inference_slicer.py,method,InferenceSlicer,overlap_wh,A,1,222,224 +src/supervision/detection/tools/inference_slicer.py,method,InferenceSlicer,iou_threshold,A,1,227,228 +src/supervision/detection/tools/inference_slicer.py,method,InferenceSlicer,iou_threshold,A,1,231,232 +src/supervision/detection/tools/inference_slicer.py,method,InferenceSlicer,overlap_metric,A,1,235,236 +src/supervision/detection/tools/inference_slicer.py,method,InferenceSlicer,overlap_metric,A,1,239,240 +src/supervision/detection/tools/inference_slicer.py,method,InferenceSlicer,overlap_filter,A,1,243,244 +src/supervision/detection/tools/inference_slicer.py,method,InferenceSlicer,overlap_filter,A,1,247,248 +src/supervision/detection/tools/inference_slicer.py,method,InferenceSlicer,thread_workers,A,1,251,252 +src/supervision/detection/tools/inference_slicer.py,method,InferenceSlicer,compact_masks,A,1,264,265 +src/supervision/detection/tools/inference_slicer.py,method,InferenceSlicer,compact_masks,A,1,268,269 +src/supervision/detection/tools/inference_slicer.py,method,InferenceSlicer,__call__,A,1,271,300 +src/supervision/detection/tools/inference_slicer.py,method,InferenceSlicer,_generate_offset,A,1,557,618 +src/supervision/detection/tools/json_sink.py,method,JSONSink,__init__,A,1,51,60 +src/supervision/detection/tools/json_sink.py,method,JSONSink,__enter__,A,1,62,64 +src/supervision/detection/tools/json_sink.py,method,JSONSink,__exit__,A,1,66,72 +src/supervision/detection/tools/json_sink.py,method,JSONSink,append,A,1,200,215 +src/supervision/detection/tools/polygon_zone.py,method,PolygonZoneAnnotator,__init__,A,1,146,167 +src/supervision/detection/tools/polygon_zone.py,method,PolygonZoneAnnotator,color,A,1,171,172 +src/supervision/detection/tools/polygon_zone.py,method,PolygonZoneAnnotator,color,A,1,175,176 +src/supervision/detection/tools/polygon_zone.py,method,PolygonZoneAnnotator,thickness,A,1,179,180 +src/supervision/detection/tools/polygon_zone.py,method,PolygonZoneAnnotator,thickness,A,1,183,184 +src/supervision/detection/tools/polygon_zone.py,method,PolygonZoneAnnotator,text_color,A,1,187,188 +src/supervision/detection/tools/polygon_zone.py,method,PolygonZoneAnnotator,text_color,A,1,191,192 +src/supervision/detection/tools/polygon_zone.py,method,PolygonZoneAnnotator,text_scale,A,1,195,196 +src/supervision/detection/tools/polygon_zone.py,method,PolygonZoneAnnotator,text_scale,A,1,199,200 +src/supervision/detection/tools/polygon_zone.py,method,PolygonZoneAnnotator,text_thickness,A,1,203,204 +src/supervision/detection/tools/polygon_zone.py,method,PolygonZoneAnnotator,text_thickness,A,1,207,208 +src/supervision/detection/tools/polygon_zone.py,method,PolygonZoneAnnotator,text_padding,A,1,211,212 +src/supervision/detection/tools/polygon_zone.py,method,PolygonZoneAnnotator,text_padding,A,1,215,216 +src/supervision/detection/tools/polygon_zone.py,method,PolygonZoneAnnotator,display_in_zone_count,A,1,219,220 +src/supervision/detection/tools/polygon_zone.py,method,PolygonZoneAnnotator,display_in_zone_count,A,1,223,224 +src/supervision/detection/tools/polygon_zone.py,method,PolygonZoneAnnotator,opacity,A,1,227,228 +src/supervision/detection/tools/polygon_zone.py,method,PolygonZoneAnnotator,opacity,A,1,231,232 +src/supervision/detection/tools/polygon_zone.py,method,PolygonZoneAnnotator,font,A,1,235,236 +src/supervision/detection/tools/polygon_zone.py,method,PolygonZoneAnnotator,center,A,1,239,240 +src/supervision/detection/tools/smoother.py,method,DetectionsSmoother,__init__,A,1,90,97 +src/supervision/detection/tools/transformers.py,function,,process_transformers_detection_result,A,1,14,39 +src/supervision/detection/tools/transformers.py,function,,png_string_to_segmentation_array,A,1,207,221 +src/supervision/detection/utils/boxes.py,function,,clip_boxes,A,1,10,49 +src/supervision/detection/utils/boxes.py,function,,denormalize_boxes,A,1,105,161 +src/supervision/detection/utils/boxes.py,function,,move_boxes,A,1,164,192 +src/supervision/detection/utils/boxes.py,function,,move_oriented_boxes,A,1,195,241 +src/supervision/detection/utils/boxes.py,function,,scale_boxes,A,1,312,344 +src/supervision/detection/utils/converters.py,function,,xyxy_to_polygons,A,1,12,28 +src/supervision/detection/utils/converters.py,function,,polygon_to_mask,A,1,31,49 +src/supervision/detection/utils/converters.py,function,,xywh_to_xyxy,A,1,52,82 +src/supervision/detection/utils/converters.py,function,,xyxy_to_xywh,A,1,85,116 +src/supervision/detection/utils/converters.py,function,,xcycwh_to_xyxy,A,1,119,152 +src/supervision/detection/utils/converters.py,function,,is_compressed_rle,A,1,471,494 +src/supervision/detection/utils/converters.py,function,,polygon_to_xyxy,A,1,724,738 +src/supervision/detection/utils/internal.py,function,,cross_product,A,1,410,430 +src/supervision/detection/utils/iou_and_nms.py,function,,group_within,A,1,1453,1458 +src/supervision/detection/utils/iou_and_nms.py,function,,_polygon_areas,A,1,363,375 +src/supervision/detection/utils/iou_and_nms.py,function,,_aabb_envelopes,A,1,378,390 +src/supervision/detection/utils/iou_and_nms.py,function,,_overlapping_envelope_pairs,A,1,394,423 +src/supervision/detection/utils/iou_and_nms.py,function,,_group_overlapping_boxes,A,1,1177,1210 +src/supervision/detection/utils/iou_and_nms.py,function,,iou_against_candidate,A,1,1200,1206 +src/supervision/detection/utils/iou_and_nms.py,function,,box_non_max_merge,A,1,1214,1243 +src/supervision/detection/utils/iou_and_nms.py,function,,group_within,A,1,1238,1240 +src/supervision/detection/utils/iou_and_nms.py,function,,_group_overlapping_oriented_boxes,A,1,1341,1362 +src/supervision/detection/utils/iou_and_nms.py,function,,iou_against_candidate,A,1,1352,1358 +src/supervision/detection/utils/iou_and_nms.py,method,OverlapFilter,list,A,1,35,36 +src/supervision/detection/utils/iou_and_nms.py,method,OverlapMetric,list,A,1,71,72 +src/supervision/detection/utils/masks.py,function,,sum_over_mask,A,1,137,140 +src/supervision/detection/utils/masks.py,function,,resize_masks,A,1,263,288 +src/supervision/detection/utils/masks.py,function,,_filter_labels_by_centroid_distance,A,1,306,316 +src/supervision/draw/color.py,method,Color,as_rgb,A,1,287,302 +src/supervision/draw/color.py,method,Color,as_bgr,A,1,304,319 +src/supervision/draw/color.py,method,Color,as_rgba,A,1,321,336 +src/supervision/draw/color.py,method,Color,as_bgra,A,1,338,353 +src/supervision/draw/color.py,method,Color,WHITE,A,1,356,357 +src/supervision/draw/color.py,method,Color,BLACK,A,1,360,361 +src/supervision/draw/color.py,method,Color,GREY,A,1,364,365 +src/supervision/draw/color.py,method,Color,RED,A,1,368,369 +src/supervision/draw/color.py,method,Color,GREEN,A,1,372,373 +src/supervision/draw/color.py,method,Color,BLUE,A,1,376,377 +src/supervision/draw/color.py,method,Color,YELLOW,A,1,380,381 +src/supervision/draw/color.py,method,Color,ROBOFLOW,A,1,384,385 +src/supervision/draw/color.py,method,Color,__hash__,A,1,387,388 +src/supervision/draw/color.py,method,ColorPalette,DEFAULT,A,1,410,428 +src/supervision/draw/color.py,method,ColorPalette,ROBOFLOW,A,1,431,449 +src/supervision/draw/color.py,method,ColorPalette,LEGACY,A,1,452,453 +src/supervision/draw/color.py,method,ColorPalette,__len__,A,1,537,544 +src/supervision/draw/utils.py,function,,draw_line,A,1,14,41 +src/supervision/draw/utils.py,function,,draw_rectangle,A,1,44,69 +src/supervision/draw/utils.py,function,,draw_polygon,A,1,166,186 +src/supervision/draw/utils.py,function,,calculate_optimal_text_scale,A,1,371,393 +src/supervision/geometry/core.py,method,Position,list,A,1,25,26 +src/supervision/geometry/core.py,method,Point,as_xy_int_tuple,A,1,53,60 +src/supervision/geometry/core.py,method,Point,as_xy_float_tuple,A,1,62,69 +src/supervision/geometry/core.py,method,Vector,magnitude,A,1,99,108 +src/supervision/geometry/core.py,method,Vector,center,A,1,111,120 +src/supervision/geometry/core.py,method,Vector,cross_product,A,1,123,142 +src/supervision/geometry/core.py,method,Rect,from_xyxy,A,1,176,178 +src/supervision/geometry/core.py,method,Rect,top_left,A,1,181,182 +src/supervision/geometry/core.py,method,Rect,bottom_right,A,1,185,186 +src/supervision/geometry/core.py,method,Rect,pad,A,1,188,193 +src/supervision/geometry/core.py,method,Rect,as_xyxy_int_tuple,A,1,196,201 +src/supervision/key_points/annotators.py,method,BaseKeyPointAnnotator,annotate,A,1,26,27 +src/supervision/key_points/annotators.py,method,VertexAnnotator,__init__,A,1,37,48 +src/supervision/key_points/annotators.py,method,EdgeAnnotator,__init__,A,1,117,138 +src/supervision/key_points/annotators.py,method,VertexEllipseAreaAnnotator,__init__,A,1,383,403 +src/supervision/key_points/annotators.py,method,VertexEllipseOutlineAnnotator,__init__,A,1,482,501 +src/supervision/key_points/annotators.py,method,VertexEllipseHaloAnnotator,__init__,A,1,583,603 +src/supervision/key_points/annotators.py,method,VertexLabelAnnotator,__init__,A,1,709,738 +src/supervision/key_points/annotators.py,method,VertexLabelAnnotator,get_text_bounding_box,A,1,908,926 +src/supervision/key_points/core.py,method,KeyPoints,__post_init__,A,1,298,305 +src/supervision/key_points/core.py,method,KeyPoints,confidence,A,1,309,315 +src/supervision/key_points/core.py,method,KeyPoints,confidence,A,1,318,323 +src/supervision/key_points/core.py,method,KeyPoints,__len__,A,1,325,343 +src/supervision/key_points/core.py,method,KeyPoints,_getitem_by_normalized_index,A,1,1040,1056 +src/supervision/key_points/core.py,method,KeyPoints,empty,A,1,1146,1162 +src/supervision/key_points/core.py,method,KeyPoints,is_empty,A,1,1164,1182 +src/supervision/metrics/core.py,method,Metric,update,A,1,14,19 +src/supervision/metrics/core.py,method,Metric,reset,A,1,22,26 +src/supervision/metrics/core.py,method,Metric,compute,A,1,29,33 +src/supervision/metrics/detection.py,function,,validate_input_tensors,A,1,313,317 +src/supervision/metrics/f1_score.py,method,F1Score,__init__,A,1,66,83 +src/supervision/metrics/f1_score.py,method,F1Score,reset,A,1,85,90 +src/supervision/metrics/f1_score.py,method,F1Score,compute,A,1,123,150 +src/supervision/metrics/f1_score.py,method,F1ScoreResult,f1_50,A,1,549,550 +src/supervision/metrics/f1_score.py,method,F1ScoreResult,f1_75,A,1,553,554 +src/supervision/metrics/f1_score.py,method,F1ScoreResult,small_objects,A,1,610,611 +src/supervision/metrics/f1_score.py,method,F1ScoreResult,medium_objects,A,1,620,621 +src/supervision/metrics/f1_score.py,method,F1ScoreResult,large_objects,A,1,630,631 +src/supervision/metrics/mean_average_precision.py,function,,_summarize_predictions,A,1,1322,1364 +src/supervision/metrics/mean_average_precision.py,method,MeanAveragePrecisionResult,map50,A,1,113,115 +src/supervision/metrics/mean_average_precision.py,method,MeanAveragePrecisionResult,map75,A,1,118,120 +src/supervision/metrics/mean_average_precision.py,method,EvaluationDataset,empty,A,1,371,372 +src/supervision/metrics/mean_average_precision.py,method,COCOEvaluatorParameters,__init__,A,1,641,670 +src/supervision/metrics/mean_average_precision.py,method,COCOEvaluator,eval_imgs,A,1,720,722 +src/supervision/metrics/mean_average_precision.py,method,COCOEvaluator,results,A,1,725,727 +src/supervision/metrics/mean_average_precision.py,method,COCOEvaluator,stats,A,1,730,732 +src/supervision/metrics/mean_average_precision.py,method,COCOEvaluator,ious,A,1,735,737 +src/supervision/metrics/mean_average_precision.py,method,COCOEvaluator,_targets,A,1,740,741 +src/supervision/metrics/mean_average_precision.py,method,COCOEvaluator,_predictions,A,1,744,745 +src/supervision/metrics/mean_average_precision.py,method,COCOEvaluator,_initialize_accumulation,A,1,947,1001 +src/supervision/metrics/mean_average_precision.py,method,COCOEvaluator,_compute_average_precision,A,1,1137,1172 +src/supervision/metrics/mean_average_precision.py,function,,mean_with_mask,A,1,1143,1154 +src/supervision/metrics/mean_average_precision.py,method,COCOEvaluator,_compute_average_precision_by_size,A,1,1174,1220 +src/supervision/metrics/mean_average_precision.py,method,COCOEvaluator,_accumulate,A,1,1223,1271 +src/supervision/metrics/mean_average_precision.py,method,MeanAveragePrecision,__init__,A,1,1441,1463 +src/supervision/metrics/mean_average_precision.py,method,MeanAveragePrecision,reset,A,1,1465,1470 +src/supervision/metrics/mean_average_recall.py,method,_MeanAverageRecallSizeResultsMixin,small_objects,A,1,58,59 +src/supervision/metrics/mean_average_recall.py,method,_MeanAverageRecallSizeResultsMixin,medium_objects,A,1,69,70 +src/supervision/metrics/mean_average_recall.py,method,_MeanAverageRecallSizeResultsMixin,large_objects,A,1,80,81 +src/supervision/metrics/mean_average_recall.py,method,MeanAverageRecallResult,mAR_at_1,A,1,161,162 +src/supervision/metrics/mean_average_recall.py,method,MeanAverageRecallResult,mAR_at_10,A,1,165,166 +src/supervision/metrics/mean_average_recall.py,method,MeanAverageRecallResult,mAR_at_100,A,1,169,170 +src/supervision/metrics/mean_average_recall.py,method,MeanAverageRecall,__init__,A,1,384,399 +src/supervision/metrics/mean_average_recall.py,method,MeanAverageRecall,reset,A,1,401,406 +src/supervision/metrics/mean_average_recall.py,method,MeanAverageRecall,compute,A,1,439,466 +src/supervision/metrics/precision.py,method,PrecisionResult,precision_at_50,A,1,113,114 +src/supervision/metrics/precision.py,method,PrecisionResult,precision_at_75,A,1,117,118 +src/supervision/metrics/precision.py,method,Precision,__init__,A,1,377,394 +src/supervision/metrics/precision.py,method,Precision,reset,A,1,396,401 +src/supervision/metrics/precision.py,method,Precision,compute,A,1,434,461 +src/supervision/metrics/recall.py,method,RecallResult,recall_at_50,A,1,72,73 +src/supervision/metrics/recall.py,method,RecallResult,recall_at_75,A,1,76,77 +src/supervision/metrics/recall.py,method,RecallResult,small_objects,A,1,134,135 +src/supervision/metrics/recall.py,method,RecallResult,medium_objects,A,1,145,146 +src/supervision/metrics/recall.py,method,RecallResult,large_objects,A,1,156,157 +src/supervision/metrics/recall.py,method,Recall,__init__,A,1,199,216 +src/supervision/metrics/recall.py,method,Recall,reset,A,1,218,223 +src/supervision/metrics/recall.py,method,Recall,compute,A,1,256,283 +src/supervision/tracker/byte_tracker/core.py,method,ByteTrack,__init__,A,1,83,101 +src/supervision/tracker/byte_tracker/core.py,method,ByteTrack,frame_id,A,1,104,105 +src/supervision/tracker/byte_tracker/core.py,method,ByteTrack,frame_id,A,1,108,109 +src/supervision/tracker/byte_tracker/core.py,method,ByteTrack,reset,A,1,185,194 +src/supervision/tracker/byte_tracker/kalman_filter.py,method,KalmanFilter,initiate,A,1,32,59 +src/supervision/tracker/byte_tracker/kalman_filter.py,method,KalmanFilter,predict,A,1,61,94 +src/supervision/tracker/byte_tracker/kalman_filter.py,method,KalmanFilter,project,A,1,96,121 +src/supervision/tracker/byte_tracker/kalman_filter.py,method,KalmanFilter,update,A,1,160,193 +src/supervision/tracker/byte_tracker/matching.py,function,,indices_to_matches,A,1,15,24 +src/supervision/tracker/byte_tracker/single_object_track.py,method,_STrackData,__post_init__,A,1,38,41 +src/supervision/tracker/byte_tracker/single_object_track.py,method,STrack,__init__,A,1,45,58 +src/supervision/tracker/byte_tracker/single_object_track.py,method,STrack,state,A,1,62,63 +src/supervision/tracker/byte_tracker/single_object_track.py,method,STrack,state,A,1,66,67 +src/supervision/tracker/byte_tracker/single_object_track.py,method,STrack,is_activated,A,1,70,71 +src/supervision/tracker/byte_tracker/single_object_track.py,method,STrack,is_activated,A,1,74,75 +src/supervision/tracker/byte_tracker/single_object_track.py,method,STrack,start_frame,A,1,78,79 +src/supervision/tracker/byte_tracker/single_object_track.py,method,STrack,start_frame,A,1,82,83 +src/supervision/tracker/byte_tracker/single_object_track.py,method,STrack,frame_id,A,1,86,87 +src/supervision/tracker/byte_tracker/single_object_track.py,method,STrack,frame_id,A,1,90,91 +src/supervision/tracker/byte_tracker/single_object_track.py,method,STrack,kalman_filter,A,1,94,95 +src/supervision/tracker/byte_tracker/single_object_track.py,method,STrack,kalman_filter,A,1,98,99 +src/supervision/tracker/byte_tracker/single_object_track.py,method,STrack,mean,A,1,102,103 +src/supervision/tracker/byte_tracker/single_object_track.py,method,STrack,mean,A,1,106,107 +src/supervision/tracker/byte_tracker/single_object_track.py,method,STrack,covariance,A,1,110,111 +src/supervision/tracker/byte_tracker/single_object_track.py,method,STrack,covariance,A,1,114,115 +src/supervision/tracker/byte_tracker/single_object_track.py,method,STrack,score,A,1,118,119 +src/supervision/tracker/byte_tracker/single_object_track.py,method,STrack,score,A,1,122,123 +src/supervision/tracker/byte_tracker/single_object_track.py,method,STrack,tracklet_len,A,1,126,127 +src/supervision/tracker/byte_tracker/single_object_track.py,method,STrack,tracklet_len,A,1,130,131 +src/supervision/tracker/byte_tracker/single_object_track.py,method,STrack,minimum_consecutive_frames,A,1,134,135 +src/supervision/tracker/byte_tracker/single_object_track.py,method,STrack,internal_track_id,A,1,138,139 +src/supervision/tracker/byte_tracker/single_object_track.py,method,STrack,internal_track_id,A,1,142,143 +src/supervision/tracker/byte_tracker/single_object_track.py,method,STrack,external_track_id,A,1,146,147 +src/supervision/tracker/byte_tracker/single_object_track.py,method,STrack,external_track_id,A,1,150,151 +src/supervision/tracker/byte_tracker/single_object_track.py,method,STrack,tlbr,A,1,254,260 +src/supervision/tracker/byte_tracker/single_object_track.py,method,STrack,tlwh_to_xyah,A,1,263,270 +src/supervision/tracker/byte_tracker/single_object_track.py,method,STrack,to_xyah,A,1,272,273 +src/supervision/tracker/byte_tracker/single_object_track.py,method,STrack,tlbr_to_tlwh,A,1,276,279 +src/supervision/tracker/byte_tracker/single_object_track.py,method,STrack,tlwh_to_tlbr,A,1,282,285 +src/supervision/tracker/byte_tracker/single_object_track.py,method,STrack,__repr__,A,1,287,288 +src/supervision/tracker/byte_tracker/utils.py,method,IdCounter,reset,A,1,20,22 +src/supervision/tracker/byte_tracker/utils.py,method,IdCounter,new_id,A,1,24,33 +src/supervision/tracker/byte_tracker/utils.py,method,IdCounter,NO_ID,A,1,36,37 +src/supervision/utils/conversion.py,function,,ensure_cv2_image_for_class_method,A,1,16,40 +src/supervision/utils/conversion.py,function,,ensure_cv2_image_for_annotation,A,1,48,51 +src/supervision/utils/conversion.py,function,,ensure_cv2_image_for_standalone_function,A,1,54,76 +src/supervision/utils/conversion.py,function,,ensure_pil_image_for_class_method,A,1,79,102 +src/supervision/utils/conversion.py,function,,ensure_pil_image_for_annotation,A,1,110,113 +src/supervision/utils/conversion.py,function,,ensure_cv2_image_for_processing,A,1,121,124 +src/supervision/utils/conversion.py,function,,pillow_to_cv2,A,1,148,163 +src/supervision/utils/conversion.py,function,,cv2_to_pillow,A,1,166,178 +src/supervision/utils/file.py,function,,read_json_file,A,1,142,168 +src/supervision/utils/file.py,function,,save_json_file,A,1,171,183 +src/supervision/utils/file.py,function,,read_yaml_file,A,1,186,198 +src/supervision/utils/file.py,function,,save_yaml_file,A,1,201,211 +src/supervision/utils/image.py,function,,grayscale_image,A,1,404,431 +src/supervision/utils/image.py,function,,_generate_color_image,A,1,918,923 +src/supervision/utils/image.py,method,ImageSink,__init__,A,1,482,519 +src/supervision/utils/image.py,method,ImageSink,__exit__,A,1,551,557 +src/supervision/utils/internal.py,function,,format_warning,A,1,21,32 +src/supervision/utils/internal.py,function,,warn_deprecated,A,1,43,50 +src/supervision/utils/internal.py,function,,deprecated_parameter,A,1,53,127 +src/supervision/utils/internal.py,function,,decorator,A,1,102,125 +src/supervision/utils/internal.py,method,classproperty,__init__,A,1,145,150 +src/supervision/utils/iterables.py,function,,fill,A,1,45,73 +src/supervision/utils/video.py,function,,process_video,A,1,424,507 +src/supervision/utils/video.py,method,VideoInfo,resolution_wh,A,1,72,73 +src/supervision/utils/video.py,method,VideoSink,__init__,A,1,99,103 +src/supervision/utils/video.py,method,_VideoProcessor,__init__,A,1,284,318 +src/supervision/utils/video.py,method,_VideoProcessor,_start_workers,A,1,371,373 +src/supervision/utils/video.py,method,_VideoProcessor,_setup_progress_bar,A,1,375,379 +src/supervision/utils/video.py,method,FPSMonitor,__init__,A,1,515,535 +src/supervision/utils/video.py,method,FPSMonitor,tick,A,1,550,554 +src/supervision/utils/video.py,method,FPSMonitor,reset,A,1,556,560 +src/supervision/validators/__init__.py,function,,validate_xyxy,A,1,33,34 +src/supervision/validators/__init__.py,function,,validate_mask,A,1,80,81 +src/supervision/validators/__init__.py,function,,validate_class_id,A,1,102,103 +src/supervision/validators/__init__.py,function,,validate_confidence,A,1,125,126 +src/supervision/validators/__init__.py,function,,validate_key_point_confidence,A,1,156,157 +src/supervision/validators/__init__.py,function,,validate_keypoint_confidence,A,1,165,166 +src/supervision/validators/__init__.py,function,,validate_tracker_id,A,1,187,188 +src/supervision/validators/__init__.py,function,,validate_data,A,1,212,213 +src/supervision/validators/__init__.py,function,,validate_xy,A,1,232,233 +src/supervision/validators/__init__.py,function,,_validate_detections_fields,A,1,259,273 +src/supervision/validators/__init__.py,function,,validate_detections_fields,A,1,281,289 +src/supervision/validators/__init__.py,function,,validate_key_points_fields,A,1,317,320 +src/supervision/validators/__init__.py,function,,validate_keypoints_fields,A,1,328,331 +src/supervision/validators/__init__.py,function,,validate_resolution,A,1,362,363 +src/supervision/annotators/core.py,function,,load_default_font,A,2,1841,1847 +src/supervision/annotators/core.py,function,,_normalize_color_input,A,2,68,78 +src/supervision/annotators/core.py,method,_BaseLabelAnnotator,_adjust_labels_in_frame,A,2,220,260 +src/supervision/annotators/core.py,method,IconAnnotator,_load_icon,A,2,1957,1967 +src/supervision/annotators/core.py,method,RoundBoxAnnotator,__init__,A,2,2526,2550 +src/supervision/annotators/core.py,method,PercentageBarAnnotator,__init__,A,2,2661,2693 +src/supervision/annotators/utils.py,function,,get_color_by_index,A,2,133,136 +src/supervision/assets/downloader.py,function,,is_md5_hash_matching,A,2,17,38 +src/supervision/assets/list.py,method,Assets,list,A,2,19,20 +src/supervision/classification/core.py,method,Classifications,from_clip,A,2,53,90 +src/supervision/classification/core.py,method,Classifications,from_timm,A,2,121,164 +src/supervision/classification/core.py,method,Classifications,get_top_k,A,2,166,200 +src/supervision/dataset/core.py,function,,is_in_memory,A,2,279,280 +src/supervision/dataset/core.py,method,DetectionDataset,__len__,A,2,110,111 +src/supervision/dataset/core.py,method,DetectionDataset,__iter__,A,2,124,133 +src/supervision/dataset/core.py,method,ClassificationDataset,__len__,A,2,775,776 +src/supervision/dataset/core.py,method,ClassificationDataset,__iter__,A,2,789,800 +src/supervision/dataset/formats/coco.py,function,,coco_categories_to_classes,A,2,30,33 +src/supervision/dataset/formats/coco.py,function,,classes_to_coco_categories,A,2,49,81 +src/supervision/dataset/formats/coco.py,function,,get_coco_class_index_mapping,A,2,384,420 +src/supervision/dataset/formats/yolo.py,function,,_polygons_to_masks,A,2,51,62 +src/supervision/dataset/formats/yolo.py,function,,_with_seg_mask,A,2,66,67 +src/supervision/dataset/formats/yolo.py,function,,save_yolo_annotations,A,2,422,471 +src/supervision/detection/compact_mask.py,method,CompactMask,to_dense,A,2,555,585 +src/supervision/detection/compact_mask.py,method,CompactMask,__iter__,A,2,640,643 +src/supervision/detection/compact_mask.py,method,CompactMask,bbox_xyxy,A,2,690,720 +src/supervision/detection/compact_mask.py,method,CompactMask,area,A,2,744,764 +src/supervision/detection/compact_mask.py,method,CompactMask,sum,A,2,766,793 +src/supervision/detection/compact_mask.py,method,CompactMask,__array__,A,2,863,889 +src/supervision/detection/core.py,function,,_get_sam3_value,A,2,2872,2875 +src/supervision/detection/core.py,function,,_build_sam3_mask,A,2,2913,2925 +src/supervision/detection/core.py,method,Detections,__eq__,A,2,206,217 +src/supervision/detection/core.py,method,Detections,from_yolo_nas,A,2,336,369 +src/supervision/detection/core.py,method,Detections,from_deepsparse,A,2,418,450 +src/supervision/detection/core.py,method,Detections,from_mmdetection,A,2,454,487 +src/supervision/detection/core.py,method,Detections,from_detectron2,A,2,573,616 +src/supervision/detection/core.py,method,Detections,from_paddledet,A,2,900,938 +src/supervision/detection/line_zone.py,method,LineZone,__init__,A,2,138,174 +src/supervision/detection/line_zone.py,method,LineZone,_calculate_region_of_interest_limits,A,2,267,296 +src/supervision/detection/line_zone.py,method,LineZoneAnnotator,_draw_oriented_label,A,2,644,696 +src/supervision/detection/line_zone.py,method,LineZoneAnnotatorMulticlass,__init__,A,2,783,837 +src/supervision/detection/vlm.py,method,LMM,list,A,2,50,51 +src/supervision/detection/vlm.py,method,VLM,list,A,2,97,98 +src/supervision/detection/tools/csv_sink.py,method,CSVSink,close,A,2,111,116 +src/supervision/detection/tools/csv_sink.py,method,CSVSink,parse_field_names,A,2,234,241 +src/supervision/detection/tools/inference_slicer.py,method,InferenceSlicer,__init__,A,2,166,198 +src/supervision/detection/tools/inference_slicer.py,method,InferenceSlicer,thread_workers,A,2,255,261 +src/supervision/detection/tools/inference_slicer.py,method,InferenceSlicer,_run_sequential_inference,A,2,386,391 +src/supervision/detection/tools/json_sink.py,method,JSONSink,write_and_close,A,2,109,119 +src/supervision/detection/tools/polygon_zone.py,method,PolygonZone,__init__,A,2,71,85 +src/supervision/detection/tools/transformers.py,function,,process_transformers_v5_segmentation_result,A,2,82,108 +src/supervision/detection/tools/transformers.py,function,,process_transformers_v5_panoptic_segmentation_result,A,2,182,204 +src/supervision/detection/utils/boxes.py,function,,pad_boxes,A,2,52,96 +src/supervision/detection/utils/converters.py,function,,xyxy_to_xcycarh,A,2,155,199 +src/supervision/detection/utils/converters.py,function,,mask_to_xyxy,A,2,202,245 +src/supervision/detection/utils/converters.py,function,,_delta_decode,A,2,418,442 +src/supervision/detection/utils/converters.py,function,,_delta_encode,A,2,445,468 +src/supervision/detection/utils/converters.py,function,,_rle_counts_to_mask,A,2,538,571 +src/supervision/detection/utils/iou_and_nms.py,function,,_jaccard,A,2,264,301 +src/supervision/detection/utils/iou_and_nms.py,function,,_prepare_predictions_for_nms,A,2,907,921 +src/supervision/detection/utils/iou_and_nms.py,function,,box_non_max_suppression,A,2,946,978 +src/supervision/draw/color.py,function,,unify_to_bgr,A,2,547,572 +src/supervision/draw/color.py,method,Color,as_hex,A,2,264,285 +src/supervision/draw/color.py,method,Color,__repr__,A,2,390,393 +src/supervision/draw/color.py,method,ColorPalette,from_hex,A,2,456,476 +src/supervision/draw/color.py,method,ColorPalette,by_idx,A,2,512,535 +src/supervision/draw/utils.py,function,,draw_filled_rectangle,A,2,72,111 +src/supervision/draw/utils.py,function,,draw_filled_polygon,A,2,189,215 +src/supervision/draw/utils.py,function,,draw_text,A,2,218,298 +src/supervision/draw/utils.py,function,,calculate_optimal_line_thickness,A,2,396,420 +src/supervision/key_points/core.py,method,KeyPoints,__eq__,A,2,369,383 +src/supervision/metrics/detection.py,function,,_assert_supported_target,A,2,22,25 +src/supervision/metrics/detection.py,function,,_get_coordinate_metadata,A,2,187,192 +src/supervision/metrics/detection.py,function,,_get_iou_batch,A,2,242,252 +src/supervision/metrics/detection.py,method,ConfusionMatrix,from_detections,A,2,359,439 +src/supervision/metrics/detection.py,method,ConfusionMatrix,from_tensors,A,2,443,531 +src/supervision/metrics/detection.py,method,ConfusionMatrix,evaluate_detection_batch,A,2,535,602 +src/supervision/metrics/detection.py,method,ConfusionMatrix,_drop_extra_matches,A,2,605,618 +src/supervision/metrics/detection.py,method,ConfusionMatrix,benchmark,A,2,621,685 +src/supervision/metrics/detection.py,method,MeanAveragePrecision,from_detections,A,2,815,864 +src/supervision/metrics/detection.py,method,MeanAveragePrecision,benchmark,A,2,868,911 +src/supervision/metrics/detection.py,method,MeanAveragePrecision,compute_average_precision,A,2,1012,1047 +src/supervision/metrics/f1_score.py,method,F1Score,_compute_f1,A,2,399,426 +src/supervision/metrics/f1_score.py,method,F1Score,_filter_predictions_and_targets_by_size,A,2,484,502 +src/supervision/metrics/f1_score.py,method,F1ScoreResult,_ensure_size_results,A,2,597,601 +src/supervision/metrics/f1_score.py,method,F1ScoreResult,small_objects,A,2,604,607 +src/supervision/metrics/f1_score.py,method,F1ScoreResult,medium_objects,A,2,614,617 +src/supervision/metrics/f1_score.py,method,F1ScoreResult,large_objects,A,2,624,627 +src/supervision/metrics/mean_average_precision.py,method,MeanAveragePrecisionResult,map50_95,A,2,104,110 +src/supervision/metrics/mean_average_precision.py,method,MeanAveragePrecisionResult,small_objects,A,2,123,128 +src/supervision/metrics/mean_average_precision.py,method,MeanAveragePrecisionResult,medium_objects,A,2,141,146 +src/supervision/metrics/mean_average_precision.py,method,MeanAveragePrecisionResult,large_objects,A,2,159,164 +src/supervision/metrics/mean_average_precision.py,method,EvaluationDataset,__init__,A,2,345,368 +src/supervision/metrics/mean_average_precision.py,method,COCOEvaluator,_pycocotools_summarize,A,2,1274,1367 +src/supervision/metrics/mean_average_precision.py,method,MeanAveragePrecision,compute,A,2,1627,1697 +src/supervision/metrics/mean_average_recall.py,method,_MeanAverageRecallSizeResultsMixin,_ensure_size_results,A,2,44,48 +src/supervision/metrics/mean_average_recall.py,method,_MeanAverageRecallSizeResultsMixin,small_objects,A,2,51,55 +src/supervision/metrics/mean_average_recall.py,method,_MeanAverageRecallSizeResultsMixin,medium_objects,A,2,62,66 +src/supervision/metrics/mean_average_recall.py,method,_MeanAverageRecallSizeResultsMixin,large_objects,A,2,73,77 +src/supervision/metrics/mean_average_recall.py,method,MeanAverageRecall,_compute_average_recall_for_classes,A,2,558,592 +src/supervision/metrics/mean_average_recall.py,method,MeanAverageRecall,_compute_recall,A,2,689,714 +src/supervision/metrics/mean_average_recall.py,method,MeanAverageRecall,_filter_predictions_and_targets_by_size,A,2,775,793 +src/supervision/metrics/precision.py,method,PrecisionResult,small_objects,A,2,121,126 +src/supervision/metrics/precision.py,method,PrecisionResult,medium_objects,A,2,139,144 +src/supervision/metrics/precision.py,method,PrecisionResult,large_objects,A,2,157,162 +src/supervision/metrics/precision.py,method,Precision,_compute_precision,A,2,716,746 +src/supervision/metrics/precision.py,method,Precision,_filter_predictions_and_targets_by_size,A,2,807,825 +src/supervision/metrics/recall.py,method,RecallResult,_ensure_size_results,A,2,120,124 +src/supervision/metrics/recall.py,method,RecallResult,small_objects,A,2,127,131 +src/supervision/metrics/recall.py,method,RecallResult,medium_objects,A,2,138,142 +src/supervision/metrics/recall.py,method,RecallResult,large_objects,A,2,149,153 +src/supervision/metrics/recall.py,method,Recall,_compute_recall,A,2,494,524 +src/supervision/metrics/recall.py,method,Recall,_filter_predictions_and_targets_by_size,A,2,587,605 +src/supervision/metrics/utils/utils.py,function,,ensure_pandas_installed,A,2,1,6 +src/supervision/tracker/byte_tracker/kalman_filter.py,method,KalmanFilter,__init__,A,2,21,30 +src/supervision/tracker/byte_tracker/kalman_filter.py,method,KalmanFilter,multi_predict,A,2,123,158 +src/supervision/tracker/byte_tracker/matching.py,function,,linear_assignment,A,2,27,41 +src/supervision/tracker/byte_tracker/single_object_track.py,method,STrack,tlwh,A,2,242,251 +src/supervision/tracker/byte_tracker/utils.py,method,IdCounter,__init__,A,2,5,18 +src/supervision/utils/file.py,function,,save_text_file,A,2,129,139 +src/supervision/utils/image.py,function,,letterbox_image,A,2,210,275 +src/supervision/utils/image.py,function,,_aggregate_images_shape,A,2,728,736 +src/supervision/utils/image.py,method,ImageSink,save_image,A,2,531,549 +src/supervision/utils/internal.py,method,classproperty,__get__,A,2,152,166 +src/supervision/utils/video.py,method,VideoInfo,from_video_path,A,2,59,69 +src/supervision/utils/video.py,method,VideoSink,__enter__,A,2,105,117 +src/supervision/utils/video.py,method,VideoSink,write_frame,A,2,119,128 +src/supervision/utils/video.py,method,VideoSink,__exit__,A,2,130,137 +src/supervision/utils/video.py,method,_VideoProcessor,_reader_thread,A,2,320,327 +src/supervision/utils/video.py,method,_VideoProcessor,_mux_audio_if_needed,A,2,357,364 +src/supervision/utils/video.py,method,_VideoProcessor,run,A,2,401,421 +src/supervision/annotators/core.py,method,LabelAnnotator,annotate,A,3,1325,1404 +src/supervision/annotators/core.py,method,LabelAnnotator,draw_rounded_rectangle,A,3,1543,1582 +src/supervision/annotators/core.py,method,RichLabelAnnotator,annotate,A,3,1642,1720 +src/supervision/annotators/core.py,method,RichLabelAnnotator,_load_font,A,3,1838,1858 +src/supervision/annotators/core.py,method,BlurAnnotator,__init__,A,3,1975,1984 +src/supervision/annotators/core.py,method,PixelateAnnotator,__init__,A,3,2309,2320 +src/supervision/annotators/core.py,method,ComparisonAnnotator,_mask_from_xyxy,A,3,3268,3281 +src/supervision/annotators/core.py,method,ComparisonAnnotator,_mask_from_obb,A,3,3284,3296 +src/supervision/annotators/core.py,method,ComparisonAnnotator,_draw_labels,A,3,3311,3382 +src/supervision/annotators/utils.py,function,,_validate_labels,A,3,205,221 +src/supervision/classification/core.py,function,,_validate_class_ids,A,3,13,19 +src/supervision/dataset/core.py,method,DetectionDataset,_get_image,A,3,101,108 +src/supervision/dataset/core.py,method,DetectionDataset,as_coco,A,3,626,723 +src/supervision/dataset/core.py,method,ClassificationDataset,__init__,A,3,740,761 +src/supervision/dataset/core.py,method,ClassificationDataset,_get_image,A,3,766,773 +src/supervision/dataset/core.py,method,ClassificationDataset,from_folder_structure,A,3,922,968 +src/supervision/dataset/utils.py,function,,approximate_mask_with_polygons,A,3,52,76 +src/supervision/dataset/utils.py,function,,merge_class_lists,A,3,80,87 +src/supervision/dataset/utils.py,function,,build_class_index_mapping,A,3,90,105 +src/supervision/dataset/utils.py,function,,save_dataset_images,A,3,128,136 +src/supervision/dataset/utils.py,function,,train_test_split,A,3,139,164 +src/supervision/dataset/formats/coco.py,function,,build_coco_class_index_mapping,A,3,37,45 +src/supervision/dataset/formats/coco.py,function,,group_coco_annotations_by_image_id,A,3,85,94 +src/supervision/dataset/formats/pascal_voc.py,function,,object_to_pascal_voc,A,3,19,81 +src/supervision/dataset/formats/pascal_voc.py,function,,_get_required_text,A,3,351,355 +src/supervision/dataset/formats/yolo.py,function,,object_to_yolo,A,3,274,293 +src/supervision/detection/compact_mask.py,function,,_resize_crop,A,3,341,386 +src/supervision/detection/compact_mask.py,method,CompactMask,__eq__,A,3,891,917 +src/supervision/detection/core.py,function,,_normalize_sam3_prompt_results,A,3,2878,2887 +src/supervision/detection/core.py,function,,_validate_fields_both_defined_or_none,A,3,2928,2947 +src/supervision/detection/core.py,method,Detections,from_ncnn,A,3,1977,2031 +src/supervision/detection/core.py,method,Detections,__setitem__,A,3,2301,2334 +src/supervision/detection/line_zone.py,method,LineZoneAnnotator,__init__,A,3,381,435 +src/supervision/detection/line_zone.py,method,LineZoneAnnotator,_calculate_anchor_in_frame,A,3,534,596 +src/supervision/detection/line_zone.py,method,LineZoneAnnotator,_draw_basic_label,A,3,598,642 +src/supervision/detection/vlm.py,function,,_build_gemini_2_5_class_id,A,3,720,725 +src/supervision/detection/tools/csv_sink.py,method,CSVSink,open,A,3,100,109 +src/supervision/detection/tools/inference_slicer.py,method,InferenceSlicer,_run_parallel_inference,A,3,393,403 +src/supervision/detection/tools/json_sink.py,method,JSONSink,open,A,3,74,82 +src/supervision/detection/tools/json_sink.py,method,JSONSink,_json_default,A,3,85,106 +src/supervision/detection/tools/polygon_zone.py,method,PolygonZone,trigger,A,3,88,123 +src/supervision/detection/tools/transformers.py,function,,process_transformers_v4_panoptic_segmentation_result,A,3,148,178 +src/supervision/detection/utils/boxes.py,function,,obb_polygon_area,A,3,244,269 +src/supervision/detection/utils/boxes.py,function,,xyxyxyxy_to_xyxy,A,3,272,309 +src/supervision/detection/utils/converters.py,function,,mask_to_polygons,A,3,307,328 +src/supervision/detection/utils/converters.py,function,,_mask_to_rle_counts,A,3,497,535 +src/supervision/detection/utils/internal.py,function,,is_data_equal,A,3,199,213 +src/supervision/detection/utils/iou_and_nms.py,function,,_normalize_oriented_overlap_metric,A,3,444,451 +src/supervision/detection/utils/iou_and_nms.py,function,,_nms_loop_from_iou_matrix,A,3,924,943 +src/supervision/detection/utils/iou_and_nms.py,function,,_greedy_nmm_via_iou_callback,A,3,1113,1141 +src/supervision/detection/utils/masks.py,function,,contains_multiple_segments,A,3,201,260 +src/supervision/detection/utils/masks.py,function,,_resolve_distance_threshold,A,3,291,303 +src/supervision/detection/utils/vlms.py,function,,fuzzy_match_index,A,3,65,100 +src/supervision/draw/utils.py,function,,draw_rounded_rectangle,A,3,114,163 +src/supervision/geometry/utils.py,function,,get_polygon_center,A,3,7,51 +src/supervision/key_points/annotators.py,method,_BaseVertexEllipseAnnotator,_get_covariances,A,3,298,313 +src/supervision/key_points/annotators.py,method,VertexLabelAnnotator,_resolve_color_list,A,3,960,972 +src/supervision/key_points/core.py,method,KeyPoints,from_ultralytics,A,3,598,634 +src/supervision/key_points/core.py,method,KeyPoints,from_detectron2,A,3,695,743 +src/supervision/key_points/core.py,method,KeyPoints,__setitem__,A,3,1110,1143 +src/supervision/metrics/mean_average_precision.py,method,EvaluationDataset,get_annotations,A,3,535,547 +src/supervision/metrics/mean_average_precision.py,method,COCOEvaluator,__init__,A,3,695,717 +src/supervision/metrics/utils/object_size.py,function,,get_bbox_size_category,A,3,85,123 +src/supervision/metrics/utils/object_size.py,function,,get_mask_size_category,A,3,126,165 +src/supervision/tracker/byte_tracker/core.py,function,,joint_tracks,A,3,472,495 +src/supervision/tracker/byte_tracker/core.py,method,ByteTrack,update_with_tensors,A,3,196,237 +src/supervision/tracker/byte_tracker/core.py,method,ByteTrack,_build_stracks,A,3,294,308 +src/supervision/tracker/byte_tracker/core.py,method,ByteTrack,_separate_tracks,A,3,311,321 +src/supervision/tracker/byte_tracker/core.py,method,ByteTrack,_first_association,A,3,323,347 +src/supervision/tracker/byte_tracker/core.py,method,ByteTrack,_update_state,A,3,451,468 +src/supervision/tracker/byte_tracker/matching.py,function,,fuse_score,A,3,65,75 +src/supervision/tracker/byte_tracker/single_object_track.py,method,STrack,activate,A,3,184,200 +src/supervision/utils/conversion.py,function,,images_to_cv2,A,3,127,145 +src/supervision/utils/conversion.py,function,,wrapper,A,3,28,38 +src/supervision/utils/conversion.py,function,,wrapper,A,3,65,74 +src/supervision/utils/conversion.py,function,,wrapper,A,3,90,100 +src/supervision/utils/image.py,function,,scale_image,A,3,95,142 +src/supervision/utils/image.py,function,,tint_image,A,3,356,400 +src/supervision/utils/image.py,function,,_negotiate_tiles_format,A,3,706,710 +src/supervision/utils/image.py,function,,_calculate_aggregated_images_shape,A,3,713,718 +src/supervision/utils/image.py,function,,_negotiate_grid_size,A,3,756,764 +src/supervision/utils/image.py,function,,_generate_tiles,A,3,767,812 +src/supervision/utils/image.py,function,,_merge_tiles_elements,A,3,879,914 +src/supervision/utils/image.py,method,ImageSink,__enter__,A,3,521,529 +src/supervision/utils/iterables.py,function,,find_duplicates,A,3,76,103 +src/supervision/utils/logger.py,function,,_get_logger,A,3,8,63 +src/supervision/utils/notebook.py,function,,plot_image,A,3,11,47 +src/supervision/utils/video.py,method,_VideoProcessor,_writer_thread,A,3,329,334 +src/supervision/utils/video.py,method,FPSMonitor,fps,A,3,538,548 +src/supervision/annotators/core.py,method,BoxAnnotator,annotate,A,4,287,347 +src/supervision/annotators/core.py,method,MaskAnnotator,annotate,A,4,524,581 +src/supervision/annotators/core.py,method,ColorAnnotator,annotate,A,4,703,768 +src/supervision/annotators/core.py,method,EllipseAnnotator,annotate,A,4,903,969 +src/supervision/annotators/core.py,method,CircleAnnotator,annotate,A,4,1092,1156 +src/supervision/annotators/core.py,method,LabelAnnotator,_get_label_properties,A,4,1406,1458 +src/supervision/annotators/core.py,method,RichLabelAnnotator,_get_label_properties,A,4,1722,1772 +src/supervision/annotators/core.py,method,ComparisonAnnotator,_mask_from_mask,A,4,3299,3309 +src/supervision/annotators/utils.py,function,,resolve_color,A,4,139,156 +src/supervision/annotators/utils.py,function,,hex_to_rgba,A,4,384,409 +src/supervision/annotators/utils.py,function,,rgba_to_hex,A,4,412,427 +src/supervision/annotators/utils.py,method,Trace,put,A,4,347,375 +src/supervision/classification/core.py,function,,_validate_confidence,A,4,22,29 +src/supervision/dataset/core.py,method,DetectionDataset,as_pascal_voc,A,4,330,385 +src/supervision/dataset/core.py,method,ClassificationDataset,as_folder_structure,A,4,897,919 +src/supervision/dataset/utils.py,function,,map_detections_class_id,A,4,108,125 +src/supervision/dataset/formats/coco.py,function,,detections_to_coco_annotations,A,4,283,381 +src/supervision/dataset/formats/coco.py,function,,save_coco_annotations,A,4,534,648 +src/supervision/dataset/formats/pascal_voc.py,function,,parse_polygon_points,A,4,339,347 +src/supervision/dataset/formats/yolo.py,function,,_is_int_like,A,4,100,109 +src/supervision/detection/compact_mask.py,method,CompactMask,repack,A,4,984,1060 +src/supervision/detection/core.py,method,Detections,from_inference,A,4,620,672 +src/supervision/detection/core.py,method,Detections,from_sam,A,4,676,715 +src/supervision/detection/line_zone.py,method,LineZone,_compute_anchor_sides,A,4,298,355 +src/supervision/detection/line_zone.py,method,LineZoneAnnotator,_get_line_angle,A,4,509,532 +src/supervision/detection/line_zone.py,method,LineZoneAnnotator,_make_label_image,A,4,700,769 +src/supervision/detection/vlm.py,method,LMM,from_value,A,4,54,69 +src/supervision/detection/vlm.py,method,VLM,from_value,A,4,101,112 +src/supervision/detection/tools/inference_slicer.py,method,InferenceSlicer,_probe_remaining_offsets,A,4,362,384 +src/supervision/detection/tools/inference_slicer.py,method,InferenceSlicer,_warn_obb_sequential_fallback,A,4,405,420 +src/supervision/detection/tools/inference_slicer.py,method,InferenceSlicer,_apply_overlap_filter,A,4,423,441 +src/supervision/detection/tools/polygon_zone.py,method,PolygonZoneAnnotator,annotate,A,4,242,290 +src/supervision/detection/tools/transformers.py,function,,process_transformers_v5_semantic_or_instance_segmentation_result,A,4,112,144 +src/supervision/detection/tools/transformers.py,function,,append_class_names_to_data,A,4,224,250 +src/supervision/detection/utils/boxes.py,function,,spread_out_boxes,A,4,347,417 +src/supervision/detection/utils/converters.py,function,,xyxy_to_mask,A,4,248,304 +src/supervision/detection/utils/converters.py,function,,mask_to_rle,A,4,649,721 +src/supervision/detection/utils/internal.py,function,,_validate_data_list_keys,A,4,238,245 +src/supervision/detection/utils/internal.py,function,,_validate_data_value_lengths,A,4,248,255 +src/supervision/detection/utils/internal.py,function,,merge_data,A,4,280,313 +src/supervision/detection/utils/iou_and_nms.py,function,,box_iou,A,4,90,159 +src/supervision/detection/utils/iou_and_nms.py,function,,_mask_iou_batch_split,A,4,680,741 +src/supervision/detection/utils/iou_and_nms.py,method,OverlapFilter,from_value,A,4,39,50 +src/supervision/detection/utils/iou_and_nms.py,method,OverlapMetric,from_value,A,4,75,86 +src/supervision/detection/utils/masks.py,function,,contains_holes,A,4,151,198 +src/supervision/draw/color.py,function,,_validate_color_hex,A,4,57,62 +src/supervision/draw/color.py,method,Color,from_rgb_tuple,A,4,149,174 +src/supervision/draw/color.py,method,Color,from_bgr_tuple,A,4,177,202 +src/supervision/draw/color.py,method,ColorPalette,from_matplotlib,A,4,479,509 +src/supervision/key_points/core.py,function,,_optional_array_equal,A,4,42,48 +src/supervision/key_points/core.py,method,KeyPoints,__init__,A,4,245,296 +src/supervision/key_points/core.py,method,KeyPoints,__iter__,A,4,345,366 +src/supervision/key_points/core.py,method,KeyPoints,from_transformers,A,4,746,828 +src/supervision/metrics/detection.py,method,MeanAveragePrecision,_match_detection_batch,A,4,1050,1092 +src/supervision/metrics/f1_score.py,method,F1Score,update,A,4,92,121 +src/supervision/metrics/f1_score.py,method,F1Score,_match_detection_batch,A,4,309,338 +src/supervision/metrics/f1_score.py,method,F1Score,_compute_confusion_matrix,A,4,341,396 +src/supervision/metrics/f1_score.py,method,F1Score,_make_empty_content,A,4,446,456 +src/supervision/metrics/mean_average_precision.py,method,MeanAveragePrecisionResult,__init__,A,4,72,100 +src/supervision/metrics/mean_average_precision.py,method,MeanAveragePrecisionResult,small_objects,A,4,131,138 +src/supervision/metrics/mean_average_precision.py,method,MeanAveragePrecisionResult,medium_objects,A,4,149,156 +src/supervision/metrics/mean_average_precision.py,method,MeanAveragePrecisionResult,large_objects,A,4,167,174 +src/supervision/metrics/mean_average_precision.py,method,MeanAveragePrecisionResult,__str__,A,4,176,232 +src/supervision/metrics/mean_average_recall.py,method,MeanAverageRecall,update,A,4,408,437 +src/supervision/metrics/mean_average_recall.py,method,MeanAverageRecall,_match_detection_batch,A,4,595,623 +src/supervision/metrics/mean_average_recall.py,method,MeanAverageRecall,_compute_confusion_matrix,A,4,626,686 +src/supervision/metrics/mean_average_recall.py,method,MeanAverageRecall,_make_empty_content,A,4,734,747 +src/supervision/metrics/precision.py,method,PrecisionResult,__init__,A,4,81,109 +src/supervision/metrics/precision.py,method,PrecisionResult,small_objects,A,4,129,136 +src/supervision/metrics/precision.py,method,PrecisionResult,medium_objects,A,4,147,154 +src/supervision/metrics/precision.py,method,PrecisionResult,large_objects,A,4,165,172 +src/supervision/metrics/precision.py,method,Precision,update,A,4,403,432 +src/supervision/metrics/precision.py,method,Precision,_match_detection_batch,A,4,628,656 +src/supervision/metrics/precision.py,method,Precision,_compute_confusion_matrix,A,4,659,713 +src/supervision/metrics/precision.py,method,Precision,_make_empty_content,A,4,766,779 +src/supervision/metrics/recall.py,method,Recall,update,A,4,225,254 +src/supervision/metrics/recall.py,method,Recall,_compute_recall_for_classes,A,4,369,403 +src/supervision/metrics/recall.py,method,Recall,_match_detection_batch,A,4,406,434 +src/supervision/metrics/recall.py,method,Recall,_compute_confusion_matrix,A,4,437,491 +src/supervision/metrics/recall.py,method,Recall,_make_empty_content,A,4,544,559 +src/supervision/metrics/utils/object_size.py,function,,get_object_size_category,A,4,46,82 +src/supervision/metrics/utils/object_size.py,function,,get_obb_size_category,A,4,168,211 +src/supervision/tracker/byte_tracker/core.py,function,,sub_tracks,A,4,498,515 +src/supervision/tracker/byte_tracker/single_object_track.py,method,STrack,re_activate,A,4,202,213 +src/supervision/utils/file.py,method,NumpyJsonEncoder,default,A,4,12,19 +src/supervision/utils/image.py,function,,crop_image,A,4,34,90 +src/supervision/utils/image.py,function,,resize_image,A,4,146,206 +src/supervision/utils/image.py,function,,get_image_resolution_wh,A,4,434,477 +src/supervision/utils/image.py,function,,_prepare_default_titles_anchors,A,4,860,876 +src/supervision/utils/internal.py,function,,wrapper,A,4,104,123 +src/supervision/utils/iterables.py,function,,create_batches,A,4,7,42 +src/supervision/utils/video.py,method,_VideoProcessor,_total_frames,A,4,366,369 +src/supervision/utils/video.py,method,_VideoProcessor,_process_frames,A,4,382,399 +src/supervision/validators/__init__.py,function,,_validate_xyxy,A,4,10,24 +src/supervision/validators/__init__.py,function,,_validate_class_id,A,4,84,93 +src/supervision/validators/__init__.py,function,,_validate_confidence,A,4,106,116 +src/supervision/validators/__init__.py,function,,_validate_tracker_id,A,4,169,178 +src/supervision/validators/__init__.py,function,,_validate_xy,A,4,216,223 +src/supervision/validators/__init__.py,function,,_validate_keypoints_fields,A,4,292,309 +src/supervision/annotators/core.py,method,RichLabelAnnotator,_draw_labels,A,5,1774,1835 +src/supervision/annotators/utils.py,function,,get_labels_text,A,5,235,263 +src/supervision/dataset/core.py,method,DetectionDataset,__init__,A,5,74,99 +src/supervision/dataset/formats/pascal_voc.py,function,,load_pascal_voc_annotations,A,5,181,232 +src/supervision/detection/compact_mask.py,function,,_rle_scale_col,A,5,128,190 +src/supervision/detection/compact_mask.py,method,CompactMask,from_dense,A,5,476,549 +src/supervision/detection/core.py,function,,merge_inner_detections_objects,A,5,2830,2854 +src/supervision/detection/core.py,function,,_normalize_sam3_prediction,A,5,2898,2910 +src/supervision/detection/core.py,method,Detections,from_sam3,A,5,718,809 +src/supervision/detection/core.py,method,Detections,from_lmm,A,5,942,1428 +src/supervision/detection/core.py,method,Detections,area,A,5,2337,2382 +src/supervision/detection/line_zone.py,method,LineZoneAnnotator,annotate,A,5,438,507 +src/supervision/detection/vlm.py,function,,_extract_json_from_backticks,A,5,591,602 +src/supervision/detection/vlm.py,function,,_filter_gemini_2_5_results,A,5,693,717 +src/supervision/detection/tools/csv_sink.py,method,CSVSink,_slice_value,A,5,119,142 +src/supervision/detection/tools/inference_slicer.py,function,,move_detections,A,5,44,82 +src/supervision/detection/tools/inference_slicer.py,method,InferenceSlicer,_validate_overlap,A,5,621,638 +src/supervision/detection/tools/inference_slicer.py,function,,_compute_axis_starts,A,5,581,596 +src/supervision/detection/tools/json_sink.py,method,JSONSink,_slice_value,A,5,122,145 +src/supervision/detection/tools/transformers.py,function,,process_transformers_v4_segmentation_result,A,5,43,78 +src/supervision/detection/utils/converters.py,function,,_base48_encode,A,5,382,415 +src/supervision/detection/utils/converters.py,function,,rle_to_mask,A,5,575,646 +src/supervision/detection/utils/internal.py,function,,extract_ultralytics_masks,A,5,18,51 +src/supervision/detection/utils/internal.py,function,,is_metadata_equal,A,5,217,234 +src/supervision/detection/utils/iou_and_nms.py,function,,box_iou_batch,A,5,162,261 +src/supervision/detection/utils/iou_and_nms.py,function,,mask_non_max_suppression,A,5,840,904 +src/supervision/detection/utils/iou_and_nms.py,function,,_group_overlapping_masks,A,5,981,1035 +src/supervision/detection/utils/masks.py,function,,move_masks,A,5,12,87 +src/supervision/detection/utils/masks.py,function,,calculate_masks_centroids,A,5,90,147 +src/supervision/detection/utils/masks.py,function,,_filter_labels_by_edge_distance,A,5,319,341 +src/supervision/draw/color.py,method,Color,from_rgba_tuple,A,5,205,232 +src/supervision/draw/color.py,method,Color,from_bgra_tuple,A,5,235,262 +src/supervision/draw/color.py,method,Color,__eq__,A,5,395,401 +src/supervision/key_points/annotators.py,method,_BaseVertexEllipseAnnotator,_decompose_covariance,A,5,315,328 +src/supervision/key_points/annotators.py,method,VertexEllipseAreaAnnotator,annotate,A,5,406,468 +src/supervision/key_points/annotators.py,method,VertexEllipseOutlineAnnotator,annotate,A,5,504,565 +src/supervision/key_points/core.py,method,KeyPoints,_select_fields,A,5,961,995 +src/supervision/key_points/core.py,method,KeyPoints,__getitem__,A,5,1059,1108 +src/supervision/metrics/detection.py,function,,_try_early_exit,A,5,219,239 +src/supervision/metrics/detection.py,method,ConfusionMatrix,__eq__,A,5,346,353 +src/supervision/metrics/detection.py,method,MeanAveragePrecision,_average_precisions_per_class,A,5,1095,1148 +src/supervision/metrics/f1_score.py,method,F1Score,_compute_f1_for_classes,A,5,253,306 +src/supervision/metrics/f1_score.py,method,F1ScoreResult,__init__,A,5,562,595 +src/supervision/metrics/f1_score.py,method,F1ScoreResult,plot,A,5,731,793 +src/supervision/metrics/mean_average_precision.py,method,MeanAveragePrecisionResult,plot,A,5,270,336 +src/supervision/metrics/mean_average_recall.py,method,MeanAverageRecallResult,__init__,A,5,125,158 +src/supervision/metrics/mean_average_recall.py,method,MeanAverageRecallResult,plot,A,5,272,343 +src/supervision/metrics/precision.py,method,PrecisionResult,plot,A,5,274,335 +src/supervision/metrics/precision.py,method,Precision,_compute_precision_for_classes,A,5,570,625 +src/supervision/metrics/recall.py,method,RecallResult,__init__,A,5,85,118 +src/supervision/metrics/recall.py,method,Recall,plot,A,5,706,768 +src/supervision/tracker/byte_tracker/core.py,method,ByteTrack,_split_by_confidence,A,5,239,293 +src/supervision/tracker/byte_tracker/single_object_track.py,method,STrack,predict,A,5,153,161 +src/supervision/utils/file.py,function,,read_txt_file,A,5,92,126 +src/supervision/utils/image.py,function,,_draw_texts,A,5,816,857 +src/supervision/annotators/core.py,method,OrientedBoxAnnotator,annotate,B,6,374,434 +src/supervision/annotators/core.py,method,PolygonAnnotator,annotate,B,6,612,676 +src/supervision/annotators/core.py,method,HaloAnnotator,annotate,B,6,803,870 +src/supervision/annotators/core.py,method,DotAnnotator,annotate,B,6,1195,1267 +src/supervision/annotators/core.py,method,LabelAnnotator,_draw_labels,B,6,1460,1540 +src/supervision/annotators/core.py,method,BlurAnnotator,annotate,B,6,1987,2044 +src/supervision/annotators/core.py,method,HeatMapAnnotator,annotate,B,6,2228,2301 +src/supervision/annotators/core.py,method,TriangleAnnotator,annotate,B,6,2437,2517 +src/supervision/annotators/core.py,method,RoundBoxAnnotator,annotate,B,6,2553,2653 +src/supervision/annotators/core.py,method,PercentageBarAnnotator,annotate,B,6,2697,2792 +src/supervision/annotators/core.py,method,CropAnnotator,annotate,B,6,2896,2974 +src/supervision/annotators/core.py,method,BackgroundOverlayAnnotator,annotate,B,6,3051,3102 +src/supervision/annotators/core.py,method,ComparisonAnnotator,annotate,B,6,3166,3243 +src/supervision/assets/downloader.py,function,,download_assets,B,6,41,95 +src/supervision/dataset/core.py,method,DetectionDataset,split,B,6,157,228 +src/supervision/dataset/core.py,method,ClassificationDataset,split,B,6,824,895 +src/supervision/dataset/formats/coco.py,function,,_build_coco_segmentation_from_mask,B,6,218,262 +src/supervision/dataset/formats/pascal_voc.py,function,,detections_to_pascal_voc,B,6,84,178 +src/supervision/detection/core.py,method,Detections,__iter__,B,6,180,203 +src/supervision/detection/core.py,method,Detections,from_transformers,B,6,492,567 +src/supervision/detection/line_zone.py,method,LineZone,_update_class_id_to_name,B,6,357,377 +src/supervision/detection/vlm.py,function,,from_paligemma,B,6,215,257 +src/supervision/detection/vlm.py,function,,recover_truncated_qwen_2_5_vl_response,B,6,260,302 +src/supervision/detection/vlm.py,function,,_parse_gemini_2_5_item,B,6,621,649 +src/supervision/detection/vlm.py,function,,_decode_mask_for_item,B,6,728,761 +src/supervision/detection/vlm.py,function,,from_google_gemini_2_5,B,6,840,920 +src/supervision/detection/tools/csv_sink.py,method,CSVSink,append,B,6,196,230 +src/supervision/detection/utils/converters.py,function,,_base48_decode,B,6,332,379 +src/supervision/detection/utils/internal.py,function,,_decode_rle_mask,B,6,54,78 +src/supervision/detection/utils/iou_and_nms.py,function,,box_iou_batch_with_jaccard,B,6,304,360 +src/supervision/detection/utils/iou_and_nms.py,function,,_validate_oriented_box_batch,B,6,426,440 +src/supervision/detection/utils/masks.py,function,,filter_segments_by_distance,B,6,344,475 +src/supervision/detection/utils/vlms.py,function,,edit_distance,B,6,4,62 +src/supervision/key_points/core.py,method,KeyPoints,from_yolo_nas,B,6,637,691 +src/supervision/key_points/core.py,method,KeyPoints,as_detections,B,6,1272,1342 +src/supervision/metrics/f1_score.py,method,F1ScoreResult,__str__,B,6,633,699 +src/supervision/metrics/mean_average_precision.py,method,COCOEvaluator,_prepare_targets_and_predictions,B,6,747,779 +src/supervision/metrics/mean_average_precision.py,method,COCOEvaluator,evaluate,B,6,1369,1400 +src/supervision/metrics/mean_average_recall.py,method,MeanAverageRecallResult,__str__,B,6,172,239 +src/supervision/metrics/precision.py,method,PrecisionResult,__str__,B,6,174,242 +src/supervision/metrics/recall.py,method,Recall,__str__,B,6,606,674 +src/supervision/metrics/utils/object_size.py,function,,get_detection_size_category,B,6,214,241 +src/supervision/tracker/byte_tracker/core.py,method,ByteTrack,update_with_detections,B,6,111,183 +src/supervision/tracker/byte_tracker/single_object_track.py,method,STrack,update,B,6,215,239 +src/supervision/utils/image.py,function,,overlay_image,B,6,283,352 +src/supervision/annotators/core.py,method,BoxCornerAnnotator,annotate,B,7,999,1064 +src/supervision/annotators/core.py,method,IconAnnotator,annotate,B,7,1885,1954 +src/supervision/annotators/core.py,method,PercentageBarAnnotator,_validate_custom_values,B,7,2824,2848 +src/supervision/annotators/core.py,method,ComparisonAnnotator,_use_obb,B,7,3246,3253 +src/supervision/annotators/core.py,method,ComparisonAnnotator,_use_mask,B,7,3257,3264 +src/supervision/dataset/formats/coco.py,function,,_build_coco_segmentation_from_raw_data,B,7,265,280 +src/supervision/detection/compact_mask.py,function,,_rle_join_cols,B,7,193,246 +src/supervision/detection/compact_mask.py,method,CompactMask,merge,B,7,924,982 +src/supervision/detection/core.py,method,Detections,from_easyocr,B,7,1931,1972 +src/supervision/detection/core.py,method,Detections,with_nms,B,7,2433,2508 +src/supervision/detection/vlm.py,function,,_collect_gemini_2_5_items,B,7,652,690 +src/supervision/detection/tools/inference_slicer.py,method,InferenceSlicer,_normalize_slice_wh,B,7,506,527 +src/supervision/detection/tools/inference_slicer.py,method,InferenceSlicer,_normalize_overlap_wh,B,7,531,553 +src/supervision/detection/utils/internal.py,function,,_merge_data_values,B,7,259,275 +src/supervision/detection/utils/iou_and_nms.py,function,,mask_non_max_merge,B,7,1038,1110 +src/supervision/detection/utils/iou_and_nms.py,function,,_non_max_merge_per_category,B,7,1144,1174 +src/supervision/detection/utils/polygons.py,function,,approximate_polygon,B,7,44,116 +src/supervision/key_points/annotators.py,method,VertexLabelAnnotator,_resolve_labels,B,7,930,957 +src/supervision/key_points/core.py,method,KeyPoints,from_inference,B,7,388,468 +src/supervision/key_points/core.py,method,KeyPoints,with_nms,B,7,1184,1270 +src/supervision/metrics/detection.py,function,,_validate_detection_batch_shapes,B,7,195,215 +src/supervision/metrics/detection.py,method,MeanAveragePrecision,from_tensors,B,7,915,1008 +src/supervision/metrics/f1_score.py,method,F1Score,_detections_content,B,7,428,444 +src/supervision/metrics/f1_score.py,method,F1ScoreResult,to_pandas,B,7,701,729 +src/supervision/metrics/mean_average_precision.py,method,MeanAveragePrecisionResult,to_pandas,B,7,235,267 +src/supervision/metrics/mean_average_recall.py,method,MeanAverageRecallResult,to_pandas,B,7,241,270 +src/supervision/metrics/mean_average_recall.py,method,MeanAverageRecall,_detections_content,B,7,716,732 +src/supervision/metrics/precision.py,method,PrecisionResult,to_pandas,B,7,244,272 +src/supervision/metrics/precision.py,method,Precision,_detections_content,B,7,748,764 +src/supervision/metrics/recall.py,method,Recall,_detections_content,B,7,526,542 +src/supervision/metrics/recall.py,method,Recall,to_pandas,B,7,676,704 +src/supervision/tracker/byte_tracker/core.py,function,,remove_duplicate_tracks,B,7,518,540 +src/supervision/tracker/byte_tracker/core.py,method,ByteTrack,_second_association,B,7,349,384 +src/supervision/tracker/byte_tracker/core.py,method,ByteTrack,_unconfirmed_and_init_new,B,7,386,416 +src/supervision/tracker/byte_tracker/core.py,method,ByteTrack,_remove_stale_lost_tracks,B,7,418,450 +src/supervision/tracker/byte_tracker/single_object_track.py,method,STrack,multi_predict,B,7,165,182 +src/supervision/utils/video.py,function,,_mux_audio,B,7,140,204 +src/supervision/utils/video.py,function,,get_video_frames_generator,B,7,231,280 +src/supervision/validators/__init__.py,function,,_validate_keypoint_confidence,B,7,129,147 +src/supervision/validators/__init__.py,function,,_validate_visible,B,7,236,255 +src/supervision/validators/__init__.py,function,,_validate_resolution,B,7,334,354 +src/supervision/annotators/core.py,function,,_paint_masks_by_area,B,8,438,493 +src/supervision/dataset/core.py,method,DetectionDataset,__eq__,B,8,135,155 +src/supervision/dataset/core.py,method,DetectionDataset,as_yolo,B,8,504,575 +src/supervision/dataset/core.py,method,ClassificationDataset,__eq__,B,8,802,822 +src/supervision/dataset/formats/coco.py,function,,coco_annotations_to_masks,B,8,97,143 +src/supervision/dataset/formats/coco.py,function,,load_coco_annotations,B,8,423,527 +src/supervision/detection/core.py,method,Detections,merge,B,8,2081,2184 +src/supervision/detection/core.py,method,Detections,__getitem__,B,8,2252,2298 +src/supervision/detection/tools/smoother.py,method,DetectionsSmoother,update_with_detections,B,8,100,131 +src/supervision/detection/tools/smoother.py,method,DetectionsSmoother,get_smoothed_detections,B,8,166,184 +src/supervision/draw/color.py,method,Color,from_hex,B,8,106,146 +src/supervision/key_points/annotators.py,method,VertexAnnotator,annotate,B,8,51,108 +src/supervision/metrics/mean_average_precision.py,method,EvaluationDataset,get_image_ids,B,8,504,533 +src/supervision/metrics/mean_average_precision.py,function,,_summarize,B,8,1279,1320 +src/supervision/tracker/byte_tracker/matching.py,function,,iou_distance,B,8,44,62 +src/supervision/utils/image.py,function,,_establish_grid_size,B,8,739,753 +src/supervision/utils/internal.py,function,,get_instance_variables,B,8,169,208 +src/supervision/utils/video.py,method,_VideoProcessor,_drain_and_cleanup,B,8,336,355 +src/supervision/validators/__init__.py,function,,_validate_mask,B,8,37,62 +src/supervision/annotators/utils.py,function,,resolve_color_idx,B,9,40,77 +src/supervision/dataset/formats/coco.py,function,,coco_annotations_to_detections,B,9,146,214 +src/supervision/dataset/formats/yolo.py,function,,load_yolo_annotations,B,9,187,271 +src/supervision/detection/compact_mask.py,function,,_rle_resize,B,9,249,330 +src/supervision/detection/compact_mask.py,method,CompactMask,__getitem__,B,9,795,861 +src/supervision/detection/compact_mask.py,method,CompactMask,with_offset,B,9,1067,1185 +src/supervision/detection/compact_mask.py,method,CompactMask,resize,B,9,1192,1306 +src/supervision/detection/core.py,method,Detections,with_nmm,B,9,2510,2602 +src/supervision/detection/vlm.py,function,,_validate_vlm_parameters,B,9,163,203 +src/supervision/detection/vlm.py,function,,from_deepseek_vl_2,B,9,424,492 +src/supervision/detection/vlm.py,function,,from_moondream,B,9,923,984 +src/supervision/detection/tools/csv_sink.py,method,CSVSink,parse_detection_data,B,9,145,194 +src/supervision/detection/tools/smoother.py,method,DetectionsSmoother,get_track,B,9,133,164 +src/supervision/detection/utils/polygons.py,function,,filter_polygons_by_area,B,9,8,40 +src/supervision/draw/utils.py,function,,draw_image,B,9,301,368 +src/supervision/key_points/annotators.py,method,VertexEllipseHaloAnnotator,annotate,B,9,606,697 +src/supervision/metrics/detection.py,function,,_validate_input_tensors,B,9,146,183 +src/supervision/metrics/f1_score.py,method,F1Score,_filter_detections_by_size,B,9,458,482 +src/supervision/metrics/mean_average_precision.py,method,COCOEvaluator,_compute_iou,B,9,781,820 +src/supervision/metrics/mean_average_precision.py,method,MeanAveragePrecision,update,B,9,1472,1512 +src/supervision/metrics/mean_average_recall.py,method,MeanAverageRecall,_filter_detections_by_size,B,9,749,773 +src/supervision/metrics/precision.py,method,Precision,_filter_detections_by_size,B,9,781,805 +src/supervision/metrics/recall.py,method,Recall,_filter_detections_by_size,B,9,561,585 +src/supervision/utils/image.py,function,,create_tiles,B,9,565,703 +src/supervision/utils/notebook.py,function,,plot_images_grid,B,9,50,117 +src/supervision/utils/video.py,function,,_validate_and_setup_video,B,9,207,228 +src/supervision/validators/__init__.py,function,,_validate_data,B,9,191,204 +src/supervision/annotators/core.py,method,TraceAnnotator,annotate,B,10,2090,2189 +src/supervision/annotators/core.py,method,PixelateAnnotator,annotate,B,10,2323,2395 +src/supervision/annotators/utils.py,function,,wrap_text,B,10,159,202 +src/supervision/detection/core.py,method,Detections,from_azure_analyze_image,B,10,813,896 +src/supervision/detection/vlm.py,function,,from_google_gemini_2_0,B,10,764,837 +src/supervision/detection/tools/json_sink.py,method,JSONSink,parse_detection_data,B,10,148,198 +src/supervision/detection/utils/iou_and_nms.py,function,,compact_mask_iou_batch,B,10,577,677 +src/supervision/key_points/annotators.py,method,_BaseVertexEllipseAnnotator,_iter_ellipse_params,B,10,330,367 +src/supervision/key_points/core.py,function,,_normalize_row_index,B,10,51,71 +src/supervision/metrics/detection.py,function,,detections_to_tensor,B,10,29,143 +src/supervision/metrics/detection.py,function,,_fill_confusion_matrix_from_iou,B,10,255,305 +src/supervision/metrics/mean_average_precision.py,method,EvaluationDataset,create_class_members,B,10,374,402 +src/supervision/metrics/mean_average_precision.py,method,COCOEvaluator,_select_evaluation_indices,B,10,1004,1033 +src/supervision/annotators/core.py,method,PercentageBarAnnotator,calculate_border_coordinates,C,11,2795,2821 +src/supervision/annotators/core.py,method,CropAnnotator,calculate_crop_coordinates,C,11,2977,3015 +src/supervision/annotators/utils.py,function,,resolve_text_background_xyxy,C,11,80,129 +src/supervision/dataset/formats/yolo.py,function,,yolo_annotations_to_detections,C,11,138,184 +src/supervision/detection/core.py,method,Detections,from_ultralytics,C,11,254,333 +src/supervision/detection/core.py,function,,stack_or_none,C,11,2152,2165 +src/supervision/detection/tools/inference_slicer.py,method,InferenceSlicer,_collect_detections,C,11,302,360 +src/supervision/key_points/annotators.py,method,_BaseVertexEllipseAnnotator,__init__,C,11,268,296 +src/supervision/metrics/mean_average_precision.py,method,MeanAveragePrecision,_prepare_predictions,C,11,1576,1625 +src/supervision/metrics/mean_average_recall.py,method,MeanAverageRecall,_compute,C,11,468,555 +src/supervision/metrics/recall.py,method,Recall,_compute,C,11,285,366 +src/supervision/dataset/formats/pascal_voc.py,function,,detections_from_xml_obj,C,12,235,332 +src/supervision/detection/compact_mask.py,function,,_rle_split_cols,C,12,49,125 +src/supervision/detection/core.py,function,,merge_inner_detection_object_pair,C,12,2737,2825 +src/supervision/detection/core.py,method,Detections,get_anchors_coordinates,C,12,2187,2250 +src/supervision/detection/line_zone.py,method,LineZone,trigger,C,12,192,264 +src/supervision/detection/line_zone.py,method,LineZoneAnnotatorMulticlass,annotate,C,12,840,944 +src/supervision/detection/tools/inference_slicer.py,method,InferenceSlicer,_run_callback,C,12,443,503 +src/supervision/detection/utils/iou_and_nms.py,function,,oriented_box_iou_batch,C,12,456,574 +src/supervision/detection/utils/iou_and_nms.py,function,,oriented_box_non_max_suppression,C,12,1246,1338 +src/supervision/detection/utils/iou_and_nms.py,function,,oriented_box_non_max_merge,C,12,1366,1461 +src/supervision/key_points/core.py,method,KeyPoints,from_mediapipe,C,12,472,594 +src/supervision/utils/file.py,function,,list_files_with_extensions,C,12,22,89 +src/supervision/dataset/core.py,method,DetectionDataset,merge,C,13,231,327 +src/supervision/dataset/formats/yolo.py,function,,detections_to_yolo_annotations,C,13,296,419 +src/supervision/detection/utils/internal.py,function,,get_data_item,C,13,370,407 +src/supervision/key_points/annotators.py,method,VertexLabelAnnotator,annotate,C,13,740,905 +src/supervision/dataset/formats/yolo.py,function,,_extract_class_names,C,14,70,129 +src/supervision/detection/utils/internal.py,function,,merge_metadata,C,14,316,367 +src/supervision/detection/utils/iou_and_nms.py,function,,mask_iou_batch,C,14,744,837 +src/supervision/metrics/mean_average_precision.py,method,EvaluationDataset,get_category_ids,C,14,458,502 +src/supervision/metrics/mean_average_precision.py,method,EvaluationDataset,load_predictions,C,14,549,613 +src/supervision/detection/core.py,function,,_merge_detection_group,C,15,2648,2732 +src/supervision/detection/vlm.py,function,,from_florence_2,C,15,495,588 +src/supervision/detection/utils/internal.py,function,,process_roboflow_result,C,15,81,195 +src/supervision/key_points/core.py,method,KeyPoints,_get_by_2d_bool_mask,C,15,830,922 +src/supervision/key_points/core.py,method,KeyPoints,_reshape_selected,C,15,998,1038 +src/supervision/metrics/detection.py,method,ConfusionMatrix,plot,C,15,688,775 +src/supervision/metrics/f1_score.py,method,F1Score,_compute,C,15,152,250 +src/supervision/metrics/precision.py,method,Precision,_compute,C,15,463,567 +src/supervision/detection/vlm.py,function,,from_qwen_2_5_vl,C,16,305,394 +src/supervision/key_points/annotators.py,method,EdgeAnnotator,annotate,C,16,141,258 +src/supervision/key_points/core.py,method,KeyPoints,_normalize_getitem_index,C,17,925,959 +src/supervision/metrics/mean_average_precision.py,method,EvaluationDataset,get_annotation_ids,C,17,404,456 +src/supervision/metrics/mean_average_precision.py,method,MeanAveragePrecision,_prepare_targets,C,17,1514,1573 +src/supervision/detection/core.py,method,Detections,from_vlm,C,20,1431,1928 +src/supervision/metrics/mean_average_precision.py,method,COCOEvaluator,_compute_raw_metrics,C,20,1036,1134 +src/supervision/metrics/mean_average_precision.py,method,COCOEvaluator,_evaluate_image,D,28,822,944 diff --git a/metrics-after-radon/hal_depois.json b/metrics-after-radon/hal_depois.json new file mode 100644 index 0000000000..70504d0dd3 --- /dev/null +++ b/metrics-after-radon/hal_depois.json @@ -0,0 +1,12073 @@ +{ + "src\\supervision\\config.py": { + "total": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "functions": {} + }, + "src\\supervision\\__init__.py": { + "total": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "functions": {} + }, + "src\\supervision\\annotators\\base.py": { + "total": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "functions": { + "annotate": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + } + } + }, + "src\\supervision\\annotators\\core.py": { + "total": { + "h1": 22, + "h2": 385, + "N1": 434, + "N2": 825, + "vocabulary": 407, + "length": 1259, + "calculated_length": 3404.762630309193, + "volume": 10914.126195191206, + "difficulty": 23.571428571428573, + "effort": 257261.546029507, + "time": 14292.30811275039, + "bugs": 3.6380420650637353 + }, + "functions": { + "_normalize_color_input": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "__init__": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "color": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "color_lookup": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "text_color": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "text_padding": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "text_anchor": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "text_offset": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "border_radius": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "smart_position": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "max_line_length": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "_adjust_labels_in_frame": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "annotate": { + "h1": 7, + "h2": 25, + "N1": 19, + "N2": 35, + "vocabulary": 32, + "length": 54, + "calculated_length": 135.74788919877133, + "volume": 270.0, + "difficulty": 4.9, + "effort": 1323.0, + "time": 73.5, + "bugs": 0.09 + }, + "_paint_masks_by_area": { + "h1": 4, + "h2": 12, + "N1": 11, + "N2": 22, + "vocabulary": 16, + "length": 33, + "calculated_length": 51.01955000865388, + "volume": 132.0, + "difficulty": 3.6666666666666665, + "effort": 484.0, + "time": 26.88888888888889, + "bugs": 0.044 + }, + "_get_label_properties": { + "h1": 5, + "h2": 20, + "N1": 14, + "N2": 27, + "vocabulary": 25, + "length": 41, + "calculated_length": 98.04820237218406, + "volume": 190.3981037807637, + "difficulty": 3.375, + "effort": 642.5936002600776, + "time": 35.6996444588932, + "bugs": 0.0634660345935879 + }, + "_draw_labels": { + "h1": 6, + "h2": 25, + "N1": 23, + "N2": 45, + "vocabulary": 31, + "length": 68, + "calculated_length": 131.60617974869504, + "volume": 336.88534910630756, + "difficulty": 5.4, + "effort": 1819.180885174061, + "time": 101.06560473189228, + "bugs": 0.11229511636876918 + }, + "draw_rounded_rectangle": { + "h1": 4, + "h2": 8, + "N1": 17, + "N2": 32, + "vocabulary": 12, + "length": 49, + "calculated_length": 32.0, + "volume": 175.66316253533668, + "difficulty": 8.0, + "effort": 1405.3053002826935, + "time": 78.07251668237186, + "bugs": 0.058554387511778896 + }, + "_load_font": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "_load_icon": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "calculate_border_coordinates": { + "h1": 5, + "h2": 30, + "N1": 47, + "N2": 94, + "vocabulary": 35, + "length": 141, + "calculated_length": 158.81635834269238, + "volume": 723.2289053892403, + "difficulty": 7.833333333333333, + "effort": 5665.293092215715, + "time": 314.73850512309525, + "bugs": 0.24107630179641343 + }, + "_validate_custom_values": { + "h1": 4, + "h2": 10, + "N1": 7, + "N2": 11, + "vocabulary": 14, + "length": 18, + "calculated_length": 41.219280948873624, + "volume": 68.53238859703687, + "difficulty": 2.2, + "effort": 150.77125491348113, + "time": 8.37618082852673, + "bugs": 0.022844129532345624 + }, + "validate_custom_values": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "calculate_crop_coordinates": { + "h1": 5, + "h2": 30, + "N1": 47, + "N2": 94, + "vocabulary": 35, + "length": 141, + "calculated_length": 158.81635834269238, + "volume": 723.2289053892403, + "difficulty": 7.833333333333333, + "effort": 5665.293092215715, + "time": 314.73850512309525, + "bugs": 0.24107630179641343 + }, + "_use_obb": { + "h1": 4, + "h2": 13, + "N1": 9, + "N2": 17, + "vocabulary": 17, + "length": 26, + "calculated_length": 56.105716335834195, + "volume": 106.27403387250884, + "difficulty": 2.6153846153846154, + "effort": 277.94747320502313, + "time": 15.441526289167951, + "bugs": 0.03542467795750295 + }, + "_use_mask": { + "h1": 4, + "h2": 13, + "N1": 9, + "N2": 17, + "vocabulary": 17, + "length": 26, + "calculated_length": 56.105716335834195, + "volume": 106.27403387250884, + "difficulty": 2.6153846153846154, + "effort": 277.94747320502313, + "time": 15.441526289167951, + "bugs": 0.03542467795750295 + }, + "_mask_from_xyxy": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "_mask_from_obb": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "_mask_from_mask": { + "h1": 2, + "h2": 3, + "N1": 2, + "N2": 4, + "vocabulary": 5, + "length": 6, + "calculated_length": 6.754887502163469, + "volume": 13.931568569324174, + "difficulty": 1.3333333333333333, + "effort": 18.575424759098897, + "time": 1.0319680421721609, + "bugs": 0.004643856189774725 + } + } + }, + "src\\supervision\\annotators\\utils.py": { + "total": { + "h1": 18, + "h2": 135, + "N1": 110, + "N2": 213, + "vocabulary": 153, + "length": 323, + "calculated_length": 1030.4287556278239, + "volume": 2344.1362731897266, + "difficulty": 14.2, + "effort": 33286.735079294114, + "time": 1849.2630599607842, + "bugs": 0.7813787577299088 + }, + "functions": { + "list": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "resolve_color_idx": { + "h1": 4, + "h2": 11, + "N1": 7, + "N2": 14, + "vocabulary": 15, + "length": 21, + "calculated_length": 46.053747805010275, + "volume": 82.0447025077789, + "difficulty": 2.5454545454545454, + "effort": 208.84106092889172, + "time": 11.602281162716206, + "bugs": 0.02734823416925963 + }, + "resolve_text_background_xyxy": { + "h1": 5, + "h2": 30, + "N1": 47, + "N2": 94, + "vocabulary": 35, + "length": 141, + "calculated_length": 158.81635834269238, + "volume": 723.2289053892403, + "difficulty": 7.833333333333333, + "effort": 5665.293092215715, + "time": 314.73850512309525, + "bugs": 0.24107630179641343 + }, + "get_color_by_index": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "resolve_color": { + "h1": 2, + "h2": 7, + "N1": 3, + "N2": 7, + "vocabulary": 9, + "length": 10, + "calculated_length": 21.651484454403228, + "volume": 31.699250014423125, + "difficulty": 1.0, + "effort": 31.699250014423125, + "time": 1.7610694452457292, + "bugs": 0.010566416671474375 + }, + "wrap_text": { + "h1": 5, + "h2": 13, + "N1": 8, + "N2": 14, + "vocabulary": 18, + "length": 22, + "calculated_length": 59.715356810271004, + "volume": 91.73835003173087, + "difficulty": 2.6923076923076925, + "effort": 246.98786547004468, + "time": 13.721548081669148, + "bugs": 0.030579450010576957 + }, + "_validate_labels": { + "h1": 3, + "h2": 6, + "N1": 3, + "N2": 6, + "vocabulary": 9, + "length": 9, + "calculated_length": 20.264662506490406, + "volume": 28.529325012980813, + "difficulty": 1.5, + "effort": 42.793987519471216, + "time": 2.377443751081734, + "bugs": 0.009509775004326938 + }, + "validate_labels": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "get_labels_text": { + "h1": 2, + "h2": 5, + "N1": 3, + "N2": 6, + "vocabulary": 7, + "length": 9, + "calculated_length": 13.60964047443681, + "volume": 25.26619429851844, + "difficulty": 1.2, + "effort": 30.319433158222125, + "time": 1.6844129532345624, + "bugs": 0.008422064766172813 + }, + "snap_boxes": { + "h1": 6, + "h2": 23, + "N1": 14, + "N2": 26, + "vocabulary": 29, + "length": 40, + "calculated_length": 119.55169999363824, + "volume": 194.3192398051029, + "difficulty": 3.391304347826087, + "effort": 658.9956828173055, + "time": 36.610871267628085, + "bugs": 0.0647730799350343 + }, + "__init__": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "put": { + "h1": 7, + "h2": 12, + "N1": 9, + "N2": 17, + "vocabulary": 19, + "length": 26, + "calculated_length": 62.67103446305711, + "volume": 110.44611534953322, + "difficulty": 4.958333333333333, + "effort": 547.6286552747688, + "time": 30.4238141819316, + "bugs": 0.03681537178317774 + }, + "get": { + "h1": 1, + "h2": 1, + "N1": 1, + "N2": 2, + "vocabulary": 2, + "length": 3, + "calculated_length": 0.0, + "volume": 3.0, + "difficulty": 1.0, + "effort": 3.0, + "time": 0.16666666666666666, + "bugs": 0.001 + }, + "hex_to_rgba": { + "h1": 3, + "h2": 6, + "N1": 3, + "N2": 6, + "vocabulary": 9, + "length": 9, + "calculated_length": 20.264662506490406, + "volume": 28.529325012980813, + "difficulty": 1.5, + "effort": 42.793987519471216, + "time": 2.377443751081734, + "bugs": 0.009509775004326938 + }, + "rgba_to_hex": { + "h1": 4, + "h2": 8, + "N1": 5, + "N2": 8, + "vocabulary": 12, + "length": 13, + "calculated_length": 32.0, + "volume": 46.604512509375034, + "difficulty": 2.0, + "effort": 93.20902501875007, + "time": 5.178279167708337, + "bugs": 0.015534837503125011 + }, + "is_valid_hex": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "calculate_dynamic_kernel_size": { + "h1": 2, + "h2": 6, + "N1": 3, + "N2": 6, + "vocabulary": 8, + "length": 9, + "calculated_length": 17.509775004326936, + "volume": 27.0, + "difficulty": 1.0, + "effort": 27.0, + "time": 1.5, + "bugs": 0.009 + }, + "calculate_dynamic_pixel_size": { + "h1": 2, + "h2": 6, + "N1": 3, + "N2": 6, + "vocabulary": 8, + "length": 9, + "calculated_length": 17.509775004326936, + "volume": 27.0, + "difficulty": 1.0, + "effort": 27.0, + "time": 1.5, + "bugs": 0.009 + } + } + }, + "src\\supervision\\annotators\\__init__.py": { + "total": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "functions": {} + }, + "src\\supervision\\assets\\downloader.py": { + "total": { + "h1": 3, + "h2": 7, + "N1": 5, + "N2": 7, + "vocabulary": 10, + "length": 12, + "calculated_length": 24.406371956566698, + "volume": 39.863137138648355, + "difficulty": 1.5, + "effort": 59.79470570797253, + "time": 3.321928094887363, + "bugs": 0.013287712379549451 + }, + "functions": { + "is_md5_hash_matching": { + "h1": 2, + "h2": 3, + "N1": 2, + "N2": 3, + "vocabulary": 5, + "length": 5, + "calculated_length": 6.754887502163469, + "volume": 11.60964047443681, + "difficulty": 1.0, + "effort": 11.60964047443681, + "time": 0.6449800263576005, + "bugs": 0.0038698801581456034 + }, + "download_assets": { + "h1": 2, + "h2": 4, + "N1": 3, + "N2": 4, + "vocabulary": 6, + "length": 7, + "calculated_length": 10.0, + "volume": 18.094737505048094, + "difficulty": 1.0, + "effort": 18.094737505048094, + "time": 1.0052631947248942, + "bugs": 0.006031579168349364 + } + } + }, + "src\\supervision\\assets\\list.py": { + "total": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "functions": { + "__new__": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "list": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + } + } + }, + "src\\supervision\\assets\\__init__.py": { + "total": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "functions": {} + }, + "src\\supervision\\classification\\core.py": { + "total": { + "h1": 7, + "h2": 22, + "N1": 13, + "N2": 22, + "vocabulary": 29, + "length": 35, + "calculated_length": 117.75898006442377, + "volume": 170.02933482946506, + "difficulty": 3.5, + "effort": 595.1026719031277, + "time": 33.06125955017376, + "bugs": 0.05667644494315502 + }, + "functions": { + "_validate_class_ids": { + "h1": 3, + "h2": 5, + "N1": 3, + "N2": 5, + "vocabulary": 8, + "length": 8, + "calculated_length": 16.36452797660028, + "volume": 24.0, + "difficulty": 1.5, + "effort": 36.0, + "time": 2.0, + "bugs": 0.008 + }, + "_validate_confidence": { + "h1": 4, + "h2": 7, + "N1": 4, + "N2": 7, + "vocabulary": 11, + "length": 11, + "calculated_length": 27.651484454403228, + "volume": 38.053747805010275, + "difficulty": 2.0, + "effort": 76.10749561002055, + "time": 4.228194200556697, + "bugs": 0.012684582601670092 + }, + "__post_init__": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "__len__": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "from_clip": { + "h1": 2, + "h2": 3, + "N1": 2, + "N2": 3, + "vocabulary": 5, + "length": 5, + "calculated_length": 6.754887502163469, + "volume": 11.60964047443681, + "difficulty": 1.0, + "effort": 11.60964047443681, + "time": 0.6449800263576005, + "bugs": 0.0038698801581456034 + }, + "from_ultralytics": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "from_timm": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "get_top_k": { + "h1": 2, + "h2": 3, + "N1": 2, + "N2": 3, + "vocabulary": 5, + "length": 5, + "calculated_length": 6.754887502163469, + "volume": 11.60964047443681, + "difficulty": 1.0, + "effort": 11.60964047443681, + "time": 0.6449800263576005, + "bugs": 0.0038698801581456034 + } + } + }, + "src\\supervision\\classification\\__init__.py": { + "total": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "functions": {} + }, + "src\\supervision\\dataset\\core.py": { + "total": { + "h1": 9, + "h2": 65, + "N1": 43, + "N2": 81, + "vocabulary": 74, + "length": 124, + "calculated_length": 419.9832328598303, + "volume": 769.97221733799, + "difficulty": 5.607692307692307, + "effort": 4317.7672803030355, + "time": 239.8759600168353, + "bugs": 0.25665740577933 + }, + "functions": { + "__len__": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "split": { + "h1": 1, + "h2": 4, + "N1": 2, + "N2": 4, + "vocabulary": 5, + "length": 6, + "calculated_length": 8.0, + "volume": 13.931568569324174, + "difficulty": 0.5, + "effort": 6.965784284662087, + "time": 0.3869880158145604, + "bugs": 0.004643856189774725 + }, + "__init__": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "_get_image": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "__getitem__": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "__iter__": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "__eq__": { + "h1": 3, + "h2": 7, + "N1": 6, + "N2": 10, + "vocabulary": 10, + "length": 16, + "calculated_length": 24.406371956566698, + "volume": 53.1508495181978, + "difficulty": 2.142857142857143, + "effort": 113.89467753899528, + "time": 6.327482085499738, + "bugs": 0.017716949839399268 + }, + "merge": { + "h1": 6, + "h2": 15, + "N1": 9, + "N2": 16, + "vocabulary": 21, + "length": 25, + "calculated_length": 74.11313393845472, + "volume": 109.80793556946902, + "difficulty": 3.2, + "effort": 351.3853938223009, + "time": 19.521410767905607, + "bugs": 0.03660264518982301 + }, + "as_pascal_voc": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "from_pascal_voc": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "from_yolo": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "as_yolo": { + "h1": 4, + "h2": 14, + "N1": 8, + "N2": 17, + "vocabulary": 18, + "length": 25, + "calculated_length": 61.30296890880645, + "volume": 104.2481250360578, + "difficulty": 2.4285714285714284, + "effort": 253.17401794471178, + "time": 14.065223219150655, + "bugs": 0.03474937501201927 + }, + "from_coco": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "as_coco": { + "h1": 1, + "h2": 3, + "N1": 2, + "N2": 4, + "vocabulary": 4, + "length": 6, + "calculated_length": 4.754887502163469, + "volume": 12.0, + "difficulty": 0.6666666666666666, + "effort": 8.0, + "time": 0.4444444444444444, + "bugs": 0.004 + }, + "as_folder_structure": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "from_folder_structure": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + } + } + }, + "src\\supervision\\dataset\\utils.py": { + "total": { + "h1": 8, + "h2": 21, + "N1": 11, + "N2": 22, + "vocabulary": 29, + "length": 33, + "calculated_length": 116.23866587835397, + "volume": 160.3133728392099, + "difficulty": 4.190476190476191, + "effort": 671.7893718976416, + "time": 37.321631772091195, + "bugs": 0.0534377909464033 + }, + "functions": { + "mask_to_rle": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "rle_to_mask": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "approximate_mask_with_polygons": { + "h1": 2, + "h2": 7, + "N1": 4, + "N2": 8, + "vocabulary": 9, + "length": 12, + "calculated_length": 21.651484454403228, + "volume": 38.03910001730775, + "difficulty": 1.1428571428571428, + "effort": 43.47325716263743, + "time": 2.415180953479857, + "bugs": 0.012679700005769252 + }, + "merge_class_lists": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "build_class_index_mapping": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "map_detections_class_id": { + "h1": 3, + "h2": 6, + "N1": 3, + "N2": 6, + "vocabulary": 9, + "length": 9, + "calculated_length": 20.264662506490406, + "volume": 28.529325012980813, + "difficulty": 1.5, + "effort": 42.793987519471216, + "time": 2.377443751081734, + "bugs": 0.009509775004326938 + }, + "save_dataset_images": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "train_test_split": { + "h1": 2, + "h2": 4, + "N1": 2, + "N2": 4, + "vocabulary": 6, + "length": 6, + "calculated_length": 10.0, + "volume": 15.509775004326936, + "difficulty": 1.0, + "effort": 15.509775004326936, + "time": 0.861654166907052, + "bugs": 0.005169925001442312 + } + } + }, + "src\\supervision\\dataset\\__init__.py": { + "total": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "functions": {} + }, + "src\\supervision\\dataset\\formats\\coco.py": { + "total": { + "h1": 15, + "h2": 51, + "N1": 31, + "N2": 57, + "vocabulary": 66, + "length": 88, + "calculated_length": 347.8970513746741, + "volume": 531.906682503544, + "difficulty": 8.382352941176471, + "effort": 4458.629544515001, + "time": 247.7016413619445, + "bugs": 0.17730222750118133 + }, + "functions": { + "coco_categories_to_classes": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "build_coco_class_index_mapping": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "classes_to_coco_categories": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "group_coco_annotations_by_image_id": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "coco_annotations_to_masks": { + "h1": 4, + "h2": 7, + "N1": 5, + "N2": 7, + "vocabulary": 11, + "length": 12, + "calculated_length": 27.651484454403228, + "volume": 41.51317942364757, + "difficulty": 2.0, + "effort": 83.02635884729514, + "time": 4.612575491516397, + "bugs": 0.01383772647454919 + }, + "coco_annotations_to_detections": { + "h1": 2, + "h2": 3, + "N1": 2, + "N2": 3, + "vocabulary": 5, + "length": 5, + "calculated_length": 6.754887502163469, + "volume": 11.60964047443681, + "difficulty": 1.0, + "effort": 11.60964047443681, + "time": 0.6449800263576005, + "bugs": 0.0038698801581456034 + }, + "_build_coco_segmentation_from_mask": { + "h1": 2, + "h2": 4, + "N1": 2, + "N2": 4, + "vocabulary": 6, + "length": 6, + "calculated_length": 10.0, + "volume": 15.509775004326936, + "difficulty": 1.0, + "effort": 15.509775004326936, + "time": 0.861654166907052, + "bugs": 0.005169925001442312 + }, + "_build_coco_segmentation_from_raw_data": { + "h1": 4, + "h2": 8, + "N1": 5, + "N2": 9, + "vocabulary": 12, + "length": 14, + "calculated_length": 32.0, + "volume": 50.18947501009619, + "difficulty": 2.25, + "effort": 112.92631877271643, + "time": 6.273684376262024, + "bugs": 0.016729825003365395 + }, + "detections_to_coco_annotations": { + "h1": 5, + "h2": 12, + "N1": 7, + "N2": 14, + "vocabulary": 17, + "length": 21, + "calculated_length": 54.62919048309069, + "volume": 85.83671966625714, + "difficulty": 2.9166666666666665, + "effort": 250.3570990265833, + "time": 13.908727723699073, + "bugs": 0.02861223988875238 + }, + "get_coco_class_index_mapping": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "load_coco_annotations": { + "h1": 4, + "h2": 7, + "N1": 4, + "N2": 8, + "vocabulary": 11, + "length": 12, + "calculated_length": 27.651484454403228, + "volume": 41.51317942364757, + "difficulty": 2.2857142857142856, + "effort": 94.88726725405158, + "time": 5.27151484744731, + "bugs": 0.01383772647454919 + }, + "_with_seg_mask": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "save_coco_annotations": { + "h1": 3, + "h2": 6, + "N1": 4, + "N2": 8, + "vocabulary": 9, + "length": 12, + "calculated_length": 20.264662506490406, + "volume": 38.03910001730775, + "difficulty": 2.0, + "effort": 76.0782000346155, + "time": 4.226566668589751, + "bugs": 0.012679700005769252 + } + } + }, + "src\\supervision\\dataset\\formats\\pascal_voc.py": { + "total": { + "h1": 8, + "h2": 33, + "N1": 20, + "N2": 38, + "vocabulary": 41, + "length": 58, + "calculated_length": 190.46500593882897, + "volume": 310.7380162678489, + "difficulty": 4.606060606060606, + "effort": 1431.2781355367586, + "time": 79.51545197426437, + "bugs": 0.10357933875594963 + }, + "functions": { + "object_to_pascal_voc": { + "h1": 2, + "h2": 4, + "N1": 3, + "N2": 6, + "vocabulary": 6, + "length": 9, + "calculated_length": 10.0, + "volume": 23.264662506490403, + "difficulty": 1.5, + "effort": 34.89699375973561, + "time": 1.938721875540867, + "bugs": 0.007754887502163467 + }, + "detections_to_pascal_voc": { + "h1": 3, + "h2": 4, + "N1": 3, + "N2": 5, + "vocabulary": 7, + "length": 8, + "calculated_length": 12.75488750216347, + "volume": 22.458839376460833, + "difficulty": 1.875, + "effort": 42.11032383086406, + "time": 2.3394624350480036, + "bugs": 0.007486279792153611 + }, + "load_pascal_voc_annotations": { + "h1": 2, + "h2": 3, + "N1": 2, + "N2": 3, + "vocabulary": 5, + "length": 5, + "calculated_length": 6.754887502163469, + "volume": 11.60964047443681, + "difficulty": 1.0, + "effort": 11.60964047443681, + "time": 0.6449800263576005, + "bugs": 0.0038698801581456034 + }, + "detections_from_xml_obj": { + "h1": 5, + "h2": 11, + "N1": 6, + "N2": 12, + "vocabulary": 16, + "length": 18, + "calculated_length": 49.663388279447084, + "volume": 72.0, + "difficulty": 2.727272727272727, + "effort": 196.36363636363635, + "time": 10.909090909090908, + "bugs": 0.024 + }, + "_with_poly_mask": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "parse_polygon_points": { + "h1": 2, + "h2": 4, + "N1": 2, + "N2": 4, + "vocabulary": 6, + "length": 6, + "calculated_length": 10.0, + "volume": 15.509775004326936, + "difficulty": 1.0, + "effort": 15.509775004326936, + "time": 0.861654166907052, + "bugs": 0.005169925001442312 + }, + "_get_required_text": { + "h1": 2, + "h2": 5, + "N1": 3, + "N2": 6, + "vocabulary": 7, + "length": 9, + "calculated_length": 13.60964047443681, + "volume": 25.26619429851844, + "difficulty": 1.2, + "effort": 30.319433158222125, + "time": 1.6844129532345624, + "bugs": 0.008422064766172813 + } + } + }, + "src\\supervision\\dataset\\formats\\yolo.py": { + "total": { + "h1": 14, + "h2": 71, + "N1": 48, + "N2": 87, + "vocabulary": 85, + "length": 135, + "calculated_length": 489.9350143936389, + "volume": 865.2677763785898, + "difficulty": 8.577464788732394, + "effort": 7421.803884712129, + "time": 412.3224380395627, + "bugs": 0.2884225921261966 + }, + "functions": { + "_parse_box": { + "h1": 3, + "h2": 13, + "N1": 8, + "N2": 16, + "vocabulary": 16, + "length": 24, + "calculated_length": 52.860603837997665, + "volume": 96.0, + "difficulty": 1.8461538461538463, + "effort": 177.23076923076923, + "time": 9.846153846153847, + "bugs": 0.032 + }, + "_box_to_polygon": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "_parse_polygon": { + "h1": 1, + "h2": 1, + "N1": 1, + "N2": 1, + "vocabulary": 2, + "length": 2, + "calculated_length": 0.0, + "volume": 2.0, + "difficulty": 0.5, + "effort": 1.0, + "time": 0.05555555555555555, + "bugs": 0.0006666666666666666 + }, + "_polygons_to_masks": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "_with_seg_mask": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "_extract_class_names": { + "h1": 2, + "h2": 5, + "N1": 4, + "N2": 5, + "vocabulary": 7, + "length": 9, + "calculated_length": 13.60964047443681, + "volume": 25.26619429851844, + "difficulty": 1.0, + "effort": 25.26619429851844, + "time": 1.403677461028802, + "bugs": 0.008422064766172813 + }, + "_image_name_to_annotation_name": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "yolo_annotations_to_detections": { + "h1": 5, + "h2": 13, + "N1": 8, + "N2": 14, + "vocabulary": 18, + "length": 22, + "calculated_length": 59.715356810271004, + "volume": 91.73835003173087, + "difficulty": 2.6923076923076925, + "effort": 246.98786547004468, + "time": 13.721548081669148, + "bugs": 0.030579450010576957 + }, + "load_yolo_annotations": { + "h1": 4, + "h2": 8, + "N1": 6, + "N2": 10, + "vocabulary": 12, + "length": 16, + "calculated_length": 32.0, + "volume": 57.359400011538504, + "difficulty": 2.5, + "effort": 143.39850002884626, + "time": 7.966583334935903, + "bugs": 0.01911980000384617 + }, + "object_to_yolo": { + "h1": 5, + "h2": 13, + "N1": 10, + "N2": 19, + "vocabulary": 18, + "length": 29, + "calculated_length": 59.715356810271004, + "volume": 120.92782504182705, + "difficulty": 3.6538461538461537, + "effort": 441.85166842206036, + "time": 24.547314912336688, + "bugs": 0.04030927501394235 + }, + "detections_to_yolo_annotations": { + "h1": 7, + "h2": 14, + "N1": 9, + "N2": 18, + "vocabulary": 21, + "length": 27, + "calculated_length": 72.95445336320968, + "volume": 118.59257041502654, + "difficulty": 4.5, + "effort": 533.6665668676194, + "time": 29.648142603756632, + "bugs": 0.03953085680500885 + }, + "save_yolo_annotations": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "save_data_yaml": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + } + } + }, + "src\\supervision\\dataset\\formats\\__init__.py": { + "total": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "functions": {} + }, + "src\\supervision\\detection\\compact_mask.py": { + "total": { + "h1": 19, + "h2": 207, + "N1": 169, + "N2": 324, + "vocabulary": 226, + "length": 493, + "calculated_length": 1673.2624229577884, + "volume": 3855.348228470688, + "difficulty": 14.869565217391305, + "effort": 57327.351918998924, + "time": 3184.852884388829, + "bugs": 1.285116076156896 + }, + "functions": { + "_rle_area": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "_rle_split_cols": { + "h1": 8, + "h2": 19, + "N1": 21, + "N2": 40, + "vocabulary": 27, + "length": 61, + "calculated_length": 104.71062275542812, + "volume": 290.0481376319716, + "difficulty": 8.421052631578947, + "effort": 2442.510632690287, + "time": 135.69503514946038, + "bugs": 0.09668271254399054 + }, + "_rle_scale_col": { + "h1": 6, + "h2": 14, + "N1": 13, + "N2": 24, + "vocabulary": 20, + "length": 37, + "calculated_length": 68.81274391313339, + "volume": 159.91133951083242, + "difficulty": 5.142857142857143, + "effort": 822.4011746271382, + "time": 45.688954145952124, + "bugs": 0.05330377983694414 + }, + "_rle_join_cols": { + "h1": 8, + "h2": 16, + "N1": 12, + "N2": 20, + "vocabulary": 24, + "length": 32, + "calculated_length": 88.0, + "volume": 146.71880002307702, + "difficulty": 5.0, + "effort": 733.5940001153851, + "time": 40.755222228632505, + "bugs": 0.04890626667435901 + }, + "_rle_resize": { + "h1": 6, + "h2": 25, + "N1": 16, + "N2": 32, + "vocabulary": 31, + "length": 48, + "calculated_length": 131.60617974869504, + "volume": 237.80142289857002, + "difficulty": 3.84, + "effort": 913.1574639305088, + "time": 50.7309702183616, + "bugs": 0.07926714096619 + }, + "_resize_crop": { + "h1": 4, + "h2": 10, + "N1": 5, + "N2": 10, + "vocabulary": 14, + "length": 15, + "calculated_length": 41.219280948873624, + "volume": 57.110323830864054, + "difficulty": 2.0, + "effort": 114.22064766172811, + "time": 6.345591536762672, + "bugs": 0.019036774610288017 + }, + "__init__": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "from_dense": { + "h1": 5, + "h2": 13, + "N1": 14, + "N2": 28, + "vocabulary": 18, + "length": 42, + "calculated_length": 59.715356810271004, + "volume": 175.1368500605771, + "difficulty": 5.384615384615385, + "effort": 943.0445772492614, + "time": 52.39136540273674, + "bugs": 0.05837895002019237 + }, + "to_dense": { + "h1": 1, + "h2": 4, + "N1": 2, + "N2": 4, + "vocabulary": 5, + "length": 6, + "calculated_length": 8.0, + "volume": 13.931568569324174, + "difficulty": 0.5, + "effort": 6.965784284662087, + "time": 0.3869880158145604, + "bugs": 0.004643856189774725 + }, + "crop": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "__len__": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "__iter__": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "shape": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "offsets": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "bbox_xyxy": { + "h1": 3, + "h2": 9, + "N1": 5, + "N2": 10, + "vocabulary": 12, + "length": 15, + "calculated_length": 33.28421251514428, + "volume": 53.77443751081735, + "difficulty": 1.6666666666666667, + "effort": 89.62406251802892, + "time": 4.9791145843349405, + "bugs": 0.017924812503605784 + }, + "dtype": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "area": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "sum": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "__getitem__": { + "h1": 3, + "h2": 10, + "N1": 5, + "N2": 10, + "vocabulary": 13, + "length": 15, + "calculated_length": 37.974168451037094, + "volume": 55.506595772116384, + "difficulty": 1.5, + "effort": 83.25989365817458, + "time": 4.625549647676365, + "bugs": 0.01850219859070546 + }, + "__array__": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "__eq__": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "merge": { + "h1": 2, + "h2": 3, + "N1": 2, + "N2": 3, + "vocabulary": 5, + "length": 5, + "calculated_length": 6.754887502163469, + "volume": 11.60964047443681, + "difficulty": 1.0, + "effort": 11.60964047443681, + "time": 0.6449800263576005, + "bugs": 0.0038698801581456034 + }, + "repack": { + "h1": 5, + "h2": 12, + "N1": 12, + "N2": 21, + "vocabulary": 17, + "length": 33, + "calculated_length": 54.62919048309069, + "volume": 134.8862737612612, + "difficulty": 4.375, + "effort": 590.1274477055177, + "time": 32.78485820586209, + "bugs": 0.044962091253753736 + }, + "with_offset": { + "h1": 10, + "h2": 37, + "N1": 35, + "N2": 68, + "vocabulary": 47, + "length": 103, + "calculated_length": 225.9690554771448, + "volume": 572.1226517227967, + "difficulty": 9.18918918918919, + "effort": 5257.343286101375, + "time": 292.07462700563195, + "bugs": 0.19070755057426558 + }, + "resize": { + "h1": 8, + "h2": 31, + "N1": 25, + "N2": 50, + "vocabulary": 39, + "length": 75, + "calculated_length": 177.58008562199316, + "volume": 396.40516641466866, + "difficulty": 6.451612903225806, + "effort": 2557.4526865462494, + "time": 142.08070480812498, + "bugs": 0.1321350554715562 + } + } + }, + "src\\supervision\\detection\\core.py": { + "total": { + "h1": 18, + "h2": 262, + "N1": 177, + "N2": 342, + "vocabulary": 280, + "length": 519, + "calculated_length": 2179.8154764287733, + "volume": 4219.097885794437, + "difficulty": 11.748091603053435, + "effort": 49566.34844456213, + "time": 2753.686024697896, + "bugs": 1.4063659619314792 + }, + "functions": { + "__post_init__": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "__len__": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "__iter__": { + "h1": 1, + "h2": 5, + "N1": 4, + "N2": 8, + "vocabulary": 6, + "length": 12, + "calculated_length": 11.60964047443681, + "volume": 31.019550008653873, + "difficulty": 0.8, + "effort": 24.8156400069231, + "time": 1.3786466670512834, + "bugs": 0.010339850002884624 + }, + "__eq__": { + "h1": 1, + "h2": 1, + "N1": 1, + "N2": 1, + "vocabulary": 2, + "length": 2, + "calculated_length": 0.0, + "volume": 2.0, + "difficulty": 0.5, + "effort": 1.0, + "time": 0.05555555555555555, + "bugs": 0.0006666666666666666 + }, + "from_yolov5": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "from_ultralytics": { + "h1": 3, + "h2": 10, + "N1": 8, + "N2": 16, + "vocabulary": 13, + "length": 24, + "calculated_length": 37.974168451037094, + "volume": 88.81055323538621, + "difficulty": 2.4, + "effort": 213.1453277649269, + "time": 11.841407098051494, + "bugs": 0.029603517745128736 + }, + "from_yolo_nas": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "from_tensorflow": { + "h1": 1, + "h2": 4, + "N1": 2, + "N2": 4, + "vocabulary": 5, + "length": 6, + "calculated_length": 8.0, + "volume": 13.931568569324174, + "difficulty": 0.5, + "effort": 6.965784284662087, + "time": 0.3869880158145604, + "bugs": 0.004643856189774725 + }, + "from_deepsparse": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "from_mmdetection": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "from_transformers": { + "h1": 3, + "h2": 11, + "N1": 7, + "N2": 14, + "vocabulary": 14, + "length": 21, + "calculated_length": 42.808635307173745, + "volume": 79.95445336320968, + "difficulty": 1.9090909090909092, + "effort": 152.64032005703666, + "time": 8.480017780946481, + "bugs": 0.026651484454403226 + }, + "from_detectron2": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "from_inference": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "from_sam": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "from_sam3": { + "h1": 2, + "h2": 3, + "N1": 2, + "N2": 3, + "vocabulary": 5, + "length": 5, + "calculated_length": 6.754887502163469, + "volume": 11.60964047443681, + "difficulty": 1.0, + "effort": 11.60964047443681, + "time": 0.6449800263576005, + "bugs": 0.0038698801581456034 + }, + "from_azure_analyze_image": { + "h1": 7, + "h2": 14, + "N1": 10, + "N2": 20, + "vocabulary": 21, + "length": 30, + "calculated_length": 72.95445336320968, + "volume": 131.76952268336282, + "difficulty": 5.0, + "effort": 658.847613416814, + "time": 36.602645189823, + "bugs": 0.04392317422778761 + }, + "from_paddledet": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "from_lmm": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "from_vlm": { + "h1": 3, + "h2": 16, + "N1": 12, + "N2": 24, + "vocabulary": 19, + "length": 36, + "calculated_length": 68.75488750216347, + "volume": 152.92539048396907, + "difficulty": 2.25, + "effort": 344.0821285889304, + "time": 19.115673810496133, + "bugs": 0.050975130161323025 + }, + "from_easyocr": { + "h1": 3, + "h2": 6, + "N1": 3, + "N2": 6, + "vocabulary": 9, + "length": 9, + "calculated_length": 20.264662506490406, + "volume": 28.529325012980813, + "difficulty": 1.5, + "effort": 42.793987519471216, + "time": 2.377443751081734, + "bugs": 0.009509775004326938 + }, + "from_ncnn": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "empty": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "is_empty": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "merge": { + "h1": 3, + "h2": 8, + "N1": 5, + "N2": 9, + "vocabulary": 11, + "length": 14, + "calculated_length": 28.75488750216347, + "volume": 48.43204266092217, + "difficulty": 1.6875, + "effort": 81.72907199030617, + "time": 4.540503999461453, + "bugs": 0.016144014220307392 + }, + "get_anchors_coordinates": { + "h1": 4, + "h2": 32, + "N1": 23, + "N2": 46, + "vocabulary": 36, + "length": 69, + "calculated_length": 168.0, + "volume": 356.72482509951953, + "difficulty": 2.875, + "effort": 1025.5838721611187, + "time": 56.97688178672882, + "bugs": 0.11890827503317318 + }, + "__getitem__": { + "h1": 2, + "h2": 7, + "N1": 5, + "N2": 10, + "vocabulary": 9, + "length": 15, + "calculated_length": 21.651484454403228, + "volume": 47.548875021634686, + "difficulty": 1.4285714285714286, + "effort": 67.92696431662098, + "time": 3.7737202398122767, + "bugs": 0.01584962500721156 + }, + "__setitem__": { + "h1": 1, + "h2": 1, + "N1": 1, + "N2": 1, + "vocabulary": 2, + "length": 2, + "calculated_length": 0.0, + "volume": 2.0, + "difficulty": 0.5, + "effort": 1.0, + "time": 0.05555555555555555, + "bugs": 0.0006666666666666666 + }, + "area": { + "h1": 2, + "h2": 4, + "N1": 2, + "N2": 4, + "vocabulary": 6, + "length": 6, + "calculated_length": 10.0, + "volume": 15.509775004326936, + "difficulty": 1.0, + "effort": 15.509775004326936, + "time": 0.861654166907052, + "bugs": 0.005169925001442312 + }, + "box_area": { + "h1": 2, + "h2": 6, + "N1": 3, + "N2": 6, + "vocabulary": 8, + "length": 9, + "calculated_length": 17.509775004326936, + "volume": 27.0, + "difficulty": 1.0, + "effort": 27.0, + "time": 1.5, + "bugs": 0.009 + }, + "box_aspect_ratio": { + "h1": 2, + "h2": 6, + "N1": 3, + "N2": 6, + "vocabulary": 8, + "length": 9, + "calculated_length": 17.509775004326936, + "volume": 27.0, + "difficulty": 1.0, + "effort": 27.0, + "time": 1.5, + "bugs": 0.009 + }, + "with_nms": { + "h1": 4, + "h2": 9, + "N1": 8, + "N2": 13, + "vocabulary": 13, + "length": 21, + "calculated_length": 36.52932501298081, + "volume": 77.70923408096293, + "difficulty": 2.888888888888889, + "effort": 224.49334290055958, + "time": 12.471852383364421, + "bugs": 0.025903078026987644 + }, + "with_nmm": { + "h1": 4, + "h2": 9, + "N1": 8, + "N2": 13, + "vocabulary": 13, + "length": 21, + "calculated_length": 36.52932501298081, + "volume": 77.70923408096293, + "difficulty": 2.888888888888889, + "effort": 224.49334290055958, + "time": 12.471852383364421, + "bugs": 0.025903078026987644 + }, + "_merge_obb_corners": { + "h1": 3, + "h2": 7, + "N1": 5, + "N2": 8, + "vocabulary": 10, + "length": 13, + "calculated_length": 24.406371956566698, + "volume": 43.18506523353572, + "difficulty": 1.7142857142857142, + "effort": 74.03154040034694, + "time": 4.11286335557483, + "bugs": 0.014395021744511906 + }, + "_merge_detection_group": { + "h1": 9, + "h2": 22, + "N1": 13, + "N2": 26, + "vocabulary": 31, + "length": 39, + "calculated_length": 126.63682062300134, + "volume": 193.21365610508815, + "difficulty": 5.318181818181818, + "effort": 1027.5453529225142, + "time": 57.08585294013968, + "bugs": 0.06440455203502939 + }, + "merge_inner_detection_object_pair": { + "h1": 10, + "h2": 36, + "N1": 26, + "N2": 52, + "vocabulary": 46, + "length": 78, + "calculated_length": 219.33658100079685, + "volume": 430.83783257244704, + "difficulty": 7.222222222222222, + "effort": 3111.6065685787844, + "time": 172.86703158771024, + "bugs": 0.14361261085748234 + }, + "merge_inner_detections_objects": { + "h1": 3, + "h2": 6, + "N1": 4, + "N2": 8, + "vocabulary": 9, + "length": 12, + "calculated_length": 20.264662506490406, + "volume": 38.03910001730775, + "difficulty": 2.0, + "effort": 76.0782000346155, + "time": 4.226566668589751, + "bugs": 0.012679700005769252 + }, + "merge_inner_detections_objects_without_iou": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "_get_sam3_value": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "_normalize_sam3_prompt_results": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "_normalize_sam3_prompt_result": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "_normalize_sam3_prediction": { + "h1": 5, + "h2": 9, + "N1": 5, + "N2": 10, + "vocabulary": 14, + "length": 15, + "calculated_length": 40.13896548741762, + "volume": 57.110323830864054, + "difficulty": 2.7777777777777777, + "effort": 158.6397884190668, + "time": 8.813321578837044, + "bugs": 0.019036774610288017 + }, + "_build_sam3_mask": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "_validate_fields_both_defined_or_none": { + "h1": 2, + "h2": 5, + "N1": 3, + "N2": 6, + "vocabulary": 7, + "length": 9, + "calculated_length": 13.60964047443681, + "volume": 25.26619429851844, + "difficulty": 1.2, + "effort": 30.319433158222125, + "time": 1.6844129532345624, + "bugs": 0.008422064766172813 + }, + "validate_fields_both_defined_or_none": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + } + } + }, + "src\\supervision\\detection\\line_zone.py": { + "total": { + "h1": 19, + "h2": 146, + "N1": 117, + "N2": 221, + "vocabulary": 165, + "length": 338, + "calculated_length": 1130.4250083519107, + "volume": 2489.8169084150854, + "difficulty": 14.38013698630137, + "effort": 35803.9082138183, + "time": 1989.1060118787946, + "bugs": 0.8299389694716951 + }, + "functions": { + "_multiclass_config_property": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "__init__": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "in_count": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "out_count": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "in_count_per_class": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "out_count_per_class": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "trigger": { + "h1": 10, + "h2": 17, + "N1": 12, + "N2": 23, + "vocabulary": 27, + "length": 35, + "calculated_length": 102.70614925012941, + "volume": 166.4210625757214, + "difficulty": 6.764705882352941, + "effort": 1125.7895409534094, + "time": 62.54386338630052, + "bugs": 0.05547368752524047 + }, + "_calculate_region_of_interest_limits": { + "h1": 5, + "h2": 9, + "N1": 10, + "N2": 19, + "vocabulary": 14, + "length": 29, + "calculated_length": 40.13896548741762, + "volume": 110.41329273967051, + "difficulty": 5.277777777777778, + "effort": 582.7368227927054, + "time": 32.37426793292808, + "bugs": 0.0368044309132235 + }, + "_compute_anchor_sides": { + "h1": 5, + "h2": 10, + "N1": 7, + "N2": 13, + "vocabulary": 15, + "length": 20, + "calculated_length": 44.82892142331043, + "volume": 78.13781191217038, + "difficulty": 3.25, + "effort": 253.94788871455373, + "time": 14.10821603969743, + "bugs": 0.026045937304056792 + }, + "_update_class_id_to_name": { + "h1": 3, + "h2": 5, + "N1": 5, + "N2": 10, + "vocabulary": 8, + "length": 15, + "calculated_length": 16.36452797660028, + "volume": 45.0, + "difficulty": 3.0, + "effort": 135.0, + "time": 7.5, + "bugs": 0.015 + }, + "annotate": { + "h1": 7, + "h2": 32, + "N1": 28, + "N2": 54, + "vocabulary": 39, + "length": 82, + "calculated_length": 179.65148445440323, + "volume": 433.4029819467044, + "difficulty": 5.90625, + "effort": 2559.786362122723, + "time": 142.2103534512624, + "bugs": 0.14446766064890146 + }, + "_get_line_angle": { + "h1": 5, + "h2": 10, + "N1": 8, + "N2": 16, + "vocabulary": 15, + "length": 24, + "calculated_length": 44.82892142331043, + "volume": 93.76537429460444, + "difficulty": 4.0, + "effort": 375.06149717841777, + "time": 20.836749843245432, + "bugs": 0.03125512476486815 + }, + "_calculate_anchor_in_frame": { + "h1": 5, + "h2": 30, + "N1": 20, + "N2": 40, + "vocabulary": 35, + "length": 60, + "calculated_length": 158.81635834269238, + "volume": 307.756981016698, + "difficulty": 3.3333333333333335, + "effort": 1025.8566033889933, + "time": 56.99203352161074, + "bugs": 0.10258566033889932 + }, + "_draw_basic_label": { + "h1": 3, + "h2": 5, + "N1": 4, + "N2": 8, + "vocabulary": 8, + "length": 12, + "calculated_length": 16.36452797660028, + "volume": 36.0, + "difficulty": 2.4, + "effort": 86.39999999999999, + "time": 4.8, + "bugs": 0.012 + }, + "_draw_oriented_label": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "_make_label_image": { + "h1": 6, + "h2": 13, + "N1": 10, + "N2": 17, + "vocabulary": 19, + "length": 27, + "calculated_length": 63.61549134016113, + "volume": 114.6940428629768, + "difficulty": 3.923076923076923, + "effort": 449.95355277013977, + "time": 24.997419598341097, + "bugs": 0.03823134762099227 + } + } + }, + "src\\supervision\\detection\\vlm.py": { + "total": { + "h1": 17, + "h2": 151, + "N1": 108, + "N2": 201, + "vocabulary": 168, + "length": 309, + "calculated_length": 1162.4859839393428, + "volume": 2284.226083638637, + "difficulty": 11.314569536423841, + "effort": 25845.03486024246, + "time": 1435.83527001347, + "bugs": 0.7614086945462124 + }, + "functions": { + "list": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "from_value": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "_validate_vlm_parameters": { + "h1": 2, + "h2": 4, + "N1": 3, + "N2": 5, + "vocabulary": 6, + "length": 8, + "calculated_length": 10.0, + "volume": 20.67970000576925, + "difficulty": 1.25, + "effort": 25.84962500721156, + "time": 1.43609027817842, + "bugs": 0.006893233335256416 + }, + "validate_vlm_parameters": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "from_paligemma": { + "h1": 6, + "h2": 10, + "N1": 6, + "N2": 12, + "vocabulary": 16, + "length": 18, + "calculated_length": 48.72905595320056, + "volume": 72.0, + "difficulty": 3.6, + "effort": 259.2, + "time": 14.399999999999999, + "bugs": 0.024 + }, + "recover_truncated_qwen_2_5_vl_response": { + "h1": 3, + "h2": 11, + "N1": 12, + "N2": 20, + "vocabulary": 14, + "length": 32, + "calculated_length": 42.808635307173745, + "volume": 121.83535750584332, + "difficulty": 2.727272727272727, + "effort": 332.278247743209, + "time": 18.4599026524005, + "bugs": 0.040611785835281106 + }, + "from_qwen_2_5_vl": { + "h1": 12, + "h2": 23, + "N1": 18, + "N2": 33, + "vocabulary": 35, + "length": 51, + "calculated_length": 147.06147499796518, + "volume": 261.5934338641933, + "difficulty": 8.608695652173912, + "effort": 2251.9782567439247, + "time": 125.10990315244027, + "bugs": 0.08719781128806443 + }, + "from_qwen_3_vl": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "from_deepseek_vl_2": { + "h1": 5, + "h2": 16, + "N1": 11, + "N2": 22, + "vocabulary": 21, + "length": 33, + "calculated_length": 75.60964047443682, + "volume": 144.94647495169912, + "difficulty": 3.4375, + "effort": 498.2535076464657, + "time": 27.68075042480365, + "bugs": 0.048315491650566374 + }, + "from_florence_2": { + "h1": 7, + "h2": 18, + "N1": 14, + "N2": 26, + "vocabulary": 25, + "length": 40, + "calculated_length": 94.71013448036484, + "volume": 185.75424759098897, + "difficulty": 5.055555555555555, + "effort": 939.0909183766664, + "time": 52.171717687592576, + "bugs": 0.061918082530329654 + }, + "_extract_json_from_backticks": { + "h1": 2, + "h2": 4, + "N1": 2, + "N2": 4, + "vocabulary": 6, + "length": 6, + "calculated_length": 10.0, + "volume": 15.509775004326936, + "difficulty": 1.0, + "effort": 15.509775004326936, + "time": 0.861654166907052, + "bugs": 0.005169925001442312 + }, + "_build_empty_gemini_2_5_result": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "_parse_gemini_2_5_item": { + "h1": 5, + "h2": 11, + "N1": 7, + "N2": 14, + "vocabulary": 16, + "length": 21, + "calculated_length": 49.663388279447084, + "volume": 84.0, + "difficulty": 3.1818181818181817, + "effort": 267.27272727272725, + "time": 14.848484848484848, + "bugs": 0.028 + }, + "_collect_gemini_2_5_items": { + "h1": 1, + "h2": 4, + "N1": 3, + "N2": 6, + "vocabulary": 5, + "length": 9, + "calculated_length": 8.0, + "volume": 20.89735285398626, + "difficulty": 0.75, + "effort": 15.673014640489694, + "time": 0.8707230355827608, + "bugs": 0.0069657842846620865 + }, + "_filter_gemini_2_5_results": { + "h1": 2, + "h2": 5, + "N1": 3, + "N2": 6, + "vocabulary": 7, + "length": 9, + "calculated_length": 13.60964047443681, + "volume": 25.26619429851844, + "difficulty": 1.2, + "effort": 30.319433158222125, + "time": 1.6844129532345624, + "bugs": 0.008422064766172813 + }, + "_build_gemini_2_5_class_id": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "_decode_mask_for_item": { + "h1": 5, + "h2": 14, + "N1": 9, + "N2": 16, + "vocabulary": 19, + "length": 25, + "calculated_length": 64.91260938324326, + "volume": 106.19818783608963, + "difficulty": 2.857142857142857, + "effort": 303.42339381739896, + "time": 16.85685521207772, + "bugs": 0.03539939594536321 + }, + "from_google_gemini_2_0": { + "h1": 7, + "h2": 13, + "N1": 8, + "N2": 16, + "vocabulary": 20, + "length": 24, + "calculated_length": 67.75720079023742, + "volume": 103.72627427729671, + "difficulty": 4.3076923076923075, + "effort": 446.8208738098935, + "time": 24.823381878327417, + "bugs": 0.0345754247590989 + }, + "from_google_gemini_2_5": { + "h1": 3, + "h2": 4, + "N1": 3, + "N2": 5, + "vocabulary": 7, + "length": 8, + "calculated_length": 12.75488750216347, + "volume": 22.458839376460833, + "difficulty": 1.875, + "effort": 42.11032383086406, + "time": 2.3394624350480036, + "bugs": 0.007486279792153611 + }, + "from_moondream": { + "h1": 6, + "h2": 14, + "N1": 9, + "N2": 16, + "vocabulary": 20, + "length": 25, + "calculated_length": 68.81274391313339, + "volume": 108.04820237218406, + "difficulty": 3.4285714285714284, + "effort": 370.4509795617739, + "time": 20.580609975654106, + "bugs": 0.03601606745739469 + } + } + }, + "src\\supervision\\detection\\__init__.py": { + "total": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "functions": {} + }, + "src\\supervision\\detection\\tools\\csv_sink.py": { + "total": { + "h1": 7, + "h2": 23, + "N1": 15, + "N2": 27, + "vocabulary": 30, + "length": 42, + "calculated_length": 123.69340944371453, + "volume": 206.0894050155578, + "difficulty": 4.108695652173913, + "effort": 846.7586423465309, + "time": 47.042146797029496, + "bugs": 0.06869646833851926 + }, + "functions": { + "writerow": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "__init__": { + "h1": 1, + "h2": 3, + "N1": 2, + "N2": 4, + "vocabulary": 4, + "length": 6, + "calculated_length": 4.754887502163469, + "volume": 12.0, + "difficulty": 0.6666666666666666, + "effort": 8.0, + "time": 0.4444444444444444, + "bugs": 0.004 + }, + "__enter__": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "__exit__": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "open": { + "h1": 2, + "h2": 3, + "N1": 2, + "N2": 3, + "vocabulary": 5, + "length": 5, + "calculated_length": 6.754887502163469, + "volume": 11.60964047443681, + "difficulty": 1.0, + "effort": 11.60964047443681, + "time": 0.6449800263576005, + "bugs": 0.0038698801581456034 + }, + "close": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "_slice_value": { + "h1": 2, + "h2": 6, + "N1": 3, + "N2": 6, + "vocabulary": 8, + "length": 9, + "calculated_length": 17.509775004326936, + "volume": 27.0, + "difficulty": 1.0, + "effort": 27.0, + "time": 1.5, + "bugs": 0.009 + }, + "parse_detection_data": { + "h1": 1, + "h2": 4, + "N1": 3, + "N2": 6, + "vocabulary": 5, + "length": 9, + "calculated_length": 8.0, + "volume": 20.89735285398626, + "difficulty": 0.75, + "effort": 15.673014640489694, + "time": 0.8707230355827608, + "bugs": 0.0069657842846620865 + }, + "append": { + "h1": 2, + "h2": 3, + "N1": 3, + "N2": 4, + "vocabulary": 5, + "length": 7, + "calculated_length": 6.754887502163469, + "volume": 16.253496664211536, + "difficulty": 1.3333333333333333, + "effort": 21.67132888561538, + "time": 1.2039627158675212, + "bugs": 0.005417832221403845 + }, + "parse_field_names": { + "h1": 2, + "h2": 4, + "N1": 2, + "N2": 4, + "vocabulary": 6, + "length": 6, + "calculated_length": 10.0, + "volume": 15.509775004326936, + "difficulty": 1.0, + "effort": 15.509775004326936, + "time": 0.861654166907052, + "bugs": 0.005169925001442312 + } + } + }, + "src\\supervision\\detection\\tools\\inference_slicer.py": { + "total": { + "h1": 15, + "h2": 110, + "N1": 70, + "N2": 134, + "vocabulary": 125, + "length": 204, + "calculated_length": 804.5529274218403, + "volume": 1421.0199940710659, + "difficulty": 9.136363636363637, + "effort": 12982.955400376557, + "time": 721.2753000209199, + "bugs": 0.47367333135702194 + }, + "functions": { + "move_detections": { + "h1": 3, + "h2": 5, + "N1": 3, + "N2": 6, + "vocabulary": 8, + "length": 9, + "calculated_length": 16.36452797660028, + "volume": 27.0, + "difficulty": 1.8, + "effort": 48.6, + "time": 2.7, + "bugs": 0.009 + }, + "__init__": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "callback": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "slice_wh": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "overlap_wh": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "iou_threshold": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "overlap_metric": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "overlap_filter": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "thread_workers": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "compact_masks": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "__call__": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "_collect_detections": { + "h1": 7, + "h2": 13, + "N1": 9, + "N2": 16, + "vocabulary": 20, + "length": 25, + "calculated_length": 67.75720079023742, + "volume": 108.04820237218406, + "difficulty": 4.3076923076923075, + "effort": 465.43841021863904, + "time": 25.857689456591057, + "bugs": 0.03601606745739469 + }, + "_probe_remaining_offsets": { + "h1": 4, + "h2": 7, + "N1": 4, + "N2": 8, + "vocabulary": 11, + "length": 12, + "calculated_length": 27.651484454403228, + "volume": 41.51317942364757, + "difficulty": 2.2857142857142856, + "effort": 94.88726725405158, + "time": 5.27151484744731, + "bugs": 0.01383772647454919 + }, + "_run_sequential_inference": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "_run_parallel_inference": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "_warn_obb_sequential_fallback": { + "h1": 3, + "h2": 5, + "N1": 3, + "N2": 5, + "vocabulary": 8, + "length": 8, + "calculated_length": 16.36452797660028, + "volume": 24.0, + "difficulty": 1.5, + "effort": 36.0, + "time": 2.0, + "bugs": 0.008 + }, + "_apply_overlap_filter": { + "h1": 1, + "h2": 4, + "N1": 3, + "N2": 6, + "vocabulary": 5, + "length": 9, + "calculated_length": 8.0, + "volume": 20.89735285398626, + "difficulty": 0.75, + "effort": 15.673014640489694, + "time": 0.8707230355827608, + "bugs": 0.0069657842846620865 + }, + "_run_callback": { + "h1": 7, + "h2": 27, + "N1": 15, + "N2": 31, + "vocabulary": 34, + "length": 46, + "calculated_length": 148.0334470128169, + "volume": 234.02329069751565, + "difficulty": 4.018518518518518, + "effort": 940.4269274326091, + "time": 52.24594041292273, + "bugs": 0.07800776356583855 + }, + "_normalize_slice_wh": { + "h1": 4, + "h2": 10, + "N1": 6, + "N2": 12, + "vocabulary": 14, + "length": 18, + "calculated_length": 41.219280948873624, + "volume": 68.53238859703687, + "difficulty": 2.4, + "effort": 164.4777326328885, + "time": 9.13765181293825, + "bugs": 0.022844129532345624 + }, + "_normalize_overlap_wh": { + "h1": 4, + "h2": 10, + "N1": 6, + "N2": 12, + "vocabulary": 14, + "length": 18, + "calculated_length": 41.219280948873624, + "volume": 68.53238859703687, + "difficulty": 2.4, + "effort": 164.4777326328885, + "time": 9.13765181293825, + "bugs": 0.022844129532345624 + }, + "_generate_offset": { + "h1": 8, + "h2": 16, + "N1": 13, + "N2": 22, + "vocabulary": 24, + "length": 35, + "calculated_length": 88.0, + "volume": 160.4736875252405, + "difficulty": 5.5, + "effort": 882.6052813888227, + "time": 49.03362674382348, + "bugs": 0.05349122917508017 + }, + "_validate_overlap": { + "h1": 3, + "h2": 9, + "N1": 6, + "N2": 12, + "vocabulary": 12, + "length": 18, + "calculated_length": 33.28421251514428, + "volume": 64.52932501298082, + "difficulty": 2.0, + "effort": 129.05865002596164, + "time": 7.169925001442313, + "bugs": 0.02150977500432694 + } + } + }, + "src\\supervision\\detection\\tools\\json_sink.py": { + "total": { + "h1": 5, + "h2": 15, + "N1": 9, + "N2": 17, + "vocabulary": 20, + "length": 26, + "calculated_length": 70.2129994085646, + "volume": 112.37013046707143, + "difficulty": 2.8333333333333335, + "effort": 318.3820363233691, + "time": 17.687890906853838, + "bugs": 0.03745671015569048 + }, + "functions": { + "__init__": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "__enter__": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "__exit__": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "open": { + "h1": 2, + "h2": 3, + "N1": 2, + "N2": 3, + "vocabulary": 5, + "length": 5, + "calculated_length": 6.754887502163469, + "volume": 11.60964047443681, + "difficulty": 1.0, + "effort": 11.60964047443681, + "time": 0.6449800263576005, + "bugs": 0.0038698801581456034 + }, + "_json_default": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "write_and_close": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "_slice_value": { + "h1": 2, + "h2": 6, + "N1": 3, + "N2": 6, + "vocabulary": 8, + "length": 9, + "calculated_length": 17.509775004326936, + "volume": 27.0, + "difficulty": 1.0, + "effort": 27.0, + "time": 1.5, + "bugs": 0.009 + }, + "parse_detection_data": { + "h1": 1, + "h2": 4, + "N1": 3, + "N2": 6, + "vocabulary": 5, + "length": 9, + "calculated_length": 8.0, + "volume": 20.89735285398626, + "difficulty": 0.75, + "effort": 15.673014640489694, + "time": 0.8707230355827608, + "bugs": 0.0069657842846620865 + }, + "append": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + } + } + }, + "src\\supervision\\detection\\tools\\polygon_zone.py": { + "total": { + "h1": 8, + "h2": 23, + "N1": 16, + "N2": 31, + "vocabulary": 31, + "length": 47, + "calculated_length": 128.0419249893113, + "volume": 232.84722658818316, + "difficulty": 5.391304347826087, + "effort": 1255.3502650841178, + "time": 69.7416813935621, + "bugs": 0.07761574219606106 + }, + "functions": { + "__init__": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "trigger": { + "h1": 5, + "h2": 15, + "N1": 11, + "N2": 22, + "vocabulary": 20, + "length": 33, + "calculated_length": 70.2129994085646, + "volume": 142.62362713128297, + "difficulty": 3.6666666666666665, + "effort": 522.9532994813709, + "time": 29.05296108229838, + "bugs": 0.04754120904376099 + }, + "color": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "thickness": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "text_color": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "text_scale": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "text_thickness": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "text_padding": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "display_in_zone_count": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "opacity": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "font": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "center": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "annotate": { + "h1": 2, + "h2": 4, + "N1": 2, + "N2": 4, + "vocabulary": 6, + "length": 6, + "calculated_length": 10.0, + "volume": 15.509775004326936, + "difficulty": 1.0, + "effort": 15.509775004326936, + "time": 0.861654166907052, + "bugs": 0.005169925001442312 + } + } + }, + "src\\supervision\\detection\\tools\\smoother.py": { + "total": { + "h1": 6, + "h2": 19, + "N1": 12, + "N2": 24, + "vocabulary": 25, + "length": 36, + "calculated_length": 96.22039775975506, + "volume": 167.17882283189007, + "difficulty": 3.789473684210526, + "effort": 633.5197496787413, + "time": 35.19554164881896, + "bugs": 0.05572627427729669 + }, + "functions": { + "__init__": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "update_with_detections": { + "h1": 2, + "h2": 4, + "N1": 3, + "N2": 6, + "vocabulary": 6, + "length": 9, + "calculated_length": 10.0, + "volume": 23.264662506490403, + "difficulty": 1.5, + "effort": 34.89699375973561, + "time": 1.938721875540867, + "bugs": 0.007754887502163467 + }, + "get_track": { + "h1": 3, + "h2": 6, + "N1": 4, + "N2": 8, + "vocabulary": 9, + "length": 12, + "calculated_length": 20.264662506490406, + "volume": 38.03910001730775, + "difficulty": 2.0, + "effort": 76.0782000346155, + "time": 4.226566668589751, + "bugs": 0.012679700005769252 + }, + "get_smoothed_detections": { + "h1": 4, + "h2": 7, + "N1": 4, + "N2": 8, + "vocabulary": 11, + "length": 12, + "calculated_length": 27.651484454403228, + "volume": 41.51317942364757, + "difficulty": 2.2857142857142856, + "effort": 94.88726725405158, + "time": 5.27151484744731, + "bugs": 0.01383772647454919 + } + } + }, + "src\\supervision\\detection\\tools\\transformers.py": { + "total": { + "h1": 4, + "h2": 15, + "N1": 10, + "N2": 20, + "vocabulary": 19, + "length": 30, + "calculated_length": 66.60335893412778, + "volume": 127.43782540330756, + "difficulty": 2.6666666666666665, + "effort": 339.8342010754868, + "time": 18.879677837527044, + "bugs": 0.042479275134435855 + }, + "functions": { + "process_transformers_detection_result": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "process_transformers_v4_segmentation_result": { + "h1": 2, + "h2": 4, + "N1": 4, + "N2": 8, + "vocabulary": 6, + "length": 12, + "calculated_length": 10.0, + "volume": 31.019550008653873, + "difficulty": 2.0, + "effort": 62.039100017307746, + "time": 3.446616667628208, + "bugs": 0.010339850002884624 + }, + "process_transformers_v5_segmentation_result": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "process_transformers_v5_semantic_or_instance_segmentation_result": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "process_transformers_v4_panoptic_segmentation_result": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "process_transformers_v5_panoptic_segmentation_result": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "png_string_to_segmentation_array": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "append_class_names_to_data": { + "h1": 2, + "h2": 3, + "N1": 2, + "N2": 4, + "vocabulary": 5, + "length": 6, + "calculated_length": 6.754887502163469, + "volume": 13.931568569324174, + "difficulty": 1.3333333333333333, + "effort": 18.575424759098897, + "time": 1.0319680421721609, + "bugs": 0.004643856189774725 + } + } + }, + "src\\supervision\\detection\\tools\\__init__.py": { + "total": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "functions": {} + }, + "src\\supervision\\detection\\utils\\boxes.py": { + "total": { + "h1": 12, + "h2": 77, + "N1": 60, + "N2": 105, + "vocabulary": 89, + "length": 165, + "calculated_length": 525.5621136421613, + "volume": 1068.4960161094557, + "difficulty": 8.181818181818182, + "effort": 8742.240131804638, + "time": 485.68000732247987, + "bugs": 0.3561653387031519 + }, + "functions": { + "clip_boxes": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "pad_boxes": { + "h1": 3, + "h2": 6, + "N1": 3, + "N2": 6, + "vocabulary": 9, + "length": 9, + "calculated_length": 20.264662506490406, + "volume": 28.529325012980813, + "difficulty": 1.5, + "effort": 42.793987519471216, + "time": 2.377443751081734, + "bugs": 0.009509775004326938 + }, + "denormalize_boxes": { + "h1": 2, + "h2": 7, + "N1": 4, + "N2": 8, + "vocabulary": 9, + "length": 12, + "calculated_length": 21.651484454403228, + "volume": 38.03910001730775, + "difficulty": 1.1428571428571428, + "effort": 43.47325716263743, + "time": 2.415180953479857, + "bugs": 0.012679700005769252 + }, + "move_boxes": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "move_oriented_boxes": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "obb_polygon_area": { + "h1": 5, + "h2": 16, + "N1": 13, + "N2": 20, + "vocabulary": 21, + "length": 33, + "calculated_length": 75.60964047443682, + "volume": 144.94647495169912, + "difficulty": 3.125, + "effort": 452.9577342240597, + "time": 25.164318568003317, + "bugs": 0.048315491650566374 + }, + "xyxyxyxy_to_xyxy": { + "h1": 3, + "h2": 8, + "N1": 9, + "N2": 12, + "vocabulary": 11, + "length": 21, + "calculated_length": 28.75488750216347, + "volume": 72.64806399138325, + "difficulty": 2.25, + "effort": 163.4581439806123, + "time": 9.081007998922907, + "bugs": 0.024216021330461083 + }, + "scale_boxes": { + "h1": 4, + "h2": 12, + "N1": 8, + "N2": 16, + "vocabulary": 16, + "length": 24, + "calculated_length": 51.01955000865388, + "volume": 96.0, + "difficulty": 2.6666666666666665, + "effort": 256.0, + "time": 14.222222222222221, + "bugs": 0.032 + }, + "spread_out_boxes": { + "h1": 10, + "h2": 24, + "N1": 21, + "N2": 39, + "vocabulary": 34, + "length": 60, + "calculated_length": 143.2583809661814, + "volume": 305.2477704750204, + "difficulty": 8.125, + "effort": 2480.1381351095406, + "time": 137.78545195053005, + "bugs": 0.1017492568250068 + } + } + }, + "src\\supervision\\detection\\utils\\converters.py": { + "total": { + "h1": 17, + "h2": 116, + "N1": 77, + "N2": 148, + "vocabulary": 133, + "length": 225, + "calculated_length": 865.012663736054, + "volume": 1587.4385479877676, + "difficulty": 10.844827586206897, + "effort": 17215.49735662596, + "time": 956.4165198125534, + "bugs": 0.5291461826625892 + }, + "functions": { + "xyxy_to_polygons": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "polygon_to_mask": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "xywh_to_xyxy": { + "h1": 1, + "h2": 4, + "N1": 2, + "N2": 4, + "vocabulary": 5, + "length": 6, + "calculated_length": 8.0, + "volume": 13.931568569324174, + "difficulty": 0.5, + "effort": 6.965784284662087, + "time": 0.3869880158145604, + "bugs": 0.004643856189774725 + }, + "xyxy_to_xywh": { + "h1": 1, + "h2": 4, + "N1": 2, + "N2": 4, + "vocabulary": 5, + "length": 6, + "calculated_length": 8.0, + "volume": 13.931568569324174, + "difficulty": 0.5, + "effort": 6.965784284662087, + "time": 0.3869880158145604, + "bugs": 0.004643856189774725 + }, + "xcycwh_to_xyxy": { + "h1": 3, + "h2": 13, + "N1": 8, + "N2": 16, + "vocabulary": 16, + "length": 24, + "calculated_length": 52.860603837997665, + "volume": 96.0, + "difficulty": 1.8461538461538463, + "effort": 177.23076923076923, + "time": 9.846153846153847, + "bugs": 0.032 + }, + "xyxy_to_xcycarh": { + "h1": 5, + "h2": 11, + "N1": 8, + "N2": 16, + "vocabulary": 16, + "length": 24, + "calculated_length": 49.663388279447084, + "volume": 96.0, + "difficulty": 3.6363636363636362, + "effort": 349.09090909090907, + "time": 19.39393939393939, + "bugs": 0.032 + }, + "mask_to_xyxy": { + "h1": 4, + "h2": 10, + "N1": 8, + "N2": 13, + "vocabulary": 14, + "length": 21, + "calculated_length": 41.219280948873624, + "volume": 79.95445336320968, + "difficulty": 2.6, + "effort": 207.88157874434518, + "time": 11.548976596908066, + "bugs": 0.026651484454403226 + }, + "xyxy_to_mask": { + "h1": 4, + "h2": 9, + "N1": 7, + "N2": 14, + "vocabulary": 13, + "length": 21, + "calculated_length": 36.52932501298081, + "volume": 77.70923408096293, + "difficulty": 3.111111111111111, + "effort": 241.762061585218, + "time": 13.431225643623222, + "bugs": 0.025903078026987644 + }, + "mask_to_polygons": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "_base48_decode": { + "h1": 11, + "h2": 23, + "N1": 17, + "N2": 32, + "vocabulary": 34, + "length": 49, + "calculated_length": 142.09567279432156, + "volume": 249.28567922126666, + "difficulty": 7.6521739130434785, + "effort": 1907.5773714323016, + "time": 105.97652063512787, + "bugs": 0.08309522640708888 + }, + "_base48_encode": { + "h1": 6, + "h2": 10, + "N1": 8, + "N2": 15, + "vocabulary": 16, + "length": 23, + "calculated_length": 48.72905595320056, + "volume": 92.0, + "difficulty": 4.5, + "effort": 414.0, + "time": 23.0, + "bugs": 0.030666666666666665 + }, + "_delta_decode": { + "h1": 2, + "h2": 4, + "N1": 2, + "N2": 4, + "vocabulary": 6, + "length": 6, + "calculated_length": 10.0, + "volume": 15.509775004326936, + "difficulty": 1.0, + "effort": 15.509775004326936, + "time": 0.861654166907052, + "bugs": 0.005169925001442312 + }, + "_delta_encode": { + "h1": 1, + "h2": 4, + "N1": 2, + "N2": 4, + "vocabulary": 5, + "length": 6, + "calculated_length": 8.0, + "volume": 13.931568569324174, + "difficulty": 0.5, + "effort": 6.965784284662087, + "time": 0.3869880158145604, + "bugs": 0.004643856189774725 + }, + "is_compressed_rle": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "_mask_to_rle_counts": { + "h1": 3, + "h2": 5, + "N1": 3, + "N2": 6, + "vocabulary": 8, + "length": 9, + "calculated_length": 16.36452797660028, + "volume": 27.0, + "difficulty": 1.8, + "effort": 48.6, + "time": 2.7, + "bugs": 0.009 + }, + "_rle_counts_to_mask": { + "h1": 5, + "h2": 9, + "N1": 5, + "N2": 10, + "vocabulary": 14, + "length": 15, + "calculated_length": 40.13896548741762, + "volume": 57.110323830864054, + "difficulty": 2.7777777777777777, + "effort": 158.6397884190668, + "time": 8.813321578837044, + "bugs": 0.019036774610288017 + }, + "rle_to_mask": { + "h1": 2, + "h2": 4, + "N1": 2, + "N2": 4, + "vocabulary": 6, + "length": 6, + "calculated_length": 10.0, + "volume": 15.509775004326936, + "difficulty": 1.0, + "effort": 15.509775004326936, + "time": 0.861654166907052, + "bugs": 0.005169925001442312 + }, + "mask_to_rle": { + "h1": 2, + "h2": 4, + "N1": 2, + "N2": 4, + "vocabulary": 6, + "length": 6, + "calculated_length": 10.0, + "volume": 15.509775004326936, + "difficulty": 1.0, + "effort": 15.509775004326936, + "time": 0.861654166907052, + "bugs": 0.005169925001442312 + }, + "polygon_to_xyxy": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + } + } + }, + "src\\supervision\\detection\\utils\\internal.py": { + "total": { + "h1": 16, + "h2": 99, + "N1": 64, + "N2": 119, + "vocabulary": 115, + "length": 183, + "calculated_length": 720.3063053878814, + "volume": 1252.7246793228207, + "difficulty": 9.616161616161616, + "effort": 12046.402976922478, + "time": 669.2446098290266, + "bugs": 0.4175748931076069 + }, + "functions": { + "extract_ultralytics_masks": { + "h1": 5, + "h2": 22, + "N1": 13, + "N2": 25, + "vocabulary": 27, + "length": 38, + "calculated_length": 109.71713608445735, + "volume": 180.68572508221183, + "difficulty": 2.840909090909091, + "effort": 513.3117189835564, + "time": 28.517317721308686, + "bugs": 0.06022857502740395 + }, + "_decode_rle_mask": { + "h1": 3, + "h2": 8, + "N1": 5, + "N2": 8, + "vocabulary": 11, + "length": 13, + "calculated_length": 28.75488750216347, + "volume": 44.97261104228487, + "difficulty": 1.5, + "effort": 67.4589165634273, + "time": 3.747717586857072, + "bugs": 0.01499087034742829 + }, + "process_roboflow_result": { + "h1": 11, + "h2": 28, + "N1": 21, + "N2": 41, + "vocabulary": 39, + "length": 62, + "calculated_length": 172.65968562262316, + "volume": 327.6949375694594, + "difficulty": 8.053571428571429, + "effort": 2639.114586496896, + "time": 146.61747702760533, + "bugs": 0.10923164585648647 + }, + "is_data_equal": { + "h1": 2, + "h2": 4, + "N1": 2, + "N2": 4, + "vocabulary": 6, + "length": 6, + "calculated_length": 10.0, + "volume": 15.509775004326936, + "difficulty": 1.0, + "effort": 15.509775004326936, + "time": 0.861654166907052, + "bugs": 0.005169925001442312 + }, + "is_metadata_equal": { + "h1": 2, + "h2": 8, + "N1": 4, + "N2": 8, + "vocabulary": 10, + "length": 12, + "calculated_length": 26.0, + "volume": 39.863137138648355, + "difficulty": 1.0, + "effort": 39.863137138648355, + "time": 2.2146187299249087, + "bugs": 0.013287712379549451 + }, + "_validate_data_list_keys": { + "h1": 2, + "h2": 3, + "N1": 2, + "N2": 3, + "vocabulary": 5, + "length": 5, + "calculated_length": 6.754887502163469, + "volume": 11.60964047443681, + "difficulty": 1.0, + "effort": 11.60964047443681, + "time": 0.6449800263576005, + "bugs": 0.0038698801581456034 + }, + "_validate_data_value_lengths": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "_merge_data_values": { + "h1": 2, + "h2": 2, + "N1": 2, + "N2": 4, + "vocabulary": 4, + "length": 6, + "calculated_length": 4.0, + "volume": 12.0, + "difficulty": 2.0, + "effort": 24.0, + "time": 1.3333333333333333, + "bugs": 0.004 + }, + "merge_data": { + "h1": 1, + "h2": 1, + "N1": 1, + "N2": 1, + "vocabulary": 2, + "length": 2, + "calculated_length": 0.0, + "volume": 2.0, + "difficulty": 0.5, + "effort": 1.0, + "time": 0.05555555555555555, + "bugs": 0.0006666666666666666 + }, + "merge_metadata": { + "h1": 6, + "h2": 13, + "N1": 8, + "N2": 13, + "vocabulary": 19, + "length": 21, + "calculated_length": 63.61549134016113, + "volume": 89.20647778231529, + "difficulty": 3.0, + "effort": 267.61943334694587, + "time": 14.867746297052548, + "bugs": 0.029735492594105097 + }, + "get_data_item": { + "h1": 2, + "h2": 4, + "N1": 2, + "N2": 4, + "vocabulary": 6, + "length": 6, + "calculated_length": 10.0, + "volume": 15.509775004326936, + "difficulty": 1.0, + "effort": 15.509775004326936, + "time": 0.861654166907052, + "bugs": 0.005169925001442312 + }, + "cross_product": { + "h1": 1, + "h2": 4, + "N1": 3, + "N2": 6, + "vocabulary": 5, + "length": 9, + "calculated_length": 8.0, + "volume": 20.89735285398626, + "difficulty": 0.75, + "effort": 15.673014640489694, + "time": 0.8707230355827608, + "bugs": 0.0069657842846620865 + } + } + }, + "src\\supervision\\detection\\utils\\iou_and_nms.py": { + "total": { + "h1": 20, + "h2": 337, + "N1": 218, + "N2": 417, + "vocabulary": 357, + "length": 635, + "calculated_length": 2916.0943731560337, + "volume": 5384.6604676584775, + "difficulty": 12.373887240356083, + "effort": 66629.18145440906, + "time": 3701.6211919116145, + "bugs": 1.7948868225528258 + }, + "functions": { + "list": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "from_value": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "box_iou": { + "h1": 6, + "h2": 27, + "N1": 15, + "N2": 30, + "vocabulary": 33, + "length": 45, + "calculated_length": 143.89173756274062, + "volume": 226.9977353711304, + "difficulty": 3.3333333333333335, + "effort": 756.659117903768, + "time": 42.03661766132044, + "bugs": 0.07566591179037681 + }, + "box_iou_batch": { + "h1": 6, + "h2": 27, + "N1": 15, + "N2": 30, + "vocabulary": 33, + "length": 45, + "calculated_length": 143.89173756274062, + "volume": 226.9977353711304, + "difficulty": 3.3333333333333335, + "effort": 756.659117903768, + "time": 42.03661766132044, + "bugs": 0.07566591179037681 + }, + "_jaccard": { + "h1": 4, + "h2": 34, + "N1": 19, + "N2": 38, + "vocabulary": 38, + "length": 57, + "calculated_length": 180.97373660251156, + "volume": 299.13186826628436, + "difficulty": 2.235294117647059, + "effort": 668.6477055364004, + "time": 37.14709475202224, + "bugs": 0.09971062275542812 + }, + "box_iou_batch_with_jaccard": { + "h1": 2, + "h2": 7, + "N1": 4, + "N2": 8, + "vocabulary": 9, + "length": 12, + "calculated_length": 21.651484454403228, + "volume": 38.03910001730775, + "difficulty": 1.1428571428571428, + "effort": 43.47325716263743, + "time": 2.415180953479857, + "bugs": 0.012679700005769252 + }, + "_polygon_areas": { + "h1": 3, + "h2": 9, + "N1": 6, + "N2": 10, + "vocabulary": 12, + "length": 16, + "calculated_length": 33.28421251514428, + "volume": 57.359400011538504, + "difficulty": 1.6666666666666667, + "effort": 95.59900001923084, + "time": 5.311055556623936, + "bugs": 0.01911980000384617 + }, + "_aabb_envelopes": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "_overlapping_envelope_pairs": { + "h1": 2, + "h2": 6, + "N1": 3, + "N2": 6, + "vocabulary": 8, + "length": 9, + "calculated_length": 17.509775004326936, + "volume": 27.0, + "difficulty": 1.0, + "effort": 27.0, + "time": 1.5, + "bugs": 0.009 + }, + "_validate_oriented_box_batch": { + "h1": 4, + "h2": 12, + "N1": 7, + "N2": 14, + "vocabulary": 16, + "length": 21, + "calculated_length": 51.01955000865388, + "volume": 84.0, + "difficulty": 2.3333333333333335, + "effort": 196.0, + "time": 10.88888888888889, + "bugs": 0.028 + }, + "_normalize_oriented_overlap_metric": { + "h1": 1, + "h2": 3, + "N1": 2, + "N2": 4, + "vocabulary": 4, + "length": 6, + "calculated_length": 4.754887502163469, + "volume": 12.0, + "difficulty": 0.6666666666666666, + "effort": 8.0, + "time": 0.4444444444444444, + "bugs": 0.004 + }, + "oriented_box_iou_batch": { + "h1": 9, + "h2": 15, + "N1": 12, + "N2": 22, + "vocabulary": 24, + "length": 34, + "calculated_length": 87.1326839471086, + "volume": 155.88872502451935, + "difficulty": 6.6, + "effort": 1028.8655851618275, + "time": 57.159199175657086, + "bugs": 0.05196290834150645 + }, + "compact_mask_iou_batch": { + "h1": 9, + "h2": 37, + "N1": 28, + "N2": 56, + "vocabulary": 46, + "length": 84, + "calculated_length": 221.27909954125198, + "volume": 463.9792043087891, + "difficulty": 6.8108108108108105, + "effort": 3160.074580697699, + "time": 175.55969892764995, + "bugs": 0.15465973476959638 + }, + "_mask_iou_batch_split": { + "h1": 7, + "h2": 16, + "N1": 9, + "N2": 18, + "vocabulary": 23, + "length": 27, + "calculated_length": 83.65148445440323, + "volume": 122.13617281353935, + "difficulty": 3.9375, + "effort": 480.9111804533112, + "time": 26.717287802961735, + "bugs": 0.040712057604513116 + }, + "mask_iou_batch": { + "h1": 11, + "h2": 40, + "N1": 29, + "N2": 57, + "vocabulary": 51, + "length": 86, + "calculated_length": 250.93087160050476, + "volume": 487.82857940954864, + "difficulty": 7.8375, + "effort": 3823.3564911223375, + "time": 212.40869395124096, + "bugs": 0.16260952646984955 + }, + "mask_non_max_suppression": { + "h1": 6, + "h2": 11, + "N1": 10, + "N2": 18, + "vocabulary": 17, + "length": 28, + "calculated_length": 53.563522809337215, + "volume": 114.44895955500952, + "difficulty": 4.909090909090909, + "effort": 561.8403469064104, + "time": 31.21335260591169, + "bugs": 0.03814965318500317 + }, + "_prepare_predictions_for_nms": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "_nms_loop_from_iou_matrix": { + "h1": 6, + "h2": 12, + "N1": 7, + "N2": 12, + "vocabulary": 18, + "length": 19, + "calculated_length": 58.52932501298082, + "volume": 79.22857502740393, + "difficulty": 3.0, + "effort": 237.6857250822118, + "time": 13.204762504567322, + "bugs": 0.026409525009134644 + }, + "box_non_max_suppression": { + "h1": 1, + "h2": 3, + "N1": 2, + "N2": 3, + "vocabulary": 4, + "length": 5, + "calculated_length": 4.754887502163469, + "volume": 10.0, + "difficulty": 0.5, + "effort": 5.0, + "time": 0.2777777777777778, + "bugs": 0.0033333333333333335 + }, + "_group_overlapping_masks": { + "h1": 6, + "h2": 9, + "N1": 8, + "N2": 12, + "vocabulary": 15, + "length": 20, + "calculated_length": 44.039100017307746, + "volume": 78.13781191217038, + "difficulty": 4.0, + "effort": 312.5512476486815, + "time": 17.363958202704527, + "bugs": 0.026045937304056792 + }, + "mask_non_max_merge": { + "h1": 1, + "h2": 6, + "N1": 3, + "N2": 6, + "vocabulary": 7, + "length": 9, + "calculated_length": 15.509775004326936, + "volume": 25.26619429851844, + "difficulty": 0.5, + "effort": 12.63309714925922, + "time": 0.701838730514401, + "bugs": 0.008422064766172813 + }, + "_greedy_nmm_via_iou_callback": { + "h1": 5, + "h2": 7, + "N1": 6, + "N2": 9, + "vocabulary": 12, + "length": 15, + "calculated_length": 31.26112492884004, + "volume": 53.77443751081735, + "difficulty": 3.2142857142857144, + "effort": 172.84640628477007, + "time": 9.60257812693167, + "bugs": 0.017924812503605784 + }, + "_non_max_merge_per_category": { + "h1": 1, + "h2": 6, + "N1": 3, + "N2": 6, + "vocabulary": 7, + "length": 9, + "calculated_length": 15.509775004326936, + "volume": 25.26619429851844, + "difficulty": 0.5, + "effort": 12.63309714925922, + "time": 0.701838730514401, + "bugs": 0.008422064766172813 + }, + "_group_overlapping_boxes": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "box_non_max_merge": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "oriented_box_non_max_suppression": { + "h1": 6, + "h2": 23, + "N1": 14, + "N2": 27, + "vocabulary": 29, + "length": 41, + "calculated_length": 119.55169999363824, + "volume": 199.1772208002305, + "difficulty": 3.5217391304347827, + "effort": 701.4502123834204, + "time": 38.969456243523354, + "bugs": 0.06639240693341016 + }, + "_group_overlapping_oriented_boxes": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "oriented_box_non_max_merge": { + "h1": 6, + "h2": 23, + "N1": 14, + "N2": 27, + "vocabulary": 29, + "length": 41, + "calculated_length": 119.55169999363824, + "volume": 199.1772208002305, + "difficulty": 3.5217391304347827, + "effort": 701.4502123834204, + "time": 38.969456243523354, + "bugs": 0.06639240693341016 + } + } + }, + "src\\supervision\\detection\\utils\\masks.py": { + "total": { + "h1": 14, + "h2": 90, + "N1": 61, + "N2": 117, + "vocabulary": 104, + "length": 178, + "calculated_length": 637.5697475784772, + "volume": 1192.6782698291142, + "difficulty": 9.1, + "effort": 10853.37225544494, + "time": 602.9651253024966, + "bugs": 0.3975594232763714 + }, + "functions": { + "move_masks": { + "h1": 6, + "h2": 27, + "N1": 17, + "N2": 32, + "vocabulary": 33, + "length": 49, + "calculated_length": 143.89173756274062, + "volume": 247.1753118485642, + "difficulty": 3.5555555555555554, + "effort": 878.8455532393393, + "time": 48.824752957741076, + "bugs": 0.08239177061618806 + }, + "calculate_masks_centroids": { + "h1": 3, + "h2": 16, + "N1": 12, + "N2": 24, + "vocabulary": 19, + "length": 36, + "calculated_length": 68.75488750216347, + "volume": 152.92539048396907, + "difficulty": 2.25, + "effort": 344.0821285889304, + "time": 19.115673810496133, + "bugs": 0.050975130161323025 + }, + "contains_holes": { + "h1": 3, + "h2": 5, + "N1": 3, + "N2": 5, + "vocabulary": 8, + "length": 8, + "calculated_length": 16.36452797660028, + "volume": 24.0, + "difficulty": 1.5, + "effort": 36.0, + "time": 2.0, + "bugs": 0.008 + }, + "contains_multiple_segments": { + "h1": 3, + "h2": 7, + "N1": 4, + "N2": 8, + "vocabulary": 10, + "length": 12, + "calculated_length": 24.406371956566698, + "volume": 39.863137138648355, + "difficulty": 1.7142857142857142, + "effort": 68.33680652339717, + "time": 3.796489251299843, + "bugs": 0.013287712379549451 + }, + "resize_masks": { + "h1": 3, + "h2": 5, + "N1": 6, + "N2": 12, + "vocabulary": 8, + "length": 18, + "calculated_length": 16.36452797660028, + "volume": 54.0, + "difficulty": 3.6, + "effort": 194.4, + "time": 10.8, + "bugs": 0.018 + }, + "_resolve_distance_threshold": { + "h1": 2, + "h2": 5, + "N1": 3, + "N2": 6, + "vocabulary": 7, + "length": 9, + "calculated_length": 13.60964047443681, + "volume": 25.26619429851844, + "difficulty": 1.2, + "effort": 30.319433158222125, + "time": 1.6844129532345624, + "bugs": 0.008422064766172813 + }, + "_filter_labels_by_centroid_distance": { + "h1": 4, + "h2": 8, + "N1": 4, + "N2": 8, + "vocabulary": 12, + "length": 12, + "calculated_length": 32.0, + "volume": 43.01955000865388, + "difficulty": 2.0, + "effort": 86.03910001730776, + "time": 4.779950000961542, + "bugs": 0.014339850002884626 + }, + "_filter_labels_by_edge_distance": { + "h1": 4, + "h2": 8, + "N1": 6, + "N2": 11, + "vocabulary": 12, + "length": 17, + "calculated_length": 32.0, + "volume": 60.94436251225966, + "difficulty": 2.75, + "effort": 167.59699690871406, + "time": 9.310944272706337, + "bugs": 0.020314787504086555 + }, + "filter_segments_by_distance": { + "h1": 5, + "h2": 9, + "N1": 6, + "N2": 11, + "vocabulary": 14, + "length": 17, + "calculated_length": 40.13896548741762, + "volume": 64.72503367497926, + "difficulty": 3.0555555555555554, + "effort": 197.77093622910328, + "time": 10.987274234950183, + "bugs": 0.021575011224993085 + } + } + }, + "src\\supervision\\detection\\utils\\polygons.py": { + "total": { + "h1": 10, + "h2": 26, + "N1": 20, + "N2": 40, + "vocabulary": 36, + "length": 60, + "calculated_length": 155.43071362054204, + "volume": 310.19550008653874, + "difficulty": 7.6923076923076925, + "effort": 2386.1192314349137, + "time": 132.56217952416188, + "bugs": 0.10339850002884625 + }, + "functions": { + "filter_polygons_by_area": { + "h1": 5, + "h2": 12, + "N1": 10, + "N2": 20, + "vocabulary": 17, + "length": 30, + "calculated_length": 54.62919048309069, + "volume": 122.6238852375102, + "difficulty": 4.166666666666667, + "effort": 510.93285515629253, + "time": 28.38515861979403, + "bugs": 0.040874628412503396 + }, + "approximate_polygon": { + "h1": 8, + "h2": 14, + "N1": 10, + "N2": 20, + "vocabulary": 22, + "length": 30, + "calculated_length": 77.30296890880645, + "volume": 133.78294855911892, + "difficulty": 5.714285714285714, + "effort": 764.4739917663939, + "time": 42.47077732035521, + "bugs": 0.044594316186372975 + } + } + }, + "src\\supervision\\detection\\utils\\vlms.py": { + "total": { + "h1": 7, + "h2": 20, + "N1": 16, + "N2": 31, + "vocabulary": 27, + "length": 47, + "calculated_length": 106.09004635215048, + "volume": 223.47971260168305, + "difficulty": 5.425, + "effort": 1212.3774408641304, + "time": 67.35430227022947, + "bugs": 0.07449323753389435 + }, + "functions": { + "edit_distance": { + "h1": 6, + "h2": 18, + "N1": 15, + "N2": 29, + "vocabulary": 24, + "length": 44, + "calculated_length": 90.56842503028855, + "volume": 201.7383500317309, + "difficulty": 4.833333333333333, + "effort": 975.0686918200327, + "time": 54.1704828788907, + "bugs": 0.06724611667724363 + }, + "fuzzy_match_index": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + } + } + }, + "src\\supervision\\detection\\utils\\__init__.py": { + "total": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "functions": {} + }, + "src\\supervision\\draw\\base.py": { + "total": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "functions": {} + }, + "src\\supervision\\draw\\color.py": { + "total": { + "h1": 13, + "h2": 78, + "N1": 60, + "N2": 110, + "vocabulary": 91, + "length": 170, + "calculated_length": 538.3670894070896, + "volume": 1106.3250888337784, + "difficulty": 9.166666666666666, + "effort": 10141.313314309635, + "time": 563.4062952394241, + "bugs": 0.36877502961125946 + }, + "functions": { + "_validate_color_hex": { + "h1": 3, + "h2": 5, + "N1": 3, + "N2": 5, + "vocabulary": 8, + "length": 8, + "calculated_length": 16.36452797660028, + "volume": 24.0, + "difficulty": 1.5, + "effort": 36.0, + "time": 2.0, + "bugs": 0.008 + }, + "from_hex": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "from_rgb_tuple": { + "h1": 3, + "h2": 9, + "N1": 8, + "N2": 13, + "vocabulary": 12, + "length": 21, + "calculated_length": 33.28421251514428, + "volume": 75.28421251514429, + "difficulty": 2.1666666666666665, + "effort": 163.11579378281263, + "time": 9.06198854348959, + "bugs": 0.025094737505048096 + }, + "from_bgr_tuple": { + "h1": 3, + "h2": 9, + "N1": 8, + "N2": 13, + "vocabulary": 12, + "length": 21, + "calculated_length": 33.28421251514428, + "volume": 75.28421251514429, + "difficulty": 2.1666666666666665, + "effort": 163.11579378281263, + "time": 9.06198854348959, + "bugs": 0.025094737505048096 + }, + "from_rgba_tuple": { + "h1": 3, + "h2": 11, + "N1": 10, + "N2": 17, + "vocabulary": 14, + "length": 27, + "calculated_length": 42.808635307173745, + "volume": 102.7985828955553, + "difficulty": 2.3181818181818183, + "effort": 238.30580580333276, + "time": 13.239211433518486, + "bugs": 0.03426619429851843 + }, + "from_bgra_tuple": { + "h1": 3, + "h2": 11, + "N1": 10, + "N2": 17, + "vocabulary": 14, + "length": 27, + "calculated_length": 42.808635307173745, + "volume": 102.7985828955553, + "difficulty": 2.3181818181818183, + "effort": 238.30580580333276, + "time": 13.239211433518486, + "bugs": 0.03426619429851843 + }, + "as_hex": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "as_rgb": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "as_bgr": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "as_rgba": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "as_bgra": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "WHITE": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "BLACK": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "GREY": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "RED": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "GREEN": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "BLUE": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "YELLOW": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "ROBOFLOW": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "__hash__": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "__repr__": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "__eq__": { + "h1": 2, + "h2": 9, + "N1": 5, + "N2": 13, + "vocabulary": 11, + "length": 18, + "calculated_length": 30.529325012980813, + "volume": 62.26976913547136, + "difficulty": 1.4444444444444444, + "effort": 89.94522208456974, + "time": 4.996956782476096, + "bugs": 0.020756589711823786 + }, + "DEFAULT": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "LEGACY": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "from_matplotlib": { + "h1": 3, + "h2": 8, + "N1": 5, + "N2": 10, + "vocabulary": 11, + "length": 15, + "calculated_length": 28.75488750216347, + "volume": 51.89147427955947, + "difficulty": 1.875, + "effort": 97.296514274174, + "time": 5.405361904120777, + "bugs": 0.01729715809318649 + }, + "by_idx": { + "h1": 2, + "h2": 3, + "N1": 2, + "N2": 4, + "vocabulary": 5, + "length": 6, + "calculated_length": 6.754887502163469, + "volume": 13.931568569324174, + "difficulty": 1.3333333333333333, + "effort": 18.575424759098897, + "time": 1.0319680421721609, + "bugs": 0.004643856189774725 + }, + "__len__": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "unify_to_bgr": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + } + } + }, + "src\\supervision\\draw\\utils.py": { + "total": { + "h1": 13, + "h2": 57, + "N1": 57, + "N2": 109, + "vocabulary": 70, + "length": 166, + "calculated_length": 380.5804471432245, + "volume": 1017.4609808128646, + "difficulty": 12.429824561403509, + "effort": 12646.861489577448, + "time": 702.603416087636, + "bugs": 0.33915366027095484 + }, + "functions": { + "draw_line": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "draw_rectangle": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "draw_filled_rectangle": { + "h1": 3, + "h2": 2, + "N1": 4, + "N2": 6, + "vocabulary": 5, + "length": 10, + "calculated_length": 6.754887502163469, + "volume": 23.21928094887362, + "difficulty": 4.5, + "effort": 104.4867642699313, + "time": 5.804820237218405, + "bugs": 0.007739760316291207 + }, + "draw_rounded_rectangle": { + "h1": 4, + "h2": 8, + "N1": 17, + "N2": 32, + "vocabulary": 12, + "length": 49, + "calculated_length": 32.0, + "volume": 175.66316253533668, + "difficulty": 8.0, + "effort": 1405.3053002826935, + "time": 78.07251668237186, + "bugs": 0.058554387511778896 + }, + "draw_polygon": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "draw_filled_polygon": { + "h1": 2, + "h2": 2, + "N1": 2, + "N2": 4, + "vocabulary": 4, + "length": 6, + "calculated_length": 4.0, + "volume": 12.0, + "difficulty": 2.0, + "effort": 24.0, + "time": 1.3333333333333333, + "bugs": 0.004 + }, + "draw_text": { + "h1": 4, + "h2": 11, + "N1": 9, + "N2": 18, + "vocabulary": 15, + "length": 27, + "calculated_length": 46.053747805010275, + "volume": 105.48604608143, + "difficulty": 3.272727272727273, + "effort": 345.22705990286187, + "time": 19.179281105714548, + "bugs": 0.03516201536047667 + }, + "draw_image": { + "h1": 10, + "h2": 30, + "N1": 23, + "N2": 45, + "vocabulary": 40, + "length": 68, + "calculated_length": 180.4259988171292, + "volume": 361.8911104523407, + "difficulty": 7.5, + "effort": 2714.1833283925553, + "time": 150.7879626884753, + "bugs": 0.12063037015078022 + }, + "calculate_optimal_text_scale": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "calculate_optimal_line_thickness": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + } + } + }, + "src\\supervision\\draw\\__init__.py": { + "total": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "functions": {} + }, + "src\\supervision\\geometry\\core.py": { + "total": { + "h1": 5, + "h2": 40, + "N1": 28, + "N2": 56, + "vocabulary": 45, + "length": 84, + "calculated_length": 224.4867642699313, + "volume": 461.3156600916927, + "difficulty": 3.5, + "effort": 1614.6048103209243, + "time": 89.70026724005135, + "bugs": 0.15377188669723088 + }, + "functions": { + "list": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "as_xy_int_tuple": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "as_xy_float_tuple": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "magnitude": { + "h1": 3, + "h2": 7, + "N1": 5, + "N2": 10, + "vocabulary": 10, + "length": 15, + "calculated_length": 24.406371956566698, + "volume": 49.82892142331044, + "difficulty": 2.142857142857143, + "effort": 106.77626019280808, + "time": 5.932014455156004, + "bugs": 0.016609640474436815 + }, + "center": { + "h1": 2, + "h2": 5, + "N1": 4, + "N2": 8, + "vocabulary": 7, + "length": 12, + "calculated_length": 13.60964047443681, + "volume": 33.68825906469125, + "difficulty": 1.6, + "effort": 53.901214503506004, + "time": 2.9945119168614447, + "bugs": 0.011229419688230418 + }, + "cross_product": { + "h1": 2, + "h2": 8, + "N1": 7, + "N2": 14, + "vocabulary": 10, + "length": 21, + "calculated_length": 26.0, + "volume": 69.76048999263462, + "difficulty": 1.75, + "effort": 122.08085748711058, + "time": 6.782269860395032, + "bugs": 0.02325349666421154 + }, + "from_xyxy": { + "h1": 1, + "h2": 4, + "N1": 2, + "N2": 4, + "vocabulary": 5, + "length": 6, + "calculated_length": 8.0, + "volume": 13.931568569324174, + "difficulty": 0.5, + "effort": 6.965784284662087, + "time": 0.3869880158145604, + "bugs": 0.004643856189774725 + }, + "top_left": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "bottom_right": { + "h1": 1, + "h2": 4, + "N1": 2, + "N2": 4, + "vocabulary": 5, + "length": 6, + "calculated_length": 8.0, + "volume": 13.931568569324174, + "difficulty": 0.5, + "effort": 6.965784284662087, + "time": 0.3869880158145604, + "bugs": 0.004643856189774725 + }, + "pad": { + "h1": 3, + "h2": 8, + "N1": 6, + "N2": 12, + "vocabulary": 11, + "length": 18, + "calculated_length": 28.75488750216347, + "volume": 62.26976913547136, + "difficulty": 2.25, + "effort": 140.10698055481055, + "time": 7.78372114193392, + "bugs": 0.020756589711823786 + }, + "as_xyxy_int_tuple": { + "h1": 1, + "h2": 4, + "N1": 2, + "N2": 4, + "vocabulary": 5, + "length": 6, + "calculated_length": 8.0, + "volume": 13.931568569324174, + "difficulty": 0.5, + "effort": 6.965784284662087, + "time": 0.3869880158145604, + "bugs": 0.004643856189774725 + } + } + }, + "src\\supervision\\geometry\\utils.py": { + "total": { + "h1": 4, + "h2": 10, + "N1": 6, + "N2": 11, + "vocabulary": 14, + "length": 17, + "calculated_length": 41.219280948873624, + "volume": 64.72503367497926, + "difficulty": 2.2, + "effort": 142.3950740849544, + "time": 7.9108374491641325, + "bugs": 0.021575011224993085 + }, + "functions": { + "get_polygon_center": { + "h1": 4, + "h2": 10, + "N1": 6, + "N2": 11, + "vocabulary": 14, + "length": 17, + "calculated_length": 41.219280948873624, + "volume": 64.72503367497926, + "difficulty": 2.2, + "effort": 142.3950740849544, + "time": 7.9108374491641325, + "bugs": 0.021575011224993085 + } + } + }, + "src\\supervision\\geometry\\__init__.py": { + "total": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "functions": {} + }, + "src\\supervision\\keypoint\\annotators.py": { + "total": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "functions": {} + }, + "src\\supervision\\keypoint\\core.py": { + "total": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "functions": {} + }, + "src\\supervision\\keypoint\\__init__.py": { + "total": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "functions": {} + }, + "src\\supervision\\key_points\\annotators.py": { + "total": { + "h1": 18, + "h2": 121, + "N1": 97, + "N2": 180, + "vocabulary": 139, + "length": 277, + "calculated_length": 912.2411017361876, + "volume": 1971.9466771444115, + "difficulty": 13.388429752066116, + "effort": 26401.269561768157, + "time": 1466.7371978760086, + "bugs": 0.6573155590481372 + }, + "functions": { + "annotate": { + "h1": 4, + "h2": 8, + "N1": 6, + "N2": 9, + "vocabulary": 12, + "length": 15, + "calculated_length": 32.0, + "volume": 53.77443751081735, + "difficulty": 2.25, + "effort": 120.99248439933903, + "time": 6.721804688852169, + "bugs": 0.017924812503605784 + }, + "__init__": { + "h1": 1, + "h2": 3, + "N1": 2, + "N2": 4, + "vocabulary": 4, + "length": 6, + "calculated_length": 4.754887502163469, + "volume": 12.0, + "difficulty": 0.6666666666666666, + "effort": 8.0, + "time": 0.4444444444444444, + "bugs": 0.004 + }, + "_get_covariances": { + "h1": 2, + "h2": 4, + "N1": 2, + "N2": 4, + "vocabulary": 6, + "length": 6, + "calculated_length": 10.0, + "volume": 15.509775004326936, + "difficulty": 1.0, + "effort": 15.509775004326936, + "time": 0.861654166907052, + "bugs": 0.005169925001442312 + }, + "_decompose_covariance": { + "h1": 4, + "h2": 7, + "N1": 5, + "N2": 7, + "vocabulary": 11, + "length": 12, + "calculated_length": 27.651484454403228, + "volume": 41.51317942364757, + "difficulty": 2.0, + "effort": 83.02635884729514, + "time": 4.612575491516397, + "bugs": 0.01383772647454919 + }, + "_iter_ellipse_params": { + "h1": 5, + "h2": 9, + "N1": 6, + "N2": 11, + "vocabulary": 14, + "length": 17, + "calculated_length": 40.13896548741762, + "volume": 64.72503367497926, + "difficulty": 3.0555555555555554, + "effort": 197.77093622910328, + "time": 10.987274234950183, + "bugs": 0.021575011224993085 + }, + "get_text_bounding_box": { + "h1": 3, + "h2": 9, + "N1": 8, + "N2": 16, + "vocabulary": 12, + "length": 24, + "calculated_length": 33.28421251514428, + "volume": 86.03910001730776, + "difficulty": 2.6666666666666665, + "effort": 229.43760004615402, + "time": 12.746533335897446, + "bugs": 0.028679700005769252 + }, + "_resolve_labels": { + "h1": 3, + "h2": 5, + "N1": 4, + "N2": 8, + "vocabulary": 8, + "length": 12, + "calculated_length": 16.36452797660028, + "volume": 36.0, + "difficulty": 2.4, + "effort": 86.39999999999999, + "time": 4.8, + "bugs": 0.012 + }, + "_resolve_color_list": { + "h1": 2, + "h2": 3, + "N1": 2, + "N2": 4, + "vocabulary": 5, + "length": 6, + "calculated_length": 6.754887502163469, + "volume": 13.931568569324174, + "difficulty": 1.3333333333333333, + "effort": 18.575424759098897, + "time": 1.0319680421721609, + "bugs": 0.004643856189774725 + } + } + }, + "src\\supervision\\key_points\\core.py": { + "total": { + "h1": 14, + "h2": 158, + "N1": 115, + "N2": 214, + "vocabulary": 172, + "length": 329, + "calculated_length": 1207.3003271207888, + "volume": 2443.24110429699, + "difficulty": 9.481012658227849, + "effort": 23164.399836942353, + "time": 1286.911102052353, + "bugs": 0.81441370143233 + }, + "functions": { + "_optional_array_equal": { + "h1": 3, + "h2": 7, + "N1": 6, + "N2": 12, + "vocabulary": 10, + "length": 18, + "calculated_length": 24.406371956566698, + "volume": 59.794705707972525, + "difficulty": 2.5714285714285716, + "effort": 153.75781467764364, + "time": 8.542100815424646, + "bugs": 0.019931568569324175 + }, + "_normalize_row_index": { + "h1": 2, + "h2": 11, + "N1": 5, + "N2": 11, + "vocabulary": 13, + "length": 16, + "calculated_length": 40.053747805010275, + "volume": 59.207035490257475, + "difficulty": 1.0, + "effort": 59.207035490257475, + "time": 3.2892797494587485, + "bugs": 0.019735678496752493 + }, + "__init__": { + "h1": 1, + "h2": 4, + "N1": 3, + "N2": 6, + "vocabulary": 5, + "length": 9, + "calculated_length": 8.0, + "volume": 20.89735285398626, + "difficulty": 0.75, + "effort": 15.673014640489694, + "time": 0.8707230355827608, + "bugs": 0.0069657842846620865 + }, + "__post_init__": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "confidence": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "__len__": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "__iter__": { + "h1": 1, + "h2": 3, + "N1": 2, + "N2": 4, + "vocabulary": 4, + "length": 6, + "calculated_length": 4.754887502163469, + "volume": 12.0, + "difficulty": 0.6666666666666666, + "effort": 8.0, + "time": 0.4444444444444444, + "bugs": 0.004 + }, + "__eq__": { + "h1": 1, + "h2": 1, + "N1": 1, + "N2": 1, + "vocabulary": 2, + "length": 2, + "calculated_length": 0.0, + "volume": 2.0, + "difficulty": 0.5, + "effort": 1.0, + "time": 0.05555555555555555, + "bugs": 0.0006666666666666666 + }, + "from_inference": { + "h1": 2, + "h2": 3, + "N1": 2, + "N2": 3, + "vocabulary": 5, + "length": 5, + "calculated_length": 6.754887502163469, + "volume": 11.60964047443681, + "difficulty": 1.0, + "effort": 11.60964047443681, + "time": 0.6449800263576005, + "bugs": 0.0038698801581456034 + }, + "from_mediapipe": { + "h1": 4, + "h2": 10, + "N1": 6, + "N2": 11, + "vocabulary": 14, + "length": 17, + "calculated_length": 41.219280948873624, + "volume": 64.72503367497926, + "difficulty": 2.2, + "effort": 142.3950740849544, + "time": 7.9108374491641325, + "bugs": 0.021575011224993085 + }, + "from_ultralytics": { + "h1": 2, + "h2": 4, + "N1": 2, + "N2": 4, + "vocabulary": 6, + "length": 6, + "calculated_length": 10.0, + "volume": 15.509775004326936, + "difficulty": 1.0, + "effort": 15.509775004326936, + "time": 0.861654166907052, + "bugs": 0.005169925001442312 + }, + "from_yolo_nas": { + "h1": 4, + "h2": 9, + "N1": 5, + "N2": 10, + "vocabulary": 13, + "length": 15, + "calculated_length": 36.52932501298081, + "volume": 55.506595772116384, + "difficulty": 2.2222222222222223, + "effort": 123.34799060470309, + "time": 6.852666144705727, + "bugs": 0.01850219859070546 + }, + "from_detectron2": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "from_transformers": { + "h1": 2, + "h2": 4, + "N1": 2, + "N2": 4, + "vocabulary": 6, + "length": 6, + "calculated_length": 10.0, + "volume": 15.509775004326936, + "difficulty": 1.0, + "effort": 15.509775004326936, + "time": 0.861654166907052, + "bugs": 0.005169925001442312 + }, + "_get_by_2d_bool_mask": { + "h1": 7, + "h2": 23, + "N1": 19, + "N2": 37, + "vocabulary": 30, + "length": 56, + "calculated_length": 123.69340944371453, + "volume": 274.78587335407707, + "difficulty": 5.630434782608695, + "effort": 1547.1639391023034, + "time": 85.95355217235019, + "bugs": 0.0915952911180257 + }, + "_normalize_getitem_index": { + "h1": 3, + "h2": 17, + "N1": 10, + "N2": 19, + "vocabulary": 20, + "length": 29, + "calculated_length": 74.24175580341925, + "volume": 125.33591475173351, + "difficulty": 1.6764705882352942, + "effort": 210.12197473084737, + "time": 11.673443040602631, + "bugs": 0.041778638250577836 + }, + "_select_fields": { + "h1": 1, + "h2": 5, + "N1": 4, + "N2": 8, + "vocabulary": 6, + "length": 12, + "calculated_length": 11.60964047443681, + "volume": 31.019550008653873, + "difficulty": 0.8, + "effort": 24.8156400069231, + "time": 1.3786466670512834, + "bugs": 0.010339850002884624 + }, + "_reshape_selected": { + "h1": 4, + "h2": 15, + "N1": 14, + "N2": 28, + "vocabulary": 19, + "length": 42, + "calculated_length": 66.60335893412778, + "volume": 178.41295556463058, + "difficulty": 3.7333333333333334, + "effort": 666.0750341079541, + "time": 37.00416856155301, + "bugs": 0.059470985188210194 + }, + "_getitem_by_normalized_index": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "__getitem__": { + "h1": 2, + "h2": 7, + "N1": 3, + "N2": 7, + "vocabulary": 9, + "length": 10, + "calculated_length": 21.651484454403228, + "volume": 31.699250014423125, + "difficulty": 1.0, + "effort": 31.699250014423125, + "time": 1.7610694452457292, + "bugs": 0.010566416671474375 + }, + "__setitem__": { + "h1": 1, + "h2": 1, + "N1": 1, + "N2": 1, + "vocabulary": 2, + "length": 2, + "calculated_length": 0.0, + "volume": 2.0, + "difficulty": 0.5, + "effort": 1.0, + "time": 0.05555555555555555, + "bugs": 0.0006666666666666666 + }, + "empty": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "is_empty": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "with_nms": { + "h1": 8, + "h2": 14, + "N1": 15, + "N2": 22, + "vocabulary": 22, + "length": 37, + "calculated_length": 77.30296890880645, + "volume": 164.99896988958, + "difficulty": 6.285714285714286, + "effort": 1037.1363821630741, + "time": 57.61868789794856, + "bugs": 0.05499965662986 + }, + "as_detections": { + "h1": 5, + "h2": 9, + "N1": 8, + "N2": 12, + "vocabulary": 14, + "length": 20, + "calculated_length": 40.13896548741762, + "volume": 76.14709844115208, + "difficulty": 3.3333333333333335, + "effort": 253.82366147050695, + "time": 14.101314526139275, + "bugs": 0.025382366147050694 + } + } + }, + "src\\supervision\\key_points\\skeletons.py": { + "total": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "functions": {} + }, + "src\\supervision\\key_points\\__init__.py": { + "total": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "functions": {} + }, + "src\\supervision\\metrics\\core.py": { + "total": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "functions": { + "update": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "reset": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "compute": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + } + } + }, + "src\\supervision\\metrics\\detection.py": { + "total": { + "h1": 18, + "h2": 147, + "N1": 97, + "N2": 182, + "vocabulary": 165, + "length": 279, + "calculated_length": 1133.4104847169074, + "volume": 2055.2038977745824, + "difficulty": 11.142857142857142, + "effort": 22900.843432345344, + "time": 1272.2690795747412, + "bugs": 0.6850679659248609 + }, + "functions": { + "_assert_supported_target": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "detections_to_tensor": { + "h1": 7, + "h2": 20, + "N1": 13, + "N2": 24, + "vocabulary": 27, + "length": 37, + "calculated_length": 106.09004635215048, + "volume": 175.93083758004835, + "difficulty": 4.2, + "effort": 738.9095178362031, + "time": 41.05052876867795, + "bugs": 0.058643612526682785 + }, + "_validate_input_tensors": { + "h1": 5, + "h2": 14, + "N1": 9, + "N2": 16, + "vocabulary": 19, + "length": 25, + "calculated_length": 64.91260938324326, + "volume": 106.19818783608963, + "difficulty": 2.857142857142857, + "effort": 303.42339381739896, + "time": 16.85685521207772, + "bugs": 0.03539939594536321 + }, + "_get_coordinate_metadata": { + "h1": 2, + "h2": 4, + "N1": 2, + "N2": 4, + "vocabulary": 6, + "length": 6, + "calculated_length": 10.0, + "volume": 15.509775004326936, + "difficulty": 1.0, + "effort": 15.509775004326936, + "time": 0.861654166907052, + "bugs": 0.005169925001442312 + }, + "_validate_detection_batch_shapes": { + "h1": 3, + "h2": 12, + "N1": 8, + "N2": 16, + "vocabulary": 15, + "length": 24, + "calculated_length": 47.77443751081735, + "volume": 93.76537429460444, + "difficulty": 2.0, + "effort": 187.53074858920888, + "time": 10.418374921622716, + "bugs": 0.03125512476486815 + }, + "_try_early_exit": { + "h1": 2, + "h2": 6, + "N1": 4, + "N2": 8, + "vocabulary": 8, + "length": 12, + "calculated_length": 17.509775004326936, + "volume": 36.0, + "difficulty": 1.3333333333333333, + "effort": 48.0, + "time": 2.6666666666666665, + "bugs": 0.012 + }, + "_get_iou_batch": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "_fill_confusion_matrix_from_iou": { + "h1": 7, + "h2": 18, + "N1": 13, + "N2": 24, + "vocabulary": 25, + "length": 37, + "calculated_length": 94.71013448036484, + "volume": 171.8226790216648, + "difficulty": 4.666666666666667, + "effort": 801.8391687677691, + "time": 44.54662048709829, + "bugs": 0.057274226340554936 + }, + "validate_input_tensors": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "__eq__": { + "h1": 3, + "h2": 8, + "N1": 5, + "N2": 11, + "vocabulary": 11, + "length": 16, + "calculated_length": 28.75488750216347, + "volume": 55.350905898196764, + "difficulty": 2.0625, + "effort": 114.16124341503082, + "time": 6.342291300835046, + "bugs": 0.018450301966065587 + }, + "from_detections": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "from_tensors": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "evaluate_detection_batch": { + "h1": 3, + "h2": 6, + "N1": 4, + "N2": 8, + "vocabulary": 9, + "length": 12, + "calculated_length": 20.264662506490406, + "volume": 38.03910001730775, + "difficulty": 2.0, + "effort": 76.0782000346155, + "time": 4.226566668589751, + "bugs": 0.012679700005769252 + }, + "_drop_extra_matches": { + "h1": 2, + "h2": 3, + "N1": 3, + "N2": 4, + "vocabulary": 5, + "length": 7, + "calculated_length": 6.754887502163469, + "volume": 16.253496664211536, + "difficulty": 1.3333333333333333, + "effort": 21.67132888561538, + "time": 1.2039627158675212, + "bugs": 0.005417832221403845 + }, + "benchmark": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "plot": { + "h1": 9, + "h2": 23, + "N1": 15, + "N2": 27, + "vocabulary": 32, + "length": 42, + "calculated_length": 132.57125000229212, + "volume": 210.0, + "difficulty": 5.282608695652174, + "effort": 1109.3478260869565, + "time": 61.630434782608695, + "bugs": 0.07 + }, + "compute_average_precision": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "_match_detection_batch": { + "h1": 5, + "h2": 8, + "N1": 5, + "N2": 9, + "vocabulary": 13, + "length": 14, + "calculated_length": 35.60964047443681, + "volume": 51.80615605397529, + "difficulty": 2.8125, + "effort": 145.70481390180552, + "time": 8.09471188343364, + "bugs": 0.01726871868465843 + }, + "_average_precisions_per_class": { + "h1": 6, + "h2": 15, + "N1": 10, + "N2": 19, + "vocabulary": 21, + "length": 29, + "calculated_length": 74.11313393845472, + "volume": 127.37720526058406, + "difficulty": 3.8, + "effort": 484.03337999021943, + "time": 26.890743332789967, + "bugs": 0.04245906842019469 + } + } + }, + "src\\supervision\\metrics\\f1_score.py": { + "total": { + "h1": 16, + "h2": 149, + "N1": 106, + "N2": 206, + "vocabulary": 165, + "length": 312, + "calculated_length": 1139.656109548862, + "volume": 2298.2925308446943, + "difficulty": 11.060402684563758, + "effort": 25420.04087806749, + "time": 1412.2244932259719, + "bugs": 0.7660975102815648 + }, + "functions": { + "__init__": { + "h1": 2, + "h2": 8, + "N1": 5, + "N2": 11, + "vocabulary": 10, + "length": 16, + "calculated_length": 26.0, + "volume": 53.1508495181978, + "difficulty": 1.375, + "effort": 73.08241808752197, + "time": 4.060134338195665, + "bugs": 0.017716949839399268 + }, + "reset": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "update": { + "h1": 2, + "h2": 4, + "N1": 3, + "N2": 4, + "vocabulary": 6, + "length": 7, + "calculated_length": 10.0, + "volume": 18.094737505048094, + "difficulty": 1.0, + "effort": 18.094737505048094, + "time": 1.0052631947248942, + "bugs": 0.006031579168349364 + }, + "compute": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "_compute": { + "h1": 7, + "h2": 17, + "N1": 14, + "N2": 27, + "vocabulary": 24, + "length": 41, + "calculated_length": 89.13835275565901, + "volume": 187.98346252956745, + "difficulty": 5.5588235294117645, + "effort": 1044.9668946496543, + "time": 58.05371636942524, + "bugs": 0.06266115417652249 + }, + "_compute_f1_for_classes": { + "h1": 2, + "h2": 7, + "N1": 5, + "N2": 9, + "vocabulary": 9, + "length": 14, + "calculated_length": 21.651484454403228, + "volume": 44.37895002019238, + "difficulty": 1.2857142857142858, + "effort": 57.05865002596163, + "time": 3.169925001442313, + "bugs": 0.014792983340064125 + }, + "_match_detection_batch": { + "h1": 5, + "h2": 8, + "N1": 5, + "N2": 9, + "vocabulary": 13, + "length": 14, + "calculated_length": 35.60964047443681, + "volume": 51.80615605397529, + "difficulty": 2.8125, + "effort": 145.70481390180552, + "time": 8.09471188343364, + "bugs": 0.01726871868465843 + }, + "_compute_confusion_matrix": { + "h1": 2, + "h2": 8, + "N1": 5, + "N2": 10, + "vocabulary": 10, + "length": 15, + "calculated_length": 26.0, + "volume": 49.82892142331044, + "difficulty": 1.25, + "effort": 62.28615177913805, + "time": 3.4603417655076694, + "bugs": 0.016609640474436815 + }, + "_compute_f1": { + "h1": 6, + "h2": 13, + "N1": 9, + "N2": 16, + "vocabulary": 19, + "length": 25, + "calculated_length": 63.61549134016113, + "volume": 106.19818783608963, + "difficulty": 3.6923076923076925, + "effort": 392.11638585633096, + "time": 21.784243658685053, + "bugs": 0.03539939594536321 + }, + "_detections_content": { + "h1": 4, + "h2": 11, + "N1": 7, + "N2": 14, + "vocabulary": 15, + "length": 21, + "calculated_length": 46.053747805010275, + "volume": 82.0447025077789, + "difficulty": 2.5454545454545454, + "effort": 208.84106092889172, + "time": 11.602281162716206, + "bugs": 0.02734823416925963 + }, + "_make_empty_content": { + "h1": 1, + "h2": 4, + "N1": 3, + "N2": 6, + "vocabulary": 5, + "length": 9, + "calculated_length": 8.0, + "volume": 20.89735285398626, + "difficulty": 0.75, + "effort": 15.673014640489694, + "time": 0.8707230355827608, + "bugs": 0.0069657842846620865 + }, + "_filter_detections_by_size": { + "h1": 3, + "h2": 12, + "N1": 8, + "N2": 16, + "vocabulary": 15, + "length": 24, + "calculated_length": 47.77443751081735, + "volume": 93.76537429460444, + "difficulty": 2.0, + "effort": 187.53074858920888, + "time": 10.418374921622716, + "bugs": 0.03125512476486815 + }, + "_filter_predictions_and_targets_by_size": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "f1_50": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "f1_75": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "_ensure_size_results": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "small_objects": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "medium_objects": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "large_objects": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "__str__": { + "h1": 3, + "h2": 16, + "N1": 12, + "N2": 24, + "vocabulary": 19, + "length": 36, + "calculated_length": 68.75488750216347, + "volume": 152.92539048396907, + "difficulty": 2.25, + "effort": 344.0821285889304, + "time": 19.115673810496133, + "bugs": 0.050975130161323025 + }, + "to_pandas": { + "h1": 1, + "h2": 4, + "N1": 3, + "N2": 6, + "vocabulary": 5, + "length": 9, + "calculated_length": 8.0, + "volume": 20.89735285398626, + "difficulty": 0.75, + "effort": 15.673014640489694, + "time": 0.8707230355827608, + "bugs": 0.0069657842846620865 + }, + "plot": { + "h1": 4, + "h2": 26, + "N1": 19, + "N2": 38, + "vocabulary": 30, + "length": 57, + "calculated_length": 130.2114326716684, + "volume": 279.69276394968557, + "difficulty": 2.923076923076923, + "effort": 817.563463852927, + "time": 45.42019243627372, + "bugs": 0.09323092131656185 + } + } + }, + "src\\supervision\\metrics\\mean_average_precision.py": { + "total": { + "h1": 21, + "h2": 314, + "N1": 244, + "N2": 445, + "vocabulary": 335, + "length": 689, + "calculated_length": 2696.7495810303244, + "volume": 5779.343909602799, + "difficulty": 14.880573248407643, + "effort": 85999.95037458304, + "time": 4777.775020810169, + "bugs": 1.9264479698675996 + }, + "functions": { + "__init__": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "map50_95": { + "h1": 2, + "h2": 5, + "N1": 4, + "N2": 6, + "vocabulary": 7, + "length": 10, + "calculated_length": 13.60964047443681, + "volume": 28.07354922057604, + "difficulty": 1.2, + "effort": 33.688259064691245, + "time": 1.8715699480384025, + "bugs": 0.009357849740192013 + }, + "map50": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "map75": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "small_objects": { + "h1": 2, + "h2": 5, + "N1": 4, + "N2": 8, + "vocabulary": 7, + "length": 12, + "calculated_length": 13.60964047443681, + "volume": 33.68825906469125, + "difficulty": 1.6, + "effort": 53.901214503506004, + "time": 2.9945119168614447, + "bugs": 0.011229419688230418 + }, + "medium_objects": { + "h1": 2, + "h2": 5, + "N1": 4, + "N2": 8, + "vocabulary": 7, + "length": 12, + "calculated_length": 13.60964047443681, + "volume": 33.68825906469125, + "difficulty": 1.6, + "effort": 53.901214503506004, + "time": 2.9945119168614447, + "bugs": 0.011229419688230418 + }, + "large_objects": { + "h1": 2, + "h2": 5, + "N1": 4, + "N2": 8, + "vocabulary": 7, + "length": 12, + "calculated_length": 13.60964047443681, + "volume": 33.68825906469125, + "difficulty": 1.6, + "effort": 53.901214503506004, + "time": 2.9945119168614447, + "bugs": 0.011229419688230418 + }, + "__str__": { + "h1": 2, + "h2": 7, + "N1": 4, + "N2": 9, + "vocabulary": 9, + "length": 13, + "calculated_length": 21.651484454403228, + "volume": 41.20902501875006, + "difficulty": 1.2857142857142858, + "effort": 52.98303216696437, + "time": 2.943501787053576, + "bugs": 0.013736341672916687 + }, + "to_pandas": { + "h1": 1, + "h2": 4, + "N1": 3, + "N2": 6, + "vocabulary": 5, + "length": 9, + "calculated_length": 8.0, + "volume": 20.89735285398626, + "difficulty": 0.75, + "effort": 15.673014640489694, + "time": 0.8707230355827608, + "bugs": 0.0069657842846620865 + }, + "plot": { + "h1": 4, + "h2": 27, + "N1": 19, + "N2": 38, + "vocabulary": 31, + "length": 57, + "calculated_length": 136.38196255841368, + "volume": 282.3891896920519, + "difficulty": 2.814814814814815, + "effort": 794.8732746887387, + "time": 44.159626371596595, + "bugs": 0.09412972989735063 + }, + "empty": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "create_class_members": { + "h1": 2, + "h2": 6, + "N1": 6, + "N2": 12, + "vocabulary": 8, + "length": 18, + "calculated_length": 17.509775004326936, + "volume": 54.0, + "difficulty": 2.0, + "effort": 108.0, + "time": 6.0, + "bugs": 0.018 + }, + "get_annotation_ids": { + "h1": 6, + "h2": 15, + "N1": 12, + "N2": 19, + "vocabulary": 21, + "length": 31, + "calculated_length": 74.11313393845472, + "volume": 136.16184010614157, + "difficulty": 3.8, + "effort": 517.4149924033379, + "time": 28.745277355740996, + "bugs": 0.04538728003538052 + }, + "get_category_ids": { + "h1": 3, + "h2": 9, + "N1": 10, + "N2": 15, + "vocabulary": 12, + "length": 25, + "calculated_length": 33.28421251514428, + "volume": 89.62406251802891, + "difficulty": 2.5, + "effort": 224.06015629507226, + "time": 12.447786460837348, + "bugs": 0.029874687506009637 + }, + "get_image_ids": { + "h1": 4, + "h2": 10, + "N1": 7, + "N2": 11, + "vocabulary": 14, + "length": 18, + "calculated_length": 41.219280948873624, + "volume": 68.53238859703687, + "difficulty": 2.2, + "effort": 150.77125491348113, + "time": 8.37618082852673, + "bugs": 0.022844129532345624 + }, + "get_annotations": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "load_predictions": { + "h1": 8, + "h2": 28, + "N1": 17, + "N2": 32, + "vocabulary": 36, + "length": 49, + "calculated_length": 158.6059378176129, + "volume": 253.3263250706733, + "difficulty": 4.571428571428571, + "effort": 1158.0632003230778, + "time": 64.33684446239322, + "bugs": 0.0844421083568911 + }, + "eval_imgs": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "results": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "stats": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "ious": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "_targets": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "_predictions": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "_prepare_targets_and_predictions": { + "h1": 2, + "h2": 5, + "N1": 3, + "N2": 6, + "vocabulary": 7, + "length": 9, + "calculated_length": 13.60964047443681, + "volume": 25.26619429851844, + "difficulty": 1.2, + "effort": 30.319433158222125, + "time": 1.6844129532345624, + "bugs": 0.008422064766172813 + }, + "_compute_iou": { + "h1": 4, + "h2": 9, + "N1": 7, + "N2": 11, + "vocabulary": 13, + "length": 18, + "calculated_length": 36.52932501298081, + "volume": 66.60791492653966, + "difficulty": 2.4444444444444446, + "effort": 162.81934759820808, + "time": 9.04551931101156, + "bugs": 0.022202638308846556 + }, + "_evaluate_image": { + "h1": 11, + "h2": 35, + "N1": 27, + "N2": 48, + "vocabulary": 46, + "length": 75, + "calculated_length": 217.5786533980841, + "volume": 414.267146704276, + "difficulty": 7.542857142857143, + "effort": 3124.7579065693963, + "time": 173.59766147607758, + "bugs": 0.13808904890142534 + }, + "_initialize_accumulation": { + "h1": 1, + "h2": 3, + "N1": 3, + "N2": 3, + "vocabulary": 4, + "length": 6, + "calculated_length": 4.754887502163469, + "volume": 12.0, + "difficulty": 0.5, + "effort": 6.0, + "time": 0.3333333333333333, + "bugs": 0.004 + }, + "_select_evaluation_indices": { + "h1": 1, + "h2": 8, + "N1": 4, + "N2": 8, + "vocabulary": 9, + "length": 12, + "calculated_length": 24.0, + "volume": 38.03910001730775, + "difficulty": 0.5, + "effort": 19.019550008653876, + "time": 1.0566416671474377, + "bugs": 0.012679700005769252 + }, + "_compute_raw_metrics": { + "h1": 11, + "h2": 34, + "N1": 27, + "N2": 49, + "vocabulary": 45, + "length": 76, + "calculated_length": 211.02748440752185, + "volume": 417.38083532105526, + "difficulty": 7.926470588235294, + "effort": 3308.3569152654236, + "time": 183.79760640363463, + "bugs": 0.13912694510701842 + }, + "_compute_average_precision": { + "h1": 3, + "h2": 6, + "N1": 4, + "N2": 6, + "vocabulary": 9, + "length": 10, + "calculated_length": 20.264662506490406, + "volume": 31.699250014423125, + "difficulty": 1.5, + "effort": 47.548875021634686, + "time": 2.6416041678685938, + "bugs": 0.010566416671474375 + }, + "_compute_average_precision_by_size": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "_accumulate": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "_pycocotools_summarize": { + "h1": 6, + "h2": 11, + "N1": 13, + "N2": 22, + "vocabulary": 17, + "length": 35, + "calculated_length": 53.563522809337215, + "volume": 143.0611994437619, + "difficulty": 6.0, + "effort": 858.3671966625714, + "time": 47.687066481253964, + "bugs": 0.04768706648125397 + }, + "evaluate": { + "h1": 1, + "h2": 1, + "N1": 1, + "N2": 1, + "vocabulary": 2, + "length": 2, + "calculated_length": 0.0, + "volume": 2.0, + "difficulty": 0.5, + "effort": 1.0, + "time": 0.05555555555555555, + "bugs": 0.0006666666666666666 + }, + "reset": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "update": { + "h1": 4, + "h2": 7, + "N1": 7, + "N2": 10, + "vocabulary": 11, + "length": 17, + "calculated_length": 27.651484454403228, + "volume": 58.81033751683406, + "difficulty": 2.857142857142857, + "effort": 168.02953576238303, + "time": 9.33497420902128, + "bugs": 0.019603445838944685 + }, + "_prepare_targets": { + "h1": 7, + "h2": 20, + "N1": 16, + "N2": 32, + "vocabulary": 27, + "length": 48, + "calculated_length": 106.09004635215048, + "volume": 228.2346001038465, + "difficulty": 5.6, + "effort": 1278.1137605815404, + "time": 71.0063200323078, + "bugs": 0.0760782000346155 + }, + "_prepare_predictions": { + "h1": 7, + "h2": 18, + "N1": 13, + "N2": 26, + "vocabulary": 25, + "length": 39, + "calculated_length": 94.71013448036484, + "volume": 181.11039140121426, + "difficulty": 5.055555555555555, + "effort": 915.6136454172498, + "time": 50.867424745402765, + "bugs": 0.06037013046707142 + }, + "compute": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + } + } + }, + "src\\supervision\\metrics\\mean_average_recall.py": { + "total": { + "h1": 17, + "h2": 134, + "N1": 96, + "N2": 186, + "vocabulary": 151, + "length": 282, + "calculated_length": 1016.3428198225972, + "volume": 2041.2301364896723, + "difficulty": 11.798507462686567, + "effort": 24083.46899843412, + "time": 1337.9704999130067, + "bugs": 0.6804100454965575 + }, + "functions": { + "_ensure_size_results": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "small_objects": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "medium_objects": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "large_objects": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "__init__": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "mAR_at_1": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "mAR_at_10": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "mAR_at_100": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "__str__": { + "h1": 3, + "h2": 16, + "N1": 12, + "N2": 24, + "vocabulary": 19, + "length": 36, + "calculated_length": 68.75488750216347, + "volume": 152.92539048396907, + "difficulty": 2.25, + "effort": 344.0821285889304, + "time": 19.115673810496133, + "bugs": 0.050975130161323025 + }, + "to_pandas": { + "h1": 1, + "h2": 4, + "N1": 3, + "N2": 6, + "vocabulary": 5, + "length": 9, + "calculated_length": 8.0, + "volume": 20.89735285398626, + "difficulty": 0.75, + "effort": 15.673014640489694, + "time": 0.8707230355827608, + "bugs": 0.0069657842846620865 + }, + "plot": { + "h1": 4, + "h2": 27, + "N1": 19, + "N2": 38, + "vocabulary": 31, + "length": 57, + "calculated_length": 136.38196255841368, + "volume": 282.3891896920519, + "difficulty": 2.814814814814815, + "effort": 794.8732746887387, + "time": 44.159626371596595, + "bugs": 0.09412972989735063 + }, + "reset": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "update": { + "h1": 2, + "h2": 4, + "N1": 3, + "N2": 4, + "vocabulary": 6, + "length": 7, + "calculated_length": 10.0, + "volume": 18.094737505048094, + "difficulty": 1.0, + "effort": 18.094737505048094, + "time": 1.0052631947248942, + "bugs": 0.006031579168349364 + }, + "compute": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "_compute": { + "h1": 5, + "h2": 11, + "N1": 9, + "N2": 16, + "vocabulary": 16, + "length": 25, + "calculated_length": 49.663388279447084, + "volume": 100.0, + "difficulty": 3.6363636363636362, + "effort": 363.6363636363636, + "time": 20.2020202020202, + "bugs": 0.03333333333333333 + }, + "_compute_average_recall_for_classes": { + "h1": 1, + "h2": 2, + "N1": 2, + "N2": 4, + "vocabulary": 3, + "length": 6, + "calculated_length": 2.0, + "volume": 9.509775004326938, + "difficulty": 1.0, + "effort": 9.509775004326938, + "time": 0.5283208335737188, + "bugs": 0.003169925001442313 + }, + "_match_detection_batch": { + "h1": 5, + "h2": 8, + "N1": 5, + "N2": 9, + "vocabulary": 13, + "length": 14, + "calculated_length": 35.60964047443681, + "volume": 51.80615605397529, + "difficulty": 2.8125, + "effort": 145.70481390180552, + "time": 8.09471188343364, + "bugs": 0.01726871868465843 + }, + "_compute_confusion_matrix": { + "h1": 2, + "h2": 8, + "N1": 5, + "N2": 10, + "vocabulary": 10, + "length": 15, + "calculated_length": 26.0, + "volume": 49.82892142331044, + "difficulty": 1.25, + "effort": 62.28615177913805, + "time": 3.4603417655076694, + "bugs": 0.016609640474436815 + }, + "_compute_recall": { + "h1": 5, + "h2": 8, + "N1": 6, + "N2": 10, + "vocabulary": 13, + "length": 16, + "calculated_length": 35.60964047443681, + "volume": 59.207035490257475, + "difficulty": 3.125, + "effort": 185.0219859070546, + "time": 10.27899921705859, + "bugs": 0.019735678496752493 + }, + "_detections_content": { + "h1": 4, + "h2": 11, + "N1": 7, + "N2": 14, + "vocabulary": 15, + "length": 21, + "calculated_length": 46.053747805010275, + "volume": 82.0447025077789, + "difficulty": 2.5454545454545454, + "effort": 208.84106092889172, + "time": 11.602281162716206, + "bugs": 0.02734823416925963 + }, + "_make_empty_content": { + "h1": 1, + "h2": 4, + "N1": 3, + "N2": 6, + "vocabulary": 5, + "length": 9, + "calculated_length": 8.0, + "volume": 20.89735285398626, + "difficulty": 0.75, + "effort": 15.673014640489694, + "time": 0.8707230355827608, + "bugs": 0.0069657842846620865 + }, + "_filter_detections_by_size": { + "h1": 3, + "h2": 12, + "N1": 8, + "N2": 16, + "vocabulary": 15, + "length": 24, + "calculated_length": 47.77443751081735, + "volume": 93.76537429460444, + "difficulty": 2.0, + "effort": 187.53074858920888, + "time": 10.418374921622716, + "bugs": 0.03125512476486815 + }, + "_filter_predictions_and_targets_by_size": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + } + } + }, + "src\\supervision\\metrics\\precision.py": { + "total": { + "h1": 16, + "h2": 150, + "N1": 112, + "N2": 218, + "vocabulary": 166, + "length": 330, + "calculated_length": 1148.322803574382, + "volume": 2433.7630123444856, + "difficulty": 11.626666666666667, + "effort": 28296.551290191885, + "time": 1572.0306272328826, + "bugs": 0.8112543374481619 + }, + "functions": { + "__init__": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "precision_at_50": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "precision_at_75": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "small_objects": { + "h1": 2, + "h2": 5, + "N1": 4, + "N2": 8, + "vocabulary": 7, + "length": 12, + "calculated_length": 13.60964047443681, + "volume": 33.68825906469125, + "difficulty": 1.6, + "effort": 53.901214503506004, + "time": 2.9945119168614447, + "bugs": 0.011229419688230418 + }, + "medium_objects": { + "h1": 2, + "h2": 5, + "N1": 4, + "N2": 8, + "vocabulary": 7, + "length": 12, + "calculated_length": 13.60964047443681, + "volume": 33.68825906469125, + "difficulty": 1.6, + "effort": 53.901214503506004, + "time": 2.9945119168614447, + "bugs": 0.011229419688230418 + }, + "large_objects": { + "h1": 2, + "h2": 5, + "N1": 4, + "N2": 8, + "vocabulary": 7, + "length": 12, + "calculated_length": 13.60964047443681, + "volume": 33.68825906469125, + "difficulty": 1.6, + "effort": 53.901214503506004, + "time": 2.9945119168614447, + "bugs": 0.011229419688230418 + }, + "__str__": { + "h1": 3, + "h2": 16, + "N1": 12, + "N2": 24, + "vocabulary": 19, + "length": 36, + "calculated_length": 68.75488750216347, + "volume": 152.92539048396907, + "difficulty": 2.25, + "effort": 344.0821285889304, + "time": 19.115673810496133, + "bugs": 0.050975130161323025 + }, + "to_pandas": { + "h1": 1, + "h2": 4, + "N1": 3, + "N2": 6, + "vocabulary": 5, + "length": 9, + "calculated_length": 8.0, + "volume": 20.89735285398626, + "difficulty": 0.75, + "effort": 15.673014640489694, + "time": 0.8707230355827608, + "bugs": 0.0069657842846620865 + }, + "plot": { + "h1": 4, + "h2": 26, + "N1": 19, + "N2": 38, + "vocabulary": 30, + "length": 57, + "calculated_length": 130.2114326716684, + "volume": 279.69276394968557, + "difficulty": 2.923076923076923, + "effort": 817.563463852927, + "time": 45.42019243627372, + "bugs": 0.09323092131656185 + }, + "reset": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "update": { + "h1": 2, + "h2": 4, + "N1": 3, + "N2": 4, + "vocabulary": 6, + "length": 7, + "calculated_length": 10.0, + "volume": 18.094737505048094, + "difficulty": 1.0, + "effort": 18.094737505048094, + "time": 1.0052631947248942, + "bugs": 0.006031579168349364 + }, + "compute": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "_compute": { + "h1": 7, + "h2": 17, + "N1": 14, + "N2": 27, + "vocabulary": 24, + "length": 41, + "calculated_length": 89.13835275565901, + "volume": 187.98346252956745, + "difficulty": 5.5588235294117645, + "effort": 1044.9668946496543, + "time": 58.05371636942524, + "bugs": 0.06266115417652249 + }, + "_compute_precision_for_classes": { + "h1": 2, + "h2": 7, + "N1": 5, + "N2": 9, + "vocabulary": 9, + "length": 14, + "calculated_length": 21.651484454403228, + "volume": 44.37895002019238, + "difficulty": 1.2857142857142858, + "effort": 57.05865002596163, + "time": 3.169925001442313, + "bugs": 0.014792983340064125 + }, + "_match_detection_batch": { + "h1": 5, + "h2": 8, + "N1": 5, + "N2": 9, + "vocabulary": 13, + "length": 14, + "calculated_length": 35.60964047443681, + "volume": 51.80615605397529, + "difficulty": 2.8125, + "effort": 145.70481390180552, + "time": 8.09471188343364, + "bugs": 0.01726871868465843 + }, + "_compute_confusion_matrix": { + "h1": 2, + "h2": 8, + "N1": 5, + "N2": 10, + "vocabulary": 10, + "length": 15, + "calculated_length": 26.0, + "volume": 49.82892142331044, + "difficulty": 1.25, + "effort": 62.28615177913805, + "time": 3.4603417655076694, + "bugs": 0.016609640474436815 + }, + "_compute_precision": { + "h1": 5, + "h2": 8, + "N1": 5, + "N2": 8, + "vocabulary": 13, + "length": 13, + "calculated_length": 35.60964047443681, + "volume": 48.105716335834195, + "difficulty": 2.5, + "effort": 120.26429083958548, + "time": 6.681349491088082, + "bugs": 0.016035238778611398 + }, + "_detections_content": { + "h1": 4, + "h2": 11, + "N1": 7, + "N2": 14, + "vocabulary": 15, + "length": 21, + "calculated_length": 46.053747805010275, + "volume": 82.0447025077789, + "difficulty": 2.5454545454545454, + "effort": 208.84106092889172, + "time": 11.602281162716206, + "bugs": 0.02734823416925963 + }, + "_make_empty_content": { + "h1": 1, + "h2": 4, + "N1": 3, + "N2": 6, + "vocabulary": 5, + "length": 9, + "calculated_length": 8.0, + "volume": 20.89735285398626, + "difficulty": 0.75, + "effort": 15.673014640489694, + "time": 0.8707230355827608, + "bugs": 0.0069657842846620865 + }, + "_filter_detections_by_size": { + "h1": 3, + "h2": 12, + "N1": 8, + "N2": 16, + "vocabulary": 15, + "length": 24, + "calculated_length": 47.77443751081735, + "volume": 93.76537429460444, + "difficulty": 2.0, + "effort": 187.53074858920888, + "time": 10.418374921622716, + "bugs": 0.03125512476486815 + }, + "_filter_predictions_and_targets_by_size": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + } + } + }, + "src\\supervision\\metrics\\recall.py": { + "total": { + "h1": 16, + "h2": 135, + "N1": 95, + "N2": 184, + "vocabulary": 151, + "length": 279, + "calculated_length": 1019.3701056018623, + "volume": 2019.514922271697, + "difficulty": 10.903703703703703, + "effort": 22020.1923376588, + "time": 1223.3440187588221, + "bugs": 0.6731716407572323 + }, + "functions": { + "recall_at_50": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "recall_at_75": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "__init__": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "_ensure_size_results": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "small_objects": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "medium_objects": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "large_objects": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "reset": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "update": { + "h1": 2, + "h2": 4, + "N1": 3, + "N2": 4, + "vocabulary": 6, + "length": 7, + "calculated_length": 10.0, + "volume": 18.094737505048094, + "difficulty": 1.0, + "effort": 18.094737505048094, + "time": 1.0052631947248942, + "bugs": 0.006031579168349364 + }, + "compute": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "_compute": { + "h1": 4, + "h2": 10, + "N1": 8, + "N2": 15, + "vocabulary": 14, + "length": 23, + "calculated_length": 41.219280948873624, + "volume": 87.56916320732489, + "difficulty": 3.0, + "effort": 262.7074896219747, + "time": 14.59486053455415, + "bugs": 0.029189721069108297 + }, + "_compute_recall_for_classes": { + "h1": 2, + "h2": 5, + "N1": 4, + "N2": 7, + "vocabulary": 7, + "length": 11, + "calculated_length": 13.60964047443681, + "volume": 30.880904142633646, + "difficulty": 1.4, + "effort": 43.2332657996871, + "time": 2.401848099982617, + "bugs": 0.010293634714211216 + }, + "_match_detection_batch": { + "h1": 5, + "h2": 8, + "N1": 5, + "N2": 9, + "vocabulary": 13, + "length": 14, + "calculated_length": 35.60964047443681, + "volume": 51.80615605397529, + "difficulty": 2.8125, + "effort": 145.70481390180552, + "time": 8.09471188343364, + "bugs": 0.01726871868465843 + }, + "_compute_confusion_matrix": { + "h1": 2, + "h2": 8, + "N1": 5, + "N2": 10, + "vocabulary": 10, + "length": 15, + "calculated_length": 26.0, + "volume": 49.82892142331044, + "difficulty": 1.25, + "effort": 62.28615177913805, + "time": 3.4603417655076694, + "bugs": 0.016609640474436815 + }, + "_compute_recall": { + "h1": 5, + "h2": 8, + "N1": 5, + "N2": 8, + "vocabulary": 13, + "length": 13, + "calculated_length": 35.60964047443681, + "volume": 48.105716335834195, + "difficulty": 2.5, + "effort": 120.26429083958548, + "time": 6.681349491088082, + "bugs": 0.016035238778611398 + }, + "_detections_content": { + "h1": 4, + "h2": 11, + "N1": 7, + "N2": 14, + "vocabulary": 15, + "length": 21, + "calculated_length": 46.053747805010275, + "volume": 82.0447025077789, + "difficulty": 2.5454545454545454, + "effort": 208.84106092889172, + "time": 11.602281162716206, + "bugs": 0.02734823416925963 + }, + "_make_empty_content": { + "h1": 1, + "h2": 4, + "N1": 3, + "N2": 6, + "vocabulary": 5, + "length": 9, + "calculated_length": 8.0, + "volume": 20.89735285398626, + "difficulty": 0.75, + "effort": 15.673014640489694, + "time": 0.8707230355827608, + "bugs": 0.0069657842846620865 + }, + "_filter_detections_by_size": { + "h1": 3, + "h2": 12, + "N1": 8, + "N2": 16, + "vocabulary": 15, + "length": 24, + "calculated_length": 47.77443751081735, + "volume": 93.76537429460444, + "difficulty": 2.0, + "effort": 187.53074858920888, + "time": 10.418374921622716, + "bugs": 0.03125512476486815 + }, + "_filter_predictions_and_targets_by_size": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "__str__": { + "h1": 3, + "h2": 16, + "N1": 12, + "N2": 24, + "vocabulary": 19, + "length": 36, + "calculated_length": 68.75488750216347, + "volume": 152.92539048396907, + "difficulty": 2.25, + "effort": 344.0821285889304, + "time": 19.115673810496133, + "bugs": 0.050975130161323025 + }, + "to_pandas": { + "h1": 1, + "h2": 4, + "N1": 3, + "N2": 6, + "vocabulary": 5, + "length": 9, + "calculated_length": 8.0, + "volume": 20.89735285398626, + "difficulty": 0.75, + "effort": 15.673014640489694, + "time": 0.8707230355827608, + "bugs": 0.0069657842846620865 + }, + "plot": { + "h1": 4, + "h2": 26, + "N1": 19, + "N2": 38, + "vocabulary": 30, + "length": 57, + "calculated_length": 130.2114326716684, + "volume": 279.69276394968557, + "difficulty": 2.923076923076923, + "effort": 817.563463852927, + "time": 45.42019243627372, + "bugs": 0.09323092131656185 + } + } + }, + "src\\supervision\\metrics\\__init__.py": { + "total": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "functions": {} + }, + "src\\supervision\\metrics\\utils\\object_size.py": { + "total": { + "h1": 12, + "h2": 77, + "N1": 53, + "N2": 106, + "vocabulary": 89, + "length": 159, + "calculated_length": 525.5621136421613, + "volume": 1029.6416155236573, + "difficulty": 8.25974025974026, + "effort": 8504.572304844754, + "time": 472.4762391580419, + "bugs": 0.3432138718412191 + }, + "functions": { + "get_object_size_category": { + "h1": 1, + "h2": 4, + "N1": 3, + "N2": 6, + "vocabulary": 5, + "length": 9, + "calculated_length": 8.0, + "volume": 20.89735285398626, + "difficulty": 0.75, + "effort": 15.673014640489694, + "time": 0.8707230355827608, + "bugs": 0.0069657842846620865 + }, + "get_bbox_size_category": { + "h1": 7, + "h2": 17, + "N1": 11, + "N2": 22, + "vocabulary": 24, + "length": 33, + "calculated_length": 89.13835275565901, + "volume": 151.30376252379818, + "difficulty": 4.529411764705882, + "effort": 685.3170420195564, + "time": 38.07316900108647, + "bugs": 0.05043458750793273 + }, + "get_mask_size_category": { + "h1": 4, + "h2": 7, + "N1": 6, + "N2": 12, + "vocabulary": 11, + "length": 18, + "calculated_length": 27.651484454403228, + "volume": 62.26976913547136, + "difficulty": 3.4285714285714284, + "effort": 213.49635132161606, + "time": 11.860908406756447, + "bugs": 0.020756589711823786 + }, + "get_obb_size_category": { + "h1": 8, + "h2": 38, + "N1": 25, + "N2": 51, + "vocabulary": 46, + "length": 76, + "calculated_length": 223.42124551085624, + "volume": 419.790708660333, + "difficulty": 5.368421052631579, + "effort": 2253.6132780712614, + "time": 125.20073767062564, + "bugs": 0.139930236220111 + }, + "get_detection_size_category": { + "h1": 2, + "h2": 7, + "N1": 5, + "N2": 10, + "vocabulary": 9, + "length": 15, + "calculated_length": 21.651484454403228, + "volume": 47.548875021634686, + "difficulty": 1.4285714285714286, + "effort": 67.92696431662098, + "time": 3.7737202398122767, + "bugs": 0.01584962500721156 + } + } + }, + "src\\supervision\\metrics\\utils\\utils.py": { + "total": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "functions": { + "ensure_pandas_installed": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + } + } + }, + "src\\supervision\\metrics\\utils\\__init__.py": { + "total": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "functions": {} + }, + "src\\supervision\\tracker\\__init__.py": { + "total": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "functions": {} + }, + "src\\supervision\\tracker\\byte_tracker\\core.py": { + "total": { + "h1": 13, + "h2": 62, + "N1": 41, + "N2": 78, + "vocabulary": 75, + "length": 119, + "calculated_length": 417.2658875798205, + "volume": 741.2294241690098, + "difficulty": 8.17741935483871, + "effort": 6061.343839575613, + "time": 336.7413244208674, + "bugs": 0.24707647472300326 + }, + "functions": { + "__init__": { + "h1": 3, + "h2": 6, + "N1": 3, + "N2": 6, + "vocabulary": 9, + "length": 9, + "calculated_length": 20.264662506490406, + "volume": 28.529325012980813, + "difficulty": 1.5, + "effort": 42.793987519471216, + "time": 2.377443751081734, + "bugs": 0.009509775004326938 + }, + "frame_id": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "update_with_detections": { + "h1": 5, + "h2": 8, + "N1": 6, + "N2": 10, + "vocabulary": 13, + "length": 16, + "calculated_length": 35.60964047443681, + "volume": 59.207035490257475, + "difficulty": 3.125, + "effort": 185.0219859070546, + "time": 10.27899921705859, + "bugs": 0.019735678496752493 + }, + "reset": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "update_with_tensors": { + "h1": 1, + "h2": 10, + "N1": 6, + "N2": 12, + "vocabulary": 11, + "length": 18, + "calculated_length": 33.219280948873624, + "volume": 62.26976913547136, + "difficulty": 0.6, + "effort": 37.361861481282816, + "time": 2.0756589711823787, + "bugs": 0.020756589711823786 + }, + "_split_by_confidence": { + "h1": 3, + "h2": 6, + "N1": 6, + "N2": 11, + "vocabulary": 9, + "length": 17, + "calculated_length": 20.264662506490406, + "volume": 53.88872502451932, + "difficulty": 2.75, + "effort": 148.19399381742812, + "time": 8.232999656523784, + "bugs": 0.017962908341506437 + }, + "_build_stracks": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "_separate_tracks": { + "h1": 1, + "h2": 1, + "N1": 1, + "N2": 1, + "vocabulary": 2, + "length": 2, + "calculated_length": 0.0, + "volume": 2.0, + "difficulty": 0.5, + "effort": 1.0, + "time": 0.05555555555555555, + "bugs": 0.0006666666666666666 + }, + "_first_association": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "_second_association": { + "h1": 2, + "h2": 3, + "N1": 3, + "N2": 6, + "vocabulary": 5, + "length": 9, + "calculated_length": 6.754887502163469, + "volume": 20.89735285398626, + "difficulty": 2.0, + "effort": 41.79470570797252, + "time": 2.321928094887362, + "bugs": 0.0069657842846620865 + }, + "_unconfirmed_and_init_new": { + "h1": 2, + "h2": 4, + "N1": 2, + "N2": 4, + "vocabulary": 6, + "length": 6, + "calculated_length": 10.0, + "volume": 15.509775004326936, + "difficulty": 1.0, + "effort": 15.509775004326936, + "time": 0.861654166907052, + "bugs": 0.005169925001442312 + }, + "_remove_stale_lost_tracks": { + "h1": 3, + "h2": 5, + "N1": 3, + "N2": 6, + "vocabulary": 8, + "length": 9, + "calculated_length": 16.36452797660028, + "volume": 27.0, + "difficulty": 1.8, + "effort": 48.6, + "time": 2.7, + "bugs": 0.009 + }, + "_update_state": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "joint_tracks": { + "h1": 2, + "h2": 4, + "N1": 2, + "N2": 4, + "vocabulary": 6, + "length": 6, + "calculated_length": 10.0, + "volume": 15.509775004326936, + "difficulty": 1.0, + "effort": 15.509775004326936, + "time": 0.861654166907052, + "bugs": 0.005169925001442312 + }, + "sub_tracks": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "remove_duplicate_tracks": { + "h1": 4, + "h2": 9, + "N1": 6, + "N2": 12, + "vocabulary": 13, + "length": 18, + "calculated_length": 36.52932501298081, + "volume": 66.60791492653966, + "difficulty": 2.6666666666666665, + "effort": 177.62110647077242, + "time": 9.867839248376246, + "bugs": 0.022202638308846556 + } + } + }, + "src\\supervision\\tracker\\byte_tracker\\kalman_filter.py": { + "total": { + "h1": 4, + "h2": 58, + "N1": 41, + "N2": 82, + "vocabulary": 62, + "length": 123, + "calculated_length": 347.76289771739914, + "volume": 732.3661461775857, + "difficulty": 2.8275862068965516, + "effort": 2070.828413329725, + "time": 115.0460229627625, + "bugs": 0.2441220487258619 + }, + "functions": { + "__init__": { + "h1": 3, + "h2": 6, + "N1": 6, + "N2": 12, + "vocabulary": 9, + "length": 18, + "calculated_length": 20.264662506490406, + "volume": 57.058650025961626, + "difficulty": 3.0, + "effort": 171.17595007788486, + "time": 9.509775004326936, + "bugs": 0.019019550008653876 + }, + "initiate": { + "h1": 1, + "h2": 16, + "N1": 12, + "N2": 24, + "vocabulary": 17, + "length": 36, + "calculated_length": 64.0, + "volume": 147.14866228501225, + "difficulty": 0.75, + "effort": 110.36149671375918, + "time": 6.13119426187551, + "bugs": 0.04904955409500408 + }, + "predict": { + "h1": 2, + "h2": 10, + "N1": 7, + "N2": 14, + "vocabulary": 12, + "length": 21, + "calculated_length": 35.219280948873624, + "volume": 75.28421251514429, + "difficulty": 1.4, + "effort": 105.397897521202, + "time": 5.855438751177889, + "bugs": 0.025094737505048096 + }, + "project": { + "h1": 2, + "h2": 6, + "N1": 4, + "N2": 8, + "vocabulary": 8, + "length": 12, + "calculated_length": 17.509775004326936, + "volume": 36.0, + "difficulty": 1.3333333333333333, + "effort": 48.0, + "time": 2.6666666666666665, + "bugs": 0.012 + }, + "multi_predict": { + "h1": 2, + "h2": 14, + "N1": 9, + "N2": 18, + "vocabulary": 16, + "length": 27, + "calculated_length": 55.30296890880645, + "volume": 108.0, + "difficulty": 1.2857142857142858, + "effort": 138.85714285714286, + "time": 7.714285714285714, + "bugs": 0.036 + }, + "update": { + "h1": 2, + "h2": 6, + "N1": 3, + "N2": 6, + "vocabulary": 8, + "length": 9, + "calculated_length": 17.509775004326936, + "volume": 27.0, + "difficulty": 1.0, + "effort": 27.0, + "time": 1.5, + "bugs": 0.009 + } + } + }, + "src\\supervision\\tracker\\byte_tracker\\matching.py": { + "total": { + "h1": 9, + "h2": 30, + "N1": 17, + "N2": 34, + "vocabulary": 39, + "length": 51, + "calculated_length": 175.7360428812364, + "volume": 269.55551316197466, + "difficulty": 5.1, + "effort": 1374.7331171260707, + "time": 76.37406206255949, + "bugs": 0.08985183772065822 + }, + "functions": { + "indices_to_matches": { + "h1": 2, + "h2": 6, + "N1": 3, + "N2": 6, + "vocabulary": 8, + "length": 9, + "calculated_length": 17.509775004326936, + "volume": 27.0, + "difficulty": 1.0, + "effort": 27.0, + "time": 1.5, + "bugs": 0.009 + }, + "linear_assignment": { + "h1": 3, + "h2": 5, + "N1": 3, + "N2": 6, + "vocabulary": 8, + "length": 9, + "calculated_length": 16.36452797660028, + "volume": 27.0, + "difficulty": 1.8, + "effort": 48.6, + "time": 2.7, + "bugs": 0.009 + }, + "iou_distance": { + "h1": 5, + "h2": 12, + "N1": 7, + "N2": 14, + "vocabulary": 17, + "length": 21, + "calculated_length": 54.62919048309069, + "volume": 85.83671966625714, + "difficulty": 2.9166666666666665, + "effort": 250.3570990265833, + "time": 13.908727723699073, + "bugs": 0.02861223988875238 + }, + "fuse_score": { + "h1": 3, + "h2": 7, + "N1": 4, + "N2": 8, + "vocabulary": 10, + "length": 12, + "calculated_length": 24.406371956566698, + "volume": 39.863137138648355, + "difficulty": 1.7142857142857142, + "effort": 68.33680652339717, + "time": 3.796489251299843, + "bugs": 0.013287712379549451 + } + } + }, + "src\\supervision\\tracker\\byte_tracker\\single_object_track.py": { + "total": { + "h1": 10, + "h2": 53, + "N1": 32, + "N2": 64, + "vocabulary": 63, + "length": 96, + "calculated_length": 336.79906504072324, + "volume": 573.818872655992, + "difficulty": 6.037735849056604, + "effort": 3464.566778300329, + "time": 192.47593212779606, + "bugs": 0.19127295755199733 + }, + "functions": { + "__post_init__": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "__init__": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "state": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "is_activated": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "start_frame": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "frame_id": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "kalman_filter": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "mean": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "covariance": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "score": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "tracklet_len": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "minimum_consecutive_frames": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "internal_track_id": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "external_track_id": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "predict": { + "h1": 2, + "h2": 6, + "N1": 4, + "N2": 8, + "vocabulary": 8, + "length": 12, + "calculated_length": 17.509775004326936, + "volume": 36.0, + "difficulty": 1.3333333333333333, + "effort": 48.0, + "time": 2.6666666666666665, + "bugs": 0.012 + }, + "multi_predict": { + "h1": 3, + "h2": 7, + "N1": 4, + "N2": 8, + "vocabulary": 10, + "length": 12, + "calculated_length": 24.406371956566698, + "volume": 39.863137138648355, + "difficulty": 1.7142857142857142, + "effort": 68.33680652339717, + "time": 3.796489251299843, + "bugs": 0.013287712379549451 + }, + "activate": { + "h1": 1, + "h2": 3, + "N1": 2, + "N2": 4, + "vocabulary": 4, + "length": 6, + "calculated_length": 4.754887502163469, + "volume": 12.0, + "difficulty": 0.6666666666666666, + "effort": 8.0, + "time": 0.4444444444444444, + "bugs": 0.004 + }, + "re_activate": { + "h1": 1, + "h2": 4, + "N1": 3, + "N2": 6, + "vocabulary": 5, + "length": 9, + "calculated_length": 8.0, + "volume": 20.89735285398626, + "difficulty": 0.75, + "effort": 15.673014640489694, + "time": 0.8707230355827608, + "bugs": 0.0069657842846620865 + }, + "update": { + "h1": 3, + "h2": 9, + "N1": 6, + "N2": 12, + "vocabulary": 12, + "length": 18, + "calculated_length": 33.28421251514428, + "volume": 64.52932501298082, + "difficulty": 2.0, + "effort": 129.05865002596164, + "time": 7.169925001442313, + "bugs": 0.02150977500432694 + }, + "tlwh": { + "h1": 4, + "h2": 8, + "N1": 4, + "N2": 8, + "vocabulary": 12, + "length": 12, + "calculated_length": 32.0, + "volume": 43.01955000865388, + "difficulty": 2.0, + "effort": 86.03910001730776, + "time": 4.779950000961542, + "bugs": 0.014339850002884626 + }, + "tlbr": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "tlwh_to_xyah": { + "h1": 2, + "h2": 6, + "N1": 3, + "N2": 6, + "vocabulary": 8, + "length": 9, + "calculated_length": 17.509775004326936, + "volume": 27.0, + "difficulty": 1.0, + "effort": 27.0, + "time": 1.5, + "bugs": 0.009 + }, + "to_xyah": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "tlbr_to_tlwh": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "tlwh_to_tlbr": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "__repr__": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + } + } + }, + "src\\supervision\\tracker\\byte_tracker\\utils.py": { + "total": { + "h1": 3, + "h2": 5, + "N1": 3, + "N2": 5, + "vocabulary": 8, + "length": 8, + "calculated_length": 16.36452797660028, + "volume": 24.0, + "difficulty": 1.5, + "effort": 36.0, + "time": 2.0, + "bugs": 0.008 + }, + "functions": { + "__init__": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "reset": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "new_id": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "NO_ID": { + "h1": 1, + "h2": 1, + "N1": 1, + "N2": 1, + "vocabulary": 2, + "length": 2, + "calculated_length": 0.0, + "volume": 2.0, + "difficulty": 0.5, + "effort": 1.0, + "time": 0.05555555555555555, + "bugs": 0.0006666666666666666 + } + } + }, + "src\\supervision\\tracker\\byte_tracker\\__init__.py": { + "total": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "functions": {} + }, + "src\\supervision\\utils\\conversion.py": { + "total": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "functions": { + "ensure_cv2_image_for_class_method": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "ensure_cv2_image_for_annotation": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "ensure_cv2_image_for_standalone_function": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "ensure_pil_image_for_class_method": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "ensure_pil_image_for_annotation": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "ensure_cv2_image_for_processing": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "images_to_cv2": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "pillow_to_cv2": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "cv2_to_pillow": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + } + } + }, + "src\\supervision\\utils\\file.py": { + "total": { + "h1": 6, + "h2": 10, + "N1": 6, + "N2": 11, + "vocabulary": 16, + "length": 17, + "calculated_length": 48.72905595320056, + "volume": 68.0, + "difficulty": 3.3, + "effort": 224.39999999999998, + "time": 12.466666666666665, + "bugs": 0.02266666666666667 + }, + "functions": { + "default": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "list_files_with_extensions": { + "h1": 5, + "h2": 8, + "N1": 5, + "N2": 9, + "vocabulary": 13, + "length": 14, + "calculated_length": 35.60964047443681, + "volume": 51.80615605397529, + "difficulty": 2.8125, + "effort": 145.70481390180552, + "time": 8.09471188343364, + "bugs": 0.01726871868465843 + }, + "read_txt_file": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "save_text_file": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "read_json_file": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "save_json_file": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "read_yaml_file": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "save_yaml_file": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + } + } + }, + "src\\supervision\\utils\\image.py": { + "total": { + "h1": 16, + "h2": 130, + "N1": 93, + "N2": 177, + "vocabulary": 146, + "length": 270, + "calculated_length": 976.907815693699, + "volume": 1941.2526308976048, + "difficulty": 10.892307692307693, + "effort": 21144.720964238528, + "time": 1174.7067202354738, + "bugs": 0.6470842102992016 + }, + "functions": { + "crop_image": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "scale_image": { + "h1": 2, + "h2": 4, + "N1": 3, + "N2": 6, + "vocabulary": 6, + "length": 9, + "calculated_length": 10.0, + "volume": 23.264662506490403, + "difficulty": 1.5, + "effort": 34.89699375973561, + "time": 1.938721875540867, + "bugs": 0.007754887502163467 + }, + "resize_image": { + "h1": 3, + "h2": 8, + "N1": 5, + "N2": 10, + "vocabulary": 11, + "length": 15, + "calculated_length": 28.75488750216347, + "volume": 51.89147427955947, + "difficulty": 1.875, + "effort": 97.296514274174, + "time": 5.405361904120777, + "bugs": 0.01729715809318649 + }, + "letterbox_image": { + "h1": 2, + "h2": 13, + "N1": 8, + "N2": 16, + "vocabulary": 15, + "length": 24, + "calculated_length": 50.105716335834195, + "volume": 93.76537429460444, + "difficulty": 1.2307692307692308, + "effort": 115.40353759335932, + "time": 6.411307644075517, + "bugs": 0.03125512476486815 + }, + "overlay_image": { + "h1": 9, + "h2": 30, + "N1": 25, + "N2": 48, + "vocabulary": 39, + "length": 73, + "calculated_length": 175.7360428812364, + "volume": 385.83436197694414, + "difficulty": 7.2, + "effort": 2778.0074062339977, + "time": 154.33374479077764, + "bugs": 0.12861145399231472 + }, + "tint_image": { + "h1": 3, + "h2": 4, + "N1": 4, + "N2": 6, + "vocabulary": 7, + "length": 10, + "calculated_length": 12.75488750216347, + "volume": 28.07354922057604, + "difficulty": 2.25, + "effort": 63.16548574629609, + "time": 3.509193652572005, + "bugs": 0.009357849740192013 + }, + "grayscale_image": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "get_image_resolution_wh": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "__init__": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "__enter__": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "save_image": { + "h1": 2, + "h2": 4, + "N1": 2, + "N2": 4, + "vocabulary": 6, + "length": 6, + "calculated_length": 10.0, + "volume": 15.509775004326936, + "difficulty": 1.0, + "effort": 15.509775004326936, + "time": 0.861654166907052, + "bugs": 0.005169925001442312 + }, + "__exit__": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "create_tiles": { + "h1": 5, + "h2": 12, + "N1": 7, + "N2": 14, + "vocabulary": 17, + "length": 21, + "calculated_length": 54.62919048309069, + "volume": 85.83671966625714, + "difficulty": 2.9166666666666665, + "effort": 250.3570990265833, + "time": 13.908727723699073, + "bugs": 0.02861223988875238 + }, + "_negotiate_tiles_format": { + "h1": 2, + "h2": 4, + "N1": 2, + "N2": 4, + "vocabulary": 6, + "length": 6, + "calculated_length": 10.0, + "volume": 15.509775004326936, + "difficulty": 1.0, + "effort": 15.509775004326936, + "time": 0.861654166907052, + "bugs": 0.005169925001442312 + }, + "_calculate_aggregated_images_shape": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "_aggregate_images_shape": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "_establish_grid_size": { + "h1": 4, + "h2": 11, + "N1": 9, + "N2": 18, + "vocabulary": 15, + "length": 27, + "calculated_length": 46.053747805010275, + "volume": 105.48604608143, + "difficulty": 3.272727272727273, + "effort": 345.22705990286187, + "time": 19.179281105714548, + "bugs": 0.03516201536047667 + }, + "_negotiate_grid_size": { + "h1": 4, + "h2": 8, + "N1": 5, + "N2": 10, + "vocabulary": 12, + "length": 15, + "calculated_length": 32.0, + "volume": 53.77443751081735, + "difficulty": 2.5, + "effort": 134.43609377704337, + "time": 7.468671876502409, + "bugs": 0.017924812503605784 + }, + "_generate_tiles": { + "h1": 3, + "h2": 6, + "N1": 5, + "N2": 8, + "vocabulary": 9, + "length": 13, + "calculated_length": 20.264662506490406, + "volume": 41.20902501875006, + "difficulty": 2.0, + "effort": 82.41805003750012, + "time": 4.578780557638896, + "bugs": 0.013736341672916687 + }, + "_draw_texts": { + "h1": 1, + "h2": 4, + "N1": 3, + "N2": 6, + "vocabulary": 5, + "length": 9, + "calculated_length": 8.0, + "volume": 20.89735285398626, + "difficulty": 0.75, + "effort": 15.673014640489694, + "time": 0.8707230355827608, + "bugs": 0.0069657842846620865 + }, + "_prepare_default_titles_anchors": { + "h1": 4, + "h2": 9, + "N1": 6, + "N2": 12, + "vocabulary": 13, + "length": 18, + "calculated_length": 36.52932501298081, + "volume": 66.60791492653966, + "difficulty": 2.6666666666666665, + "effort": 177.62110647077242, + "time": 9.867839248376246, + "bugs": 0.022202638308846556 + }, + "_merge_tiles_elements": { + "h1": 2, + "h2": 6, + "N1": 5, + "N2": 8, + "vocabulary": 8, + "length": 13, + "calculated_length": 17.509775004326936, + "volume": 39.0, + "difficulty": 1.3333333333333333, + "effort": 52.0, + "time": 2.888888888888889, + "bugs": 0.013 + }, + "_generate_color_image": { + "h1": 2, + "h2": 3, + "N1": 2, + "N2": 3, + "vocabulary": 5, + "length": 5, + "calculated_length": 6.754887502163469, + "volume": 11.60964047443681, + "difficulty": 1.0, + "effort": 11.60964047443681, + "time": 0.6449800263576005, + "bugs": 0.0038698801581456034 + } + } + }, + "src\\supervision\\utils\\internal.py": { + "total": { + "h1": 6, + "h2": 15, + "N1": 9, + "N2": 15, + "vocabulary": 21, + "length": 24, + "calculated_length": 74.11313393845472, + "volume": 105.41561814669026, + "difficulty": 3.0, + "effort": 316.2468544400708, + "time": 17.569269691115046, + "bugs": 0.03513853938223009 + }, + "functions": { + "format_warning": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "warn_deprecated": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "deprecated_parameter": { + "h1": 2, + "h2": 4, + "N1": 2, + "N2": 4, + "vocabulary": 6, + "length": 6, + "calculated_length": 10.0, + "volume": 15.509775004326936, + "difficulty": 1.0, + "effort": 15.509775004326936, + "time": 0.861654166907052, + "bugs": 0.005169925001442312 + }, + "__init__": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "__get__": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "get_instance_variables": { + "h1": 3, + "h2": 7, + "N1": 5, + "N2": 7, + "vocabulary": 10, + "length": 12, + "calculated_length": 24.406371956566698, + "volume": 39.863137138648355, + "difficulty": 1.5, + "effort": 59.79470570797253, + "time": 3.321928094887363, + "bugs": 0.013287712379549451 + } + } + }, + "src\\supervision\\utils\\iterables.py": { + "total": { + "h1": 4, + "h2": 8, + "N1": 4, + "N2": 8, + "vocabulary": 12, + "length": 12, + "calculated_length": 32.0, + "volume": 43.01955000865388, + "difficulty": 2.0, + "effort": 86.03910001730776, + "time": 4.779950000961542, + "bugs": 0.014339850002884626 + }, + "functions": { + "create_batches": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "fill": { + "h1": 2, + "h2": 4, + "N1": 2, + "N2": 4, + "vocabulary": 6, + "length": 6, + "calculated_length": 10.0, + "volume": 15.509775004326936, + "difficulty": 1.0, + "effort": 15.509775004326936, + "time": 0.861654166907052, + "bugs": 0.005169925001442312 + }, + "find_duplicates": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + } + } + }, + "src\\supervision\\utils\\logger.py": { + "total": { + "h1": 3, + "h2": 5, + "N1": 3, + "N2": 5, + "vocabulary": 8, + "length": 8, + "calculated_length": 16.36452797660028, + "volume": 24.0, + "difficulty": 1.5, + "effort": 36.0, + "time": 2.0, + "bugs": 0.008 + }, + "functions": { + "_get_logger": { + "h1": 3, + "h2": 5, + "N1": 3, + "N2": 5, + "vocabulary": 8, + "length": 8, + "calculated_length": 16.36452797660028, + "volume": 24.0, + "difficulty": 1.5, + "effort": 36.0, + "time": 2.0, + "bugs": 0.008 + } + } + }, + "src\\supervision\\utils\\notebook.py": { + "total": { + "h1": 6, + "h2": 15, + "N1": 8, + "N2": 16, + "vocabulary": 21, + "length": 24, + "calculated_length": 74.11313393845472, + "volume": 105.41561814669026, + "difficulty": 3.2, + "effort": 337.32997806940887, + "time": 18.74055433718938, + "bugs": 0.03513853938223009 + }, + "functions": { + "plot_image": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "plot_images_grid": { + "h1": 6, + "h2": 13, + "N1": 7, + "N2": 14, + "vocabulary": 19, + "length": 21, + "calculated_length": 63.61549134016113, + "volume": 89.20647778231529, + "difficulty": 3.230769230769231, + "effort": 288.20554360440326, + "time": 16.011419089133515, + "bugs": 0.029735492594105097 + } + } + }, + "src\\supervision\\utils\\video.py": { + "total": { + "h1": 13, + "h2": 60, + "N1": 45, + "N2": 80, + "vocabulary": 73, + "length": 125, + "calculated_length": 402.5191520723453, + "volume": 773.7280698600022, + "difficulty": 8.666666666666666, + "effort": 6705.643272120018, + "time": 372.535737340001, + "bugs": 0.2579093566200007 + }, + "functions": { + "from_video_path": { + "h1": 1, + "h2": 1, + "N1": 1, + "N2": 1, + "vocabulary": 2, + "length": 2, + "calculated_length": 0.0, + "volume": 2.0, + "difficulty": 0.5, + "effort": 1.0, + "time": 0.05555555555555555, + "bugs": 0.0006666666666666666 + }, + "resolution_wh": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "__init__": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "__enter__": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "write_frame": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "__exit__": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "_mux_audio": { + "h1": 4, + "h2": 7, + "N1": 4, + "N2": 8, + "vocabulary": 11, + "length": 12, + "calculated_length": 27.651484454403228, + "volume": 41.51317942364757, + "difficulty": 2.2857142857142856, + "effort": 94.88726725405158, + "time": 5.27151484744731, + "bugs": 0.01383772647454919 + }, + "_validate_and_setup_video": { + "h1": 5, + "h2": 10, + "N1": 9, + "N2": 16, + "vocabulary": 15, + "length": 25, + "calculated_length": 44.82892142331043, + "volume": 97.67226489021297, + "difficulty": 4.0, + "effort": 390.6890595608519, + "time": 21.70494775338066, + "bugs": 0.03255742163007099 + }, + "get_video_frames_generator": { + "h1": 6, + "h2": 9, + "N1": 7, + "N2": 12, + "vocabulary": 15, + "length": 19, + "calculated_length": 44.039100017307746, + "volume": 74.23092131656186, + "difficulty": 4.0, + "effort": 296.92368526624745, + "time": 16.4957602925693, + "bugs": 0.024743640438853954 + }, + "_reader_thread": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "_writer_thread": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "_drain_and_cleanup": { + "h1": 3, + "h2": 5, + "N1": 4, + "N2": 6, + "vocabulary": 8, + "length": 10, + "calculated_length": 16.36452797660028, + "volume": 30.0, + "difficulty": 1.8, + "effort": 54.0, + "time": 3.0, + "bugs": 0.01 + }, + "_mux_audio_if_needed": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "_total_frames": { + "h1": 2, + "h2": 4, + "N1": 3, + "N2": 6, + "vocabulary": 6, + "length": 9, + "calculated_length": 10.0, + "volume": 23.264662506490403, + "difficulty": 1.5, + "effort": 34.89699375973561, + "time": 1.938721875540867, + "bugs": 0.007754887502163467 + }, + "_start_workers": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "_setup_progress_bar": { + "h1": 1, + "h2": 1, + "N1": 1, + "N2": 1, + "vocabulary": 2, + "length": 2, + "calculated_length": 0.0, + "volume": 2.0, + "difficulty": 0.5, + "effort": 1.0, + "time": 0.05555555555555555, + "bugs": 0.0006666666666666666 + }, + "_process_frames": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "run": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "process_video": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "fps": { + "h1": 5, + "h2": 7, + "N1": 5, + "N2": 8, + "vocabulary": 12, + "length": 13, + "calculated_length": 31.26112492884004, + "volume": 46.604512509375034, + "difficulty": 2.857142857142857, + "effort": 133.15575002678582, + "time": 7.397541668154768, + "bugs": 0.015534837503125011 + }, + "tick": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "reset": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + } + } + }, + "src\\supervision\\utils\\__init__.py": { + "total": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "functions": {} + }, + "src\\supervision\\validators\\__init__.py": { + "total": { + "h1": 11, + "h2": 113, + "N1": 65, + "N2": 122, + "vocabulary": 124, + "length": 187, + "calculated_length": 808.7339705579266, + "volume": 1300.4347100423458, + "difficulty": 5.938053097345133, + "effort": 7722.050357862072, + "time": 429.002797659004, + "bugs": 0.43347823668078195 + }, + "functions": { + "_validate_xyxy": { + "h1": 3, + "h2": 8, + "N1": 4, + "N2": 8, + "vocabulary": 11, + "length": 12, + "calculated_length": 28.75488750216347, + "volume": 41.51317942364757, + "difficulty": 1.5, + "effort": 62.26976913547136, + "time": 3.4594316186372978, + "bugs": 0.01383772647454919 + }, + "validate_xyxy": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "_validate_mask": { + "h1": 6, + "h2": 14, + "N1": 8, + "N2": 15, + "vocabulary": 20, + "length": 23, + "calculated_length": 68.81274391313339, + "volume": 99.40434618240934, + "difficulty": 3.2142857142857144, + "effort": 319.51396987203003, + "time": 17.75077610400167, + "bugs": 0.033134782060803114 + }, + "validate_mask": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "_validate_class_id": { + "h1": 5, + "h2": 9, + "N1": 5, + "N2": 9, + "vocabulary": 14, + "length": 14, + "calculated_length": 40.13896548741762, + "volume": 53.30296890880645, + "difficulty": 2.5, + "effort": 133.25742227201613, + "time": 7.403190126223119, + "bugs": 0.017767656302935482 + }, + "validate_class_id": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "_validate_confidence": { + "h1": 5, + "h2": 9, + "N1": 5, + "N2": 9, + "vocabulary": 14, + "length": 14, + "calculated_length": 40.13896548741762, + "volume": 53.30296890880645, + "difficulty": 2.5, + "effort": 133.25742227201613, + "time": 7.403190126223119, + "bugs": 0.017767656302935482 + }, + "validate_confidence": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "_validate_keypoint_confidence": { + "h1": 6, + "h2": 14, + "N1": 8, + "N2": 15, + "vocabulary": 20, + "length": 23, + "calculated_length": 68.81274391313339, + "volume": 99.40434618240934, + "difficulty": 3.2142857142857144, + "effort": 319.51396987203003, + "time": 17.75077610400167, + "bugs": 0.033134782060803114 + }, + "validate_key_point_confidence": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "validate_keypoint_confidence": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "_validate_tracker_id": { + "h1": 5, + "h2": 9, + "N1": 5, + "N2": 9, + "vocabulary": 14, + "length": 14, + "calculated_length": 40.13896548741762, + "volume": 53.30296890880645, + "difficulty": 2.5, + "effort": 133.25742227201613, + "time": 7.403190126223119, + "bugs": 0.017767656302935482 + }, + "validate_tracker_id": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "_validate_data": { + "h1": 4, + "h2": 10, + "N1": 7, + "N2": 14, + "vocabulary": 14, + "length": 21, + "calculated_length": 41.219280948873624, + "volume": 79.95445336320968, + "difficulty": 2.8, + "effort": 223.8724694169871, + "time": 12.437359412054839, + "bugs": 0.026651484454403226 + }, + "validate_data": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "_validate_xy": { + "h1": 4, + "h2": 8, + "N1": 4, + "N2": 8, + "vocabulary": 12, + "length": 12, + "calculated_length": 32.0, + "volume": 43.01955000865388, + "difficulty": 2.0, + "effort": 86.03910001730776, + "time": 4.779950000961542, + "bugs": 0.014339850002884626 + }, + "validate_xy": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "_validate_visible": { + "h1": 6, + "h2": 14, + "N1": 8, + "N2": 15, + "vocabulary": 20, + "length": 23, + "calculated_length": 68.81274391313339, + "volume": 99.40434618240934, + "difficulty": 3.2142857142857144, + "effort": 319.51396987203003, + "time": 17.75077610400167, + "bugs": 0.033134782060803114 + }, + "_validate_detections_fields": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "validate_detections_fields": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "_validate_keypoints_fields": { + "h1": 2, + "h2": 5, + "N1": 3, + "N2": 6, + "vocabulary": 7, + "length": 9, + "calculated_length": 13.60964047443681, + "volume": 25.26619429851844, + "difficulty": 1.2, + "effort": 30.319433158222125, + "time": 1.6844129532345624, + "bugs": 0.008422064766172813 + }, + "validate_key_points_fields": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "validate_keypoints_fields": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "_validate_resolution": { + "h1": 5, + "h2": 13, + "N1": 8, + "N2": 14, + "vocabulary": 18, + "length": 22, + "calculated_length": 59.715356810271004, + "volume": 91.73835003173087, + "difficulty": 2.6923076923076925, + "effort": 246.98786547004468, + "time": 13.721548081669148, + "bugs": 0.030579450010576957 + }, + "validate_resolution": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + } + } + } +} \ No newline at end of file diff --git a/metrics-after-radon/hal_por_arquivo_depois.csv b/metrics-after-radon/hal_por_arquivo_depois.csv new file mode 100644 index 0000000000..131a14dcc9 --- /dev/null +++ b/metrics-after-radon/hal_por_arquivo_depois.csv @@ -0,0 +1,81 @@ +arquivo,escopo,nome,h1,h2,N1,N2,vocabulary,length,calculated_length,volume,difficulty,effort,time,bugs +src/supervision/config.py,arquivo,,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/annotators/base.py,arquivo,,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/annotators/__init__.py,arquivo,,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/assets/list.py,arquivo,,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/assets/__init__.py,arquivo,,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/classification/__init__.py,arquivo,,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/dataset/__init__.py,arquivo,,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/dataset/formats/__init__.py,arquivo,,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/__init__.py,arquivo,,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/tools/__init__.py,arquivo,,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/utils/__init__.py,arquivo,,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/draw/base.py,arquivo,,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/draw/__init__.py,arquivo,,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/geometry/__init__.py,arquivo,,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/keypoint/annotators.py,arquivo,,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/keypoint/core.py,arquivo,,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/keypoint/__init__.py,arquivo,,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/key_points/skeletons.py,arquivo,,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/key_points/__init__.py,arquivo,,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/core.py,arquivo,,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/__init__.py,arquivo,,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/utils/utils.py,arquivo,,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/utils/__init__.py,arquivo,,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/tracker/__init__.py,arquivo,,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/tracker/byte_tracker/__init__.py,arquivo,,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/utils/conversion.py,arquivo,,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/utils/__init__.py,arquivo,,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/__init__.py,arquivo,,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/tracker/byte_tracker/utils.py,arquivo,,3,5,3,5,8,8,16.3645,24.0,1.5,36.0,2.0,0.008 +src/supervision/utils/logger.py,arquivo,,3,5,3,5,8,8,16.3645,24.0,1.5,36.0,2.0,0.008 +src/supervision/assets/downloader.py,arquivo,,3,7,5,7,10,12,24.4064,39.8631,1.5,59.7947,3.3219,0.0133 +src/supervision/utils/iterables.py,arquivo,,4,8,4,8,12,12,32.0,43.0196,2.0,86.0391,4.78,0.0143 +src/supervision/geometry/utils.py,arquivo,,4,10,6,11,14,17,41.2193,64.725,2.2,142.3951,7.9108,0.0216 +src/supervision/utils/file.py,arquivo,,6,10,6,11,16,17,48.7291,68.0,3.3,224.4,12.4667,0.0227 +src/supervision/utils/internal.py,arquivo,,6,15,9,15,21,24,74.1131,105.4156,3.0,316.2469,17.5693,0.0351 +src/supervision/detection/tools/json_sink.py,arquivo,,5,15,9,17,20,26,70.213,112.3701,2.8333,318.382,17.6879,0.0375 +src/supervision/utils/notebook.py,arquivo,,6,15,8,16,21,24,74.1131,105.4156,3.2,337.33,18.7406,0.0351 +src/supervision/detection/tools/transformers.py,arquivo,,4,15,10,20,19,30,66.6034,127.4378,2.6667,339.8342,18.8797,0.0425 +src/supervision/classification/core.py,arquivo,,7,22,13,22,29,35,117.759,170.0293,3.5,595.1027,33.0613,0.0567 +src/supervision/detection/tools/smoother.py,arquivo,,6,19,12,24,25,36,96.2204,167.1788,3.7895,633.5197,35.1955,0.0557 +src/supervision/dataset/utils.py,arquivo,,8,21,11,22,29,33,116.2387,160.3134,4.1905,671.7894,37.3216,0.0534 +src/supervision/detection/tools/csv_sink.py,arquivo,,7,23,15,27,30,42,123.6934,206.0894,4.1087,846.7586,47.0421,0.0687 +src/supervision/detection/utils/vlms.py,arquivo,,7,20,16,31,27,47,106.09,223.4797,5.425,1212.3774,67.3543,0.0745 +src/supervision/detection/tools/polygon_zone.py,arquivo,,8,23,16,31,31,47,128.0419,232.8472,5.3913,1255.3503,69.7417,0.0776 +src/supervision/tracker/byte_tracker/matching.py,arquivo,,9,30,17,34,39,51,175.736,269.5555,5.1,1374.7331,76.3741,0.0899 +src/supervision/dataset/formats/pascal_voc.py,arquivo,,8,33,20,38,41,58,190.465,310.738,4.6061,1431.2781,79.5155,0.1036 +src/supervision/geometry/core.py,arquivo,,5,40,28,56,45,84,224.4868,461.3157,3.5,1614.6048,89.7003,0.1538 +src/supervision/tracker/byte_tracker/kalman_filter.py,arquivo,,4,58,41,82,62,123,347.7629,732.3661,2.8276,2070.8284,115.046,0.2441 +src/supervision/detection/utils/polygons.py,arquivo,,10,26,20,40,36,60,155.4307,310.1955,7.6923,2386.1192,132.5622,0.1034 +src/supervision/tracker/byte_tracker/single_object_track.py,arquivo,,10,53,32,64,63,96,336.7991,573.8189,6.0377,3464.5668,192.4759,0.1913 +src/supervision/dataset/core.py,arquivo,,9,65,43,81,74,124,419.9832,769.9722,5.6077,4317.7673,239.876,0.2567 +src/supervision/dataset/formats/coco.py,arquivo,,15,51,31,57,66,88,347.8971,531.9067,8.3824,4458.6295,247.7016,0.1773 +src/supervision/tracker/byte_tracker/core.py,arquivo,,13,62,41,78,75,119,417.2659,741.2294,8.1774,6061.3438,336.7413,0.2471 +src/supervision/utils/video.py,arquivo,,13,60,45,80,73,125,402.5192,773.7281,8.6667,6705.6433,372.5357,0.2579 +src/supervision/dataset/formats/yolo.py,arquivo,,14,71,48,87,85,135,489.935,865.2678,8.5775,7421.8039,412.3224,0.2884 +src/supervision/validators/__init__.py,arquivo,,11,113,65,122,124,187,808.734,1300.4347,5.9381,7722.0504,429.0028,0.4335 +src/supervision/metrics/utils/object_size.py,arquivo,,12,77,53,106,89,159,525.5621,1029.6416,8.2597,8504.5723,472.4762,0.3432 +src/supervision/detection/utils/boxes.py,arquivo,,12,77,60,105,89,165,525.5621,1068.496,8.1818,8742.2401,485.68,0.3562 +src/supervision/draw/color.py,arquivo,,13,78,60,110,91,170,538.3671,1106.3251,9.1667,10141.3133,563.4063,0.3688 +src/supervision/detection/utils/masks.py,arquivo,,14,90,61,117,104,178,637.5697,1192.6783,9.1,10853.3723,602.9651,0.3976 +src/supervision/detection/utils/internal.py,arquivo,,16,99,64,119,115,183,720.3063,1252.7247,9.6162,12046.403,669.2446,0.4176 +src/supervision/draw/utils.py,arquivo,,13,57,57,109,70,166,380.5804,1017.461,12.4298,12646.8615,702.6034,0.3392 +src/supervision/detection/tools/inference_slicer.py,arquivo,,15,110,70,134,125,204,804.5529,1421.02,9.1364,12982.9554,721.2753,0.4737 +src/supervision/detection/utils/converters.py,arquivo,,17,116,77,148,133,225,865.0127,1587.4385,10.8448,17215.4974,956.4165,0.5291 +src/supervision/utils/image.py,arquivo,,16,130,93,177,146,270,976.9078,1941.2526,10.8923,21144.721,1174.7067,0.6471 +src/supervision/metrics/recall.py,arquivo,,16,135,95,184,151,279,1019.3701,2019.5149,10.9037,22020.1923,1223.344,0.6732 +src/supervision/metrics/detection.py,arquivo,,18,147,97,182,165,279,1133.4105,2055.2039,11.1429,22900.8434,1272.2691,0.6851 +src/supervision/key_points/core.py,arquivo,,14,158,115,214,172,329,1207.3003,2443.2411,9.481,23164.3998,1286.9111,0.8144 +src/supervision/metrics/mean_average_recall.py,arquivo,,17,134,96,186,151,282,1016.3428,2041.2301,11.7985,24083.469,1337.9705,0.6804 +src/supervision/metrics/f1_score.py,arquivo,,16,149,106,206,165,312,1139.6561,2298.2925,11.0604,25420.0409,1412.2245,0.7661 +src/supervision/detection/vlm.py,arquivo,,17,151,108,201,168,309,1162.486,2284.2261,11.3146,25845.0349,1435.8353,0.7614 +src/supervision/key_points/annotators.py,arquivo,,18,121,97,180,139,277,912.2411,1971.9467,13.3884,26401.2696,1466.7372,0.6573 +src/supervision/metrics/precision.py,arquivo,,16,150,112,218,166,330,1148.3228,2433.763,11.6267,28296.5513,1572.0306,0.8113 +src/supervision/annotators/utils.py,arquivo,,18,135,110,213,153,323,1030.4288,2344.1363,14.2,33286.7351,1849.2631,0.7814 +src/supervision/detection/line_zone.py,arquivo,,19,146,117,221,165,338,1130.425,2489.8169,14.3801,35803.9082,1989.106,0.8299 +src/supervision/detection/core.py,arquivo,,18,262,177,342,280,519,2179.8155,4219.0979,11.7481,49566.3484,2753.686,1.4064 +src/supervision/detection/compact_mask.py,arquivo,,19,207,169,324,226,493,1673.2624,3855.3482,14.8696,57327.3519,3184.8529,1.2851 +src/supervision/detection/utils/iou_and_nms.py,arquivo,,20,337,218,417,357,635,2916.0944,5384.6605,12.3739,66629.1815,3701.6212,1.7949 +src/supervision/metrics/mean_average_precision.py,arquivo,,21,314,244,445,335,689,2696.7496,5779.3439,14.8806,85999.9504,4777.775,1.9264 +src/supervision/annotators/core.py,arquivo,,22,385,434,825,407,1259,3404.7626,10914.1262,23.5714,257261.546,14292.3081,3.638 diff --git a/metrics-after-radon/hal_por_funcao_depois.csv b/metrics-after-radon/hal_por_funcao_depois.csv new file mode 100644 index 0000000000..f504404c56 --- /dev/null +++ b/metrics-after-radon/hal_por_funcao_depois.csv @@ -0,0 +1,762 @@ +arquivo,escopo,nome,h1,h2,N1,N2,vocabulary,length,calculated_length,volume,difficulty,effort,time,bugs +src/supervision/annotators/base.py,funcao,annotate,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/annotators/core.py,funcao,_normalize_color_input,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/annotators/core.py,funcao,__init__,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/annotators/core.py,funcao,color,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/annotators/core.py,funcao,color_lookup,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/annotators/core.py,funcao,text_color,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/annotators/core.py,funcao,text_padding,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/annotators/core.py,funcao,text_anchor,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/annotators/core.py,funcao,text_offset,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/annotators/core.py,funcao,border_radius,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/annotators/core.py,funcao,smart_position,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/annotators/core.py,funcao,max_line_length,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/annotators/core.py,funcao,_adjust_labels_in_frame,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/annotators/core.py,funcao,annotate,7,25,19,35,32,54,135.7479,270.0,4.9,1323.0,73.5,0.09 +src/supervision/annotators/core.py,funcao,_paint_masks_by_area,4,12,11,22,16,33,51.0196,132.0,3.6667,484.0,26.8889,0.044 +src/supervision/annotators/core.py,funcao,_get_label_properties,5,20,14,27,25,41,98.0482,190.3981,3.375,642.5936,35.6996,0.0635 +src/supervision/annotators/core.py,funcao,_draw_labels,6,25,23,45,31,68,131.6062,336.8853,5.4,1819.1809,101.0656,0.1123 +src/supervision/annotators/core.py,funcao,draw_rounded_rectangle,4,8,17,32,12,49,32.0,175.6632,8.0,1405.3053,78.0725,0.0586 +src/supervision/annotators/core.py,funcao,_load_font,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/annotators/core.py,funcao,_load_icon,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/annotators/core.py,funcao,calculate_border_coordinates,5,30,47,94,35,141,158.8164,723.2289,7.8333,5665.2931,314.7385,0.2411 +src/supervision/annotators/core.py,funcao,_validate_custom_values,4,10,7,11,14,18,41.2193,68.5324,2.2,150.7713,8.3762,0.0228 +src/supervision/annotators/core.py,funcao,validate_custom_values,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/annotators/core.py,funcao,calculate_crop_coordinates,5,30,47,94,35,141,158.8164,723.2289,7.8333,5665.2931,314.7385,0.2411 +src/supervision/annotators/core.py,funcao,_use_obb,4,13,9,17,17,26,56.1057,106.274,2.6154,277.9475,15.4415,0.0354 +src/supervision/annotators/core.py,funcao,_use_mask,4,13,9,17,17,26,56.1057,106.274,2.6154,277.9475,15.4415,0.0354 +src/supervision/annotators/core.py,funcao,_mask_from_xyxy,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/annotators/core.py,funcao,_mask_from_obb,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/annotators/core.py,funcao,_mask_from_mask,2,3,2,4,5,6,6.7549,13.9316,1.3333,18.5754,1.032,0.0046 +src/supervision/annotators/utils.py,funcao,list,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/annotators/utils.py,funcao,resolve_color_idx,4,11,7,14,15,21,46.0537,82.0447,2.5455,208.8411,11.6023,0.0273 +src/supervision/annotators/utils.py,funcao,resolve_text_background_xyxy,5,30,47,94,35,141,158.8164,723.2289,7.8333,5665.2931,314.7385,0.2411 +src/supervision/annotators/utils.py,funcao,get_color_by_index,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/annotators/utils.py,funcao,resolve_color,2,7,3,7,9,10,21.6515,31.6993,1.0,31.6993,1.7611,0.0106 +src/supervision/annotators/utils.py,funcao,wrap_text,5,13,8,14,18,22,59.7154,91.7384,2.6923,246.9879,13.7215,0.0306 +src/supervision/annotators/utils.py,funcao,_validate_labels,3,6,3,6,9,9,20.2647,28.5293,1.5,42.794,2.3774,0.0095 +src/supervision/annotators/utils.py,funcao,validate_labels,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/annotators/utils.py,funcao,get_labels_text,2,5,3,6,7,9,13.6096,25.2662,1.2,30.3194,1.6844,0.0084 +src/supervision/annotators/utils.py,funcao,snap_boxes,6,23,14,26,29,40,119.5517,194.3192,3.3913,658.9957,36.6109,0.0648 +src/supervision/annotators/utils.py,funcao,__init__,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/annotators/utils.py,funcao,put,7,12,9,17,19,26,62.671,110.4461,4.9583,547.6287,30.4238,0.0368 +src/supervision/annotators/utils.py,funcao,get,1,1,1,2,2,3,0,3.0,1.0,3.0,0.1667,0.001 +src/supervision/annotators/utils.py,funcao,hex_to_rgba,3,6,3,6,9,9,20.2647,28.5293,1.5,42.794,2.3774,0.0095 +src/supervision/annotators/utils.py,funcao,rgba_to_hex,4,8,5,8,12,13,32.0,46.6045,2.0,93.209,5.1783,0.0155 +src/supervision/annotators/utils.py,funcao,is_valid_hex,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/annotators/utils.py,funcao,calculate_dynamic_kernel_size,2,6,3,6,8,9,17.5098,27.0,1.0,27.0,1.5,0.009 +src/supervision/annotators/utils.py,funcao,calculate_dynamic_pixel_size,2,6,3,6,8,9,17.5098,27.0,1.0,27.0,1.5,0.009 +src/supervision/assets/downloader.py,funcao,is_md5_hash_matching,2,3,2,3,5,5,6.7549,11.6096,1.0,11.6096,0.645,0.0039 +src/supervision/assets/downloader.py,funcao,download_assets,2,4,3,4,6,7,10.0,18.0947,1.0,18.0947,1.0053,0.006 +src/supervision/assets/list.py,funcao,__new__,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/assets/list.py,funcao,list,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/classification/core.py,funcao,_validate_class_ids,3,5,3,5,8,8,16.3645,24.0,1.5,36.0,2.0,0.008 +src/supervision/classification/core.py,funcao,_validate_confidence,4,7,4,7,11,11,27.6515,38.0537,2.0,76.1075,4.2282,0.0127 +src/supervision/classification/core.py,funcao,__post_init__,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/classification/core.py,funcao,__len__,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/classification/core.py,funcao,from_clip,2,3,2,3,5,5,6.7549,11.6096,1.0,11.6096,0.645,0.0039 +src/supervision/classification/core.py,funcao,from_ultralytics,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/classification/core.py,funcao,from_timm,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/classification/core.py,funcao,get_top_k,2,3,2,3,5,5,6.7549,11.6096,1.0,11.6096,0.645,0.0039 +src/supervision/dataset/core.py,funcao,__len__,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/dataset/core.py,funcao,split,1,4,2,4,5,6,8.0,13.9316,0.5,6.9658,0.387,0.0046 +src/supervision/dataset/core.py,funcao,__init__,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/dataset/core.py,funcao,_get_image,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/dataset/core.py,funcao,__getitem__,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/dataset/core.py,funcao,__iter__,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/dataset/core.py,funcao,__eq__,3,7,6,10,10,16,24.4064,53.1508,2.1429,113.8947,6.3275,0.0177 +src/supervision/dataset/core.py,funcao,merge,6,15,9,16,21,25,74.1131,109.8079,3.2,351.3854,19.5214,0.0366 +src/supervision/dataset/core.py,funcao,as_pascal_voc,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/dataset/core.py,funcao,from_pascal_voc,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/dataset/core.py,funcao,from_yolo,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/dataset/core.py,funcao,as_yolo,4,14,8,17,18,25,61.303,104.2481,2.4286,253.174,14.0652,0.0347 +src/supervision/dataset/core.py,funcao,from_coco,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/dataset/core.py,funcao,as_coco,1,3,2,4,4,6,4.7549,12.0,0.6667,8.0,0.4444,0.004 +src/supervision/dataset/core.py,funcao,as_folder_structure,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/dataset/core.py,funcao,from_folder_structure,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/dataset/utils.py,funcao,mask_to_rle,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/dataset/utils.py,funcao,rle_to_mask,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/dataset/utils.py,funcao,approximate_mask_with_polygons,2,7,4,8,9,12,21.6515,38.0391,1.1429,43.4733,2.4152,0.0127 +src/supervision/dataset/utils.py,funcao,merge_class_lists,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/dataset/utils.py,funcao,build_class_index_mapping,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/dataset/utils.py,funcao,map_detections_class_id,3,6,3,6,9,9,20.2647,28.5293,1.5,42.794,2.3774,0.0095 +src/supervision/dataset/utils.py,funcao,save_dataset_images,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/dataset/utils.py,funcao,train_test_split,2,4,2,4,6,6,10.0,15.5098,1.0,15.5098,0.8617,0.0052 +src/supervision/dataset/formats/coco.py,funcao,coco_categories_to_classes,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/dataset/formats/coco.py,funcao,build_coco_class_index_mapping,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/dataset/formats/coco.py,funcao,classes_to_coco_categories,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/dataset/formats/coco.py,funcao,group_coco_annotations_by_image_id,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/dataset/formats/coco.py,funcao,coco_annotations_to_masks,4,7,5,7,11,12,27.6515,41.5132,2.0,83.0264,4.6126,0.0138 +src/supervision/dataset/formats/coco.py,funcao,coco_annotations_to_detections,2,3,2,3,5,5,6.7549,11.6096,1.0,11.6096,0.645,0.0039 +src/supervision/dataset/formats/coco.py,funcao,_build_coco_segmentation_from_mask,2,4,2,4,6,6,10.0,15.5098,1.0,15.5098,0.8617,0.0052 +src/supervision/dataset/formats/coco.py,funcao,_build_coco_segmentation_from_raw_data,4,8,5,9,12,14,32.0,50.1895,2.25,112.9263,6.2737,0.0167 +src/supervision/dataset/formats/coco.py,funcao,detections_to_coco_annotations,5,12,7,14,17,21,54.6292,85.8367,2.9167,250.3571,13.9087,0.0286 +src/supervision/dataset/formats/coco.py,funcao,get_coco_class_index_mapping,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/dataset/formats/coco.py,funcao,load_coco_annotations,4,7,4,8,11,12,27.6515,41.5132,2.2857,94.8873,5.2715,0.0138 +src/supervision/dataset/formats/coco.py,funcao,_with_seg_mask,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/dataset/formats/coco.py,funcao,save_coco_annotations,3,6,4,8,9,12,20.2647,38.0391,2.0,76.0782,4.2266,0.0127 +src/supervision/dataset/formats/pascal_voc.py,funcao,object_to_pascal_voc,2,4,3,6,6,9,10.0,23.2647,1.5,34.897,1.9387,0.0078 +src/supervision/dataset/formats/pascal_voc.py,funcao,detections_to_pascal_voc,3,4,3,5,7,8,12.7549,22.4588,1.875,42.1103,2.3395,0.0075 +src/supervision/dataset/formats/pascal_voc.py,funcao,load_pascal_voc_annotations,2,3,2,3,5,5,6.7549,11.6096,1.0,11.6096,0.645,0.0039 +src/supervision/dataset/formats/pascal_voc.py,funcao,detections_from_xml_obj,5,11,6,12,16,18,49.6634,72.0,2.7273,196.3636,10.9091,0.024 +src/supervision/dataset/formats/pascal_voc.py,funcao,_with_poly_mask,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/dataset/formats/pascal_voc.py,funcao,parse_polygon_points,2,4,2,4,6,6,10.0,15.5098,1.0,15.5098,0.8617,0.0052 +src/supervision/dataset/formats/pascal_voc.py,funcao,_get_required_text,2,5,3,6,7,9,13.6096,25.2662,1.2,30.3194,1.6844,0.0084 +src/supervision/dataset/formats/yolo.py,funcao,_parse_box,3,13,8,16,16,24,52.8606,96.0,1.8462,177.2308,9.8462,0.032 +src/supervision/dataset/formats/yolo.py,funcao,_box_to_polygon,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/dataset/formats/yolo.py,funcao,_parse_polygon,1,1,1,1,2,2,0,2.0,0.5,1.0,0.0556,0.0007 +src/supervision/dataset/formats/yolo.py,funcao,_polygons_to_masks,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/dataset/formats/yolo.py,funcao,_with_seg_mask,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/dataset/formats/yolo.py,funcao,_extract_class_names,2,5,4,5,7,9,13.6096,25.2662,1.0,25.2662,1.4037,0.0084 +src/supervision/dataset/formats/yolo.py,funcao,_image_name_to_annotation_name,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/dataset/formats/yolo.py,funcao,yolo_annotations_to_detections,5,13,8,14,18,22,59.7154,91.7384,2.6923,246.9879,13.7215,0.0306 +src/supervision/dataset/formats/yolo.py,funcao,load_yolo_annotations,4,8,6,10,12,16,32.0,57.3594,2.5,143.3985,7.9666,0.0191 +src/supervision/dataset/formats/yolo.py,funcao,object_to_yolo,5,13,10,19,18,29,59.7154,120.9278,3.6538,441.8517,24.5473,0.0403 +src/supervision/dataset/formats/yolo.py,funcao,detections_to_yolo_annotations,7,14,9,18,21,27,72.9545,118.5926,4.5,533.6666,29.6481,0.0395 +src/supervision/dataset/formats/yolo.py,funcao,save_yolo_annotations,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/dataset/formats/yolo.py,funcao,save_data_yaml,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/compact_mask.py,funcao,_rle_area,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/compact_mask.py,funcao,_rle_split_cols,8,19,21,40,27,61,104.7106,290.0481,8.4211,2442.5106,135.695,0.0967 +src/supervision/detection/compact_mask.py,funcao,_rle_scale_col,6,14,13,24,20,37,68.8127,159.9113,5.1429,822.4012,45.689,0.0533 +src/supervision/detection/compact_mask.py,funcao,_rle_join_cols,8,16,12,20,24,32,88.0,146.7188,5.0,733.594,40.7552,0.0489 +src/supervision/detection/compact_mask.py,funcao,_rle_resize,6,25,16,32,31,48,131.6062,237.8014,3.84,913.1575,50.731,0.0793 +src/supervision/detection/compact_mask.py,funcao,_resize_crop,4,10,5,10,14,15,41.2193,57.1103,2.0,114.2206,6.3456,0.019 +src/supervision/detection/compact_mask.py,funcao,__init__,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/compact_mask.py,funcao,from_dense,5,13,14,28,18,42,59.7154,175.1369,5.3846,943.0446,52.3914,0.0584 +src/supervision/detection/compact_mask.py,funcao,to_dense,1,4,2,4,5,6,8.0,13.9316,0.5,6.9658,0.387,0.0046 +src/supervision/detection/compact_mask.py,funcao,crop,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/compact_mask.py,funcao,__len__,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/compact_mask.py,funcao,__iter__,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/compact_mask.py,funcao,shape,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/compact_mask.py,funcao,offsets,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/compact_mask.py,funcao,bbox_xyxy,3,9,5,10,12,15,33.2842,53.7744,1.6667,89.6241,4.9791,0.0179 +src/supervision/detection/compact_mask.py,funcao,dtype,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/compact_mask.py,funcao,area,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/compact_mask.py,funcao,sum,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/detection/compact_mask.py,funcao,__getitem__,3,10,5,10,13,15,37.9742,55.5066,1.5,83.2599,4.6255,0.0185 +src/supervision/detection/compact_mask.py,funcao,__array__,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/detection/compact_mask.py,funcao,__eq__,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/compact_mask.py,funcao,merge,2,3,2,3,5,5,6.7549,11.6096,1.0,11.6096,0.645,0.0039 +src/supervision/detection/compact_mask.py,funcao,repack,5,12,12,21,17,33,54.6292,134.8863,4.375,590.1274,32.7849,0.045 +src/supervision/detection/compact_mask.py,funcao,with_offset,10,37,35,68,47,103,225.9691,572.1227,9.1892,5257.3433,292.0746,0.1907 +src/supervision/detection/compact_mask.py,funcao,resize,8,31,25,50,39,75,177.5801,396.4052,6.4516,2557.4527,142.0807,0.1321 +src/supervision/detection/core.py,funcao,__post_init__,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/core.py,funcao,__len__,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/core.py,funcao,__iter__,1,5,4,8,6,12,11.6096,31.0196,0.8,24.8156,1.3786,0.0103 +src/supervision/detection/core.py,funcao,__eq__,1,1,1,1,2,2,0,2.0,0.5,1.0,0.0556,0.0007 +src/supervision/detection/core.py,funcao,from_yolov5,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/core.py,funcao,from_ultralytics,3,10,8,16,13,24,37.9742,88.8106,2.4,213.1453,11.8414,0.0296 +src/supervision/detection/core.py,funcao,from_yolo_nas,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/detection/core.py,funcao,from_tensorflow,1,4,2,4,5,6,8.0,13.9316,0.5,6.9658,0.387,0.0046 +src/supervision/detection/core.py,funcao,from_deepsparse,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/detection/core.py,funcao,from_mmdetection,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/detection/core.py,funcao,from_transformers,3,11,7,14,14,21,42.8086,79.9545,1.9091,152.6403,8.48,0.0267 +src/supervision/detection/core.py,funcao,from_detectron2,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/core.py,funcao,from_inference,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/detection/core.py,funcao,from_sam,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/detection/core.py,funcao,from_sam3,2,3,2,3,5,5,6.7549,11.6096,1.0,11.6096,0.645,0.0039 +src/supervision/detection/core.py,funcao,from_azure_analyze_image,7,14,10,20,21,30,72.9545,131.7695,5.0,658.8476,36.6026,0.0439 +src/supervision/detection/core.py,funcao,from_paddledet,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/detection/core.py,funcao,from_lmm,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/core.py,funcao,from_vlm,3,16,12,24,19,36,68.7549,152.9254,2.25,344.0821,19.1157,0.051 +src/supervision/detection/core.py,funcao,from_easyocr,3,6,3,6,9,9,20.2647,28.5293,1.5,42.794,2.3774,0.0095 +src/supervision/detection/core.py,funcao,from_ncnn,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/detection/core.py,funcao,empty,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/core.py,funcao,is_empty,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/detection/core.py,funcao,merge,3,8,5,9,11,14,28.7549,48.432,1.6875,81.7291,4.5405,0.0161 +src/supervision/detection/core.py,funcao,get_anchors_coordinates,4,32,23,46,36,69,168.0,356.7248,2.875,1025.5839,56.9769,0.1189 +src/supervision/detection/core.py,funcao,__getitem__,2,7,5,10,9,15,21.6515,47.5489,1.4286,67.927,3.7737,0.0158 +src/supervision/detection/core.py,funcao,__setitem__,1,1,1,1,2,2,0,2.0,0.5,1.0,0.0556,0.0007 +src/supervision/detection/core.py,funcao,area,2,4,2,4,6,6,10.0,15.5098,1.0,15.5098,0.8617,0.0052 +src/supervision/detection/core.py,funcao,box_area,2,6,3,6,8,9,17.5098,27.0,1.0,27.0,1.5,0.009 +src/supervision/detection/core.py,funcao,box_aspect_ratio,2,6,3,6,8,9,17.5098,27.0,1.0,27.0,1.5,0.009 +src/supervision/detection/core.py,funcao,with_nms,4,9,8,13,13,21,36.5293,77.7092,2.8889,224.4933,12.4719,0.0259 +src/supervision/detection/core.py,funcao,with_nmm,4,9,8,13,13,21,36.5293,77.7092,2.8889,224.4933,12.4719,0.0259 +src/supervision/detection/core.py,funcao,_merge_obb_corners,3,7,5,8,10,13,24.4064,43.1851,1.7143,74.0315,4.1129,0.0144 +src/supervision/detection/core.py,funcao,_merge_detection_group,9,22,13,26,31,39,126.6368,193.2137,5.3182,1027.5454,57.0859,0.0644 +src/supervision/detection/core.py,funcao,merge_inner_detection_object_pair,10,36,26,52,46,78,219.3366,430.8378,7.2222,3111.6066,172.867,0.1436 +src/supervision/detection/core.py,funcao,merge_inner_detections_objects,3,6,4,8,9,12,20.2647,38.0391,2.0,76.0782,4.2266,0.0127 +src/supervision/detection/core.py,funcao,merge_inner_detections_objects_without_iou,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/core.py,funcao,_get_sam3_value,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/core.py,funcao,_normalize_sam3_prompt_results,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/core.py,funcao,_normalize_sam3_prompt_result,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/core.py,funcao,_normalize_sam3_prediction,5,9,5,10,14,15,40.139,57.1103,2.7778,158.6398,8.8133,0.019 +src/supervision/detection/core.py,funcao,_build_sam3_mask,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/core.py,funcao,_validate_fields_both_defined_or_none,2,5,3,6,7,9,13.6096,25.2662,1.2,30.3194,1.6844,0.0084 +src/supervision/detection/core.py,funcao,validate_fields_both_defined_or_none,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/line_zone.py,funcao,_multiclass_config_property,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/line_zone.py,funcao,__init__,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/detection/line_zone.py,funcao,in_count,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/line_zone.py,funcao,out_count,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/line_zone.py,funcao,in_count_per_class,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/line_zone.py,funcao,out_count_per_class,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/line_zone.py,funcao,trigger,10,17,12,23,27,35,102.7061,166.4211,6.7647,1125.7895,62.5439,0.0555 +src/supervision/detection/line_zone.py,funcao,_calculate_region_of_interest_limits,5,9,10,19,14,29,40.139,110.4133,5.2778,582.7368,32.3743,0.0368 +src/supervision/detection/line_zone.py,funcao,_compute_anchor_sides,5,10,7,13,15,20,44.8289,78.1378,3.25,253.9479,14.1082,0.026 +src/supervision/detection/line_zone.py,funcao,_update_class_id_to_name,3,5,5,10,8,15,16.3645,45.0,3.0,135.0,7.5,0.015 +src/supervision/detection/line_zone.py,funcao,annotate,7,32,28,54,39,82,179.6515,433.403,5.9062,2559.7864,142.2104,0.1445 +src/supervision/detection/line_zone.py,funcao,_get_line_angle,5,10,8,16,15,24,44.8289,93.7654,4.0,375.0615,20.8367,0.0313 +src/supervision/detection/line_zone.py,funcao,_calculate_anchor_in_frame,5,30,20,40,35,60,158.8164,307.757,3.3333,1025.8566,56.992,0.1026 +src/supervision/detection/line_zone.py,funcao,_draw_basic_label,3,5,4,8,8,12,16.3645,36.0,2.4,86.4,4.8,0.012 +src/supervision/detection/line_zone.py,funcao,_draw_oriented_label,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/detection/line_zone.py,funcao,_make_label_image,6,13,10,17,19,27,63.6155,114.694,3.9231,449.9536,24.9974,0.0382 +src/supervision/detection/vlm.py,funcao,list,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/vlm.py,funcao,from_value,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/vlm.py,funcao,_validate_vlm_parameters,2,4,3,5,6,8,10.0,20.6797,1.25,25.8496,1.4361,0.0069 +src/supervision/detection/vlm.py,funcao,validate_vlm_parameters,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/vlm.py,funcao,from_paligemma,6,10,6,12,16,18,48.7291,72.0,3.6,259.2,14.4,0.024 +src/supervision/detection/vlm.py,funcao,recover_truncated_qwen_2_5_vl_response,3,11,12,20,14,32,42.8086,121.8354,2.7273,332.2782,18.4599,0.0406 +src/supervision/detection/vlm.py,funcao,from_qwen_2_5_vl,12,23,18,33,35,51,147.0615,261.5934,8.6087,2251.9783,125.1099,0.0872 +src/supervision/detection/vlm.py,funcao,from_qwen_3_vl,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/vlm.py,funcao,from_deepseek_vl_2,5,16,11,22,21,33,75.6096,144.9465,3.4375,498.2535,27.6808,0.0483 +src/supervision/detection/vlm.py,funcao,from_florence_2,7,18,14,26,25,40,94.7101,185.7542,5.0556,939.0909,52.1717,0.0619 +src/supervision/detection/vlm.py,funcao,_extract_json_from_backticks,2,4,2,4,6,6,10.0,15.5098,1.0,15.5098,0.8617,0.0052 +src/supervision/detection/vlm.py,funcao,_build_empty_gemini_2_5_result,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/vlm.py,funcao,_parse_gemini_2_5_item,5,11,7,14,16,21,49.6634,84.0,3.1818,267.2727,14.8485,0.028 +src/supervision/detection/vlm.py,funcao,_collect_gemini_2_5_items,1,4,3,6,5,9,8.0,20.8974,0.75,15.673,0.8707,0.007 +src/supervision/detection/vlm.py,funcao,_filter_gemini_2_5_results,2,5,3,6,7,9,13.6096,25.2662,1.2,30.3194,1.6844,0.0084 +src/supervision/detection/vlm.py,funcao,_build_gemini_2_5_class_id,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/vlm.py,funcao,_decode_mask_for_item,5,14,9,16,19,25,64.9126,106.1982,2.8571,303.4234,16.8569,0.0354 +src/supervision/detection/vlm.py,funcao,from_google_gemini_2_0,7,13,8,16,20,24,67.7572,103.7263,4.3077,446.8209,24.8234,0.0346 +src/supervision/detection/vlm.py,funcao,from_google_gemini_2_5,3,4,3,5,7,8,12.7549,22.4588,1.875,42.1103,2.3395,0.0075 +src/supervision/detection/vlm.py,funcao,from_moondream,6,14,9,16,20,25,68.8127,108.0482,3.4286,370.451,20.5806,0.036 +src/supervision/detection/tools/csv_sink.py,funcao,writerow,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/tools/csv_sink.py,funcao,__init__,1,3,2,4,4,6,4.7549,12.0,0.6667,8.0,0.4444,0.004 +src/supervision/detection/tools/csv_sink.py,funcao,__enter__,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/tools/csv_sink.py,funcao,__exit__,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/tools/csv_sink.py,funcao,open,2,3,2,3,5,5,6.7549,11.6096,1.0,11.6096,0.645,0.0039 +src/supervision/detection/tools/csv_sink.py,funcao,close,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/tools/csv_sink.py,funcao,_slice_value,2,6,3,6,8,9,17.5098,27.0,1.0,27.0,1.5,0.009 +src/supervision/detection/tools/csv_sink.py,funcao,parse_detection_data,1,4,3,6,5,9,8.0,20.8974,0.75,15.673,0.8707,0.007 +src/supervision/detection/tools/csv_sink.py,funcao,append,2,3,3,4,5,7,6.7549,16.2535,1.3333,21.6713,1.204,0.0054 +src/supervision/detection/tools/csv_sink.py,funcao,parse_field_names,2,4,2,4,6,6,10.0,15.5098,1.0,15.5098,0.8617,0.0052 +src/supervision/detection/tools/inference_slicer.py,funcao,move_detections,3,5,3,6,8,9,16.3645,27.0,1.8,48.6,2.7,0.009 +src/supervision/detection/tools/inference_slicer.py,funcao,__init__,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/detection/tools/inference_slicer.py,funcao,callback,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/tools/inference_slicer.py,funcao,slice_wh,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/tools/inference_slicer.py,funcao,overlap_wh,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/tools/inference_slicer.py,funcao,iou_threshold,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/tools/inference_slicer.py,funcao,overlap_metric,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/tools/inference_slicer.py,funcao,overlap_filter,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/tools/inference_slicer.py,funcao,thread_workers,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/detection/tools/inference_slicer.py,funcao,compact_masks,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/tools/inference_slicer.py,funcao,__call__,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/tools/inference_slicer.py,funcao,_collect_detections,7,13,9,16,20,25,67.7572,108.0482,4.3077,465.4384,25.8577,0.036 +src/supervision/detection/tools/inference_slicer.py,funcao,_probe_remaining_offsets,4,7,4,8,11,12,27.6515,41.5132,2.2857,94.8873,5.2715,0.0138 +src/supervision/detection/tools/inference_slicer.py,funcao,_run_sequential_inference,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/tools/inference_slicer.py,funcao,_run_parallel_inference,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/tools/inference_slicer.py,funcao,_warn_obb_sequential_fallback,3,5,3,5,8,8,16.3645,24.0,1.5,36.0,2.0,0.008 +src/supervision/detection/tools/inference_slicer.py,funcao,_apply_overlap_filter,1,4,3,6,5,9,8.0,20.8974,0.75,15.673,0.8707,0.007 +src/supervision/detection/tools/inference_slicer.py,funcao,_run_callback,7,27,15,31,34,46,148.0334,234.0233,4.0185,940.4269,52.2459,0.078 +src/supervision/detection/tools/inference_slicer.py,funcao,_normalize_slice_wh,4,10,6,12,14,18,41.2193,68.5324,2.4,164.4777,9.1377,0.0228 +src/supervision/detection/tools/inference_slicer.py,funcao,_normalize_overlap_wh,4,10,6,12,14,18,41.2193,68.5324,2.4,164.4777,9.1377,0.0228 +src/supervision/detection/tools/inference_slicer.py,funcao,_generate_offset,8,16,13,22,24,35,88.0,160.4737,5.5,882.6053,49.0336,0.0535 +src/supervision/detection/tools/inference_slicer.py,funcao,_validate_overlap,3,9,6,12,12,18,33.2842,64.5293,2.0,129.0587,7.1699,0.0215 +src/supervision/detection/tools/json_sink.py,funcao,__init__,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/detection/tools/json_sink.py,funcao,__enter__,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/tools/json_sink.py,funcao,__exit__,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/tools/json_sink.py,funcao,open,2,3,2,3,5,5,6.7549,11.6096,1.0,11.6096,0.645,0.0039 +src/supervision/detection/tools/json_sink.py,funcao,_json_default,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/tools/json_sink.py,funcao,write_and_close,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/tools/json_sink.py,funcao,_slice_value,2,6,3,6,8,9,17.5098,27.0,1.0,27.0,1.5,0.009 +src/supervision/detection/tools/json_sink.py,funcao,parse_detection_data,1,4,3,6,5,9,8.0,20.8974,0.75,15.673,0.8707,0.007 +src/supervision/detection/tools/json_sink.py,funcao,append,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/tools/polygon_zone.py,funcao,__init__,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/tools/polygon_zone.py,funcao,trigger,5,15,11,22,20,33,70.213,142.6236,3.6667,522.9533,29.053,0.0475 +src/supervision/detection/tools/polygon_zone.py,funcao,color,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/tools/polygon_zone.py,funcao,thickness,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/tools/polygon_zone.py,funcao,text_color,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/tools/polygon_zone.py,funcao,text_scale,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/tools/polygon_zone.py,funcao,text_thickness,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/tools/polygon_zone.py,funcao,text_padding,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/tools/polygon_zone.py,funcao,display_in_zone_count,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/tools/polygon_zone.py,funcao,opacity,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/tools/polygon_zone.py,funcao,font,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/tools/polygon_zone.py,funcao,center,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/tools/polygon_zone.py,funcao,annotate,2,4,2,4,6,6,10.0,15.5098,1.0,15.5098,0.8617,0.0052 +src/supervision/detection/tools/smoother.py,funcao,__init__,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/detection/tools/smoother.py,funcao,update_with_detections,2,4,3,6,6,9,10.0,23.2647,1.5,34.897,1.9387,0.0078 +src/supervision/detection/tools/smoother.py,funcao,get_track,3,6,4,8,9,12,20.2647,38.0391,2.0,76.0782,4.2266,0.0127 +src/supervision/detection/tools/smoother.py,funcao,get_smoothed_detections,4,7,4,8,11,12,27.6515,41.5132,2.2857,94.8873,5.2715,0.0138 +src/supervision/detection/tools/transformers.py,funcao,process_transformers_detection_result,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/tools/transformers.py,funcao,process_transformers_v4_segmentation_result,2,4,4,8,6,12,10.0,31.0196,2.0,62.0391,3.4466,0.0103 +src/supervision/detection/tools/transformers.py,funcao,process_transformers_v5_segmentation_result,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/detection/tools/transformers.py,funcao,process_transformers_v5_semantic_or_instance_segmentation_result,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/detection/tools/transformers.py,funcao,process_transformers_v4_panoptic_segmentation_result,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/detection/tools/transformers.py,funcao,process_transformers_v5_panoptic_segmentation_result,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/detection/tools/transformers.py,funcao,png_string_to_segmentation_array,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/tools/transformers.py,funcao,append_class_names_to_data,2,3,2,4,5,6,6.7549,13.9316,1.3333,18.5754,1.032,0.0046 +src/supervision/detection/utils/boxes.py,funcao,clip_boxes,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/utils/boxes.py,funcao,pad_boxes,3,6,3,6,9,9,20.2647,28.5293,1.5,42.794,2.3774,0.0095 +src/supervision/detection/utils/boxes.py,funcao,denormalize_boxes,2,7,4,8,9,12,21.6515,38.0391,1.1429,43.4733,2.4152,0.0127 +src/supervision/detection/utils/boxes.py,funcao,move_boxes,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/detection/utils/boxes.py,funcao,move_oriented_boxes,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/detection/utils/boxes.py,funcao,obb_polygon_area,5,16,13,20,21,33,75.6096,144.9465,3.125,452.9577,25.1643,0.0483 +src/supervision/detection/utils/boxes.py,funcao,xyxyxyxy_to_xyxy,3,8,9,12,11,21,28.7549,72.6481,2.25,163.4581,9.081,0.0242 +src/supervision/detection/utils/boxes.py,funcao,scale_boxes,4,12,8,16,16,24,51.0196,96.0,2.6667,256.0,14.2222,0.032 +src/supervision/detection/utils/boxes.py,funcao,spread_out_boxes,10,24,21,39,34,60,143.2584,305.2478,8.125,2480.1381,137.7855,0.1017 +src/supervision/detection/utils/converters.py,funcao,xyxy_to_polygons,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/utils/converters.py,funcao,polygon_to_mask,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/utils/converters.py,funcao,xywh_to_xyxy,1,4,2,4,5,6,8.0,13.9316,0.5,6.9658,0.387,0.0046 +src/supervision/detection/utils/converters.py,funcao,xyxy_to_xywh,1,4,2,4,5,6,8.0,13.9316,0.5,6.9658,0.387,0.0046 +src/supervision/detection/utils/converters.py,funcao,xcycwh_to_xyxy,3,13,8,16,16,24,52.8606,96.0,1.8462,177.2308,9.8462,0.032 +src/supervision/detection/utils/converters.py,funcao,xyxy_to_xcycarh,5,11,8,16,16,24,49.6634,96.0,3.6364,349.0909,19.3939,0.032 +src/supervision/detection/utils/converters.py,funcao,mask_to_xyxy,4,10,8,13,14,21,41.2193,79.9545,2.6,207.8816,11.549,0.0267 +src/supervision/detection/utils/converters.py,funcao,xyxy_to_mask,4,9,7,14,13,21,36.5293,77.7092,3.1111,241.7621,13.4312,0.0259 +src/supervision/detection/utils/converters.py,funcao,mask_to_polygons,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/detection/utils/converters.py,funcao,_base48_decode,11,23,17,32,34,49,142.0957,249.2857,7.6522,1907.5774,105.9765,0.0831 +src/supervision/detection/utils/converters.py,funcao,_base48_encode,6,10,8,15,16,23,48.7291,92.0,4.5,414.0,23.0,0.0307 +src/supervision/detection/utils/converters.py,funcao,_delta_decode,2,4,2,4,6,6,10.0,15.5098,1.0,15.5098,0.8617,0.0052 +src/supervision/detection/utils/converters.py,funcao,_delta_encode,1,4,2,4,5,6,8.0,13.9316,0.5,6.9658,0.387,0.0046 +src/supervision/detection/utils/converters.py,funcao,is_compressed_rle,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/utils/converters.py,funcao,_mask_to_rle_counts,3,5,3,6,8,9,16.3645,27.0,1.8,48.6,2.7,0.009 +src/supervision/detection/utils/converters.py,funcao,_rle_counts_to_mask,5,9,5,10,14,15,40.139,57.1103,2.7778,158.6398,8.8133,0.019 +src/supervision/detection/utils/converters.py,funcao,rle_to_mask,2,4,2,4,6,6,10.0,15.5098,1.0,15.5098,0.8617,0.0052 +src/supervision/detection/utils/converters.py,funcao,mask_to_rle,2,4,2,4,6,6,10.0,15.5098,1.0,15.5098,0.8617,0.0052 +src/supervision/detection/utils/converters.py,funcao,polygon_to_xyxy,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/utils/internal.py,funcao,extract_ultralytics_masks,5,22,13,25,27,38,109.7171,180.6857,2.8409,513.3117,28.5173,0.0602 +src/supervision/detection/utils/internal.py,funcao,_decode_rle_mask,3,8,5,8,11,13,28.7549,44.9726,1.5,67.4589,3.7477,0.015 +src/supervision/detection/utils/internal.py,funcao,process_roboflow_result,11,28,21,41,39,62,172.6597,327.6949,8.0536,2639.1146,146.6175,0.1092 +src/supervision/detection/utils/internal.py,funcao,is_data_equal,2,4,2,4,6,6,10.0,15.5098,1.0,15.5098,0.8617,0.0052 +src/supervision/detection/utils/internal.py,funcao,is_metadata_equal,2,8,4,8,10,12,26.0,39.8631,1.0,39.8631,2.2146,0.0133 +src/supervision/detection/utils/internal.py,funcao,_validate_data_list_keys,2,3,2,3,5,5,6.7549,11.6096,1.0,11.6096,0.645,0.0039 +src/supervision/detection/utils/internal.py,funcao,_validate_data_value_lengths,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/detection/utils/internal.py,funcao,_merge_data_values,2,2,2,4,4,6,4.0,12.0,2.0,24.0,1.3333,0.004 +src/supervision/detection/utils/internal.py,funcao,merge_data,1,1,1,1,2,2,0,2.0,0.5,1.0,0.0556,0.0007 +src/supervision/detection/utils/internal.py,funcao,merge_metadata,6,13,8,13,19,21,63.6155,89.2065,3.0,267.6194,14.8677,0.0297 +src/supervision/detection/utils/internal.py,funcao,get_data_item,2,4,2,4,6,6,10.0,15.5098,1.0,15.5098,0.8617,0.0052 +src/supervision/detection/utils/internal.py,funcao,cross_product,1,4,3,6,5,9,8.0,20.8974,0.75,15.673,0.8707,0.007 +src/supervision/detection/utils/iou_and_nms.py,funcao,list,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/utils/iou_and_nms.py,funcao,from_value,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/utils/iou_and_nms.py,funcao,box_iou,6,27,15,30,33,45,143.8917,226.9977,3.3333,756.6591,42.0366,0.0757 +src/supervision/detection/utils/iou_and_nms.py,funcao,box_iou_batch,6,27,15,30,33,45,143.8917,226.9977,3.3333,756.6591,42.0366,0.0757 +src/supervision/detection/utils/iou_and_nms.py,funcao,_jaccard,4,34,19,38,38,57,180.9737,299.1319,2.2353,668.6477,37.1471,0.0997 +src/supervision/detection/utils/iou_and_nms.py,funcao,box_iou_batch_with_jaccard,2,7,4,8,9,12,21.6515,38.0391,1.1429,43.4733,2.4152,0.0127 +src/supervision/detection/utils/iou_and_nms.py,funcao,_polygon_areas,3,9,6,10,12,16,33.2842,57.3594,1.6667,95.599,5.3111,0.0191 +src/supervision/detection/utils/iou_and_nms.py,funcao,_aabb_envelopes,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/utils/iou_and_nms.py,funcao,_overlapping_envelope_pairs,2,6,3,6,8,9,17.5098,27.0,1.0,27.0,1.5,0.009 +src/supervision/detection/utils/iou_and_nms.py,funcao,_validate_oriented_box_batch,4,12,7,14,16,21,51.0196,84.0,2.3333,196.0,10.8889,0.028 +src/supervision/detection/utils/iou_and_nms.py,funcao,_normalize_oriented_overlap_metric,1,3,2,4,4,6,4.7549,12.0,0.6667,8.0,0.4444,0.004 +src/supervision/detection/utils/iou_and_nms.py,funcao,oriented_box_iou_batch,9,15,12,22,24,34,87.1327,155.8887,6.6,1028.8656,57.1592,0.052 +src/supervision/detection/utils/iou_and_nms.py,funcao,compact_mask_iou_batch,9,37,28,56,46,84,221.2791,463.9792,6.8108,3160.0746,175.5597,0.1547 +src/supervision/detection/utils/iou_and_nms.py,funcao,_mask_iou_batch_split,7,16,9,18,23,27,83.6515,122.1362,3.9375,480.9112,26.7173,0.0407 +src/supervision/detection/utils/iou_and_nms.py,funcao,mask_iou_batch,11,40,29,57,51,86,250.9309,487.8286,7.8375,3823.3565,212.4087,0.1626 +src/supervision/detection/utils/iou_and_nms.py,funcao,mask_non_max_suppression,6,11,10,18,17,28,53.5635,114.449,4.9091,561.8403,31.2134,0.0381 +src/supervision/detection/utils/iou_and_nms.py,funcao,_prepare_predictions_for_nms,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/detection/utils/iou_and_nms.py,funcao,_nms_loop_from_iou_matrix,6,12,7,12,18,19,58.5293,79.2286,3.0,237.6857,13.2048,0.0264 +src/supervision/detection/utils/iou_and_nms.py,funcao,box_non_max_suppression,1,3,2,3,4,5,4.7549,10.0,0.5,5.0,0.2778,0.0033 +src/supervision/detection/utils/iou_and_nms.py,funcao,_group_overlapping_masks,6,9,8,12,15,20,44.0391,78.1378,4.0,312.5512,17.364,0.026 +src/supervision/detection/utils/iou_and_nms.py,funcao,mask_non_max_merge,1,6,3,6,7,9,15.5098,25.2662,0.5,12.6331,0.7018,0.0084 +src/supervision/detection/utils/iou_and_nms.py,funcao,_greedy_nmm_via_iou_callback,5,7,6,9,12,15,31.2611,53.7744,3.2143,172.8464,9.6026,0.0179 +src/supervision/detection/utils/iou_and_nms.py,funcao,_non_max_merge_per_category,1,6,3,6,7,9,15.5098,25.2662,0.5,12.6331,0.7018,0.0084 +src/supervision/detection/utils/iou_and_nms.py,funcao,_group_overlapping_boxes,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/detection/utils/iou_and_nms.py,funcao,box_non_max_merge,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/utils/iou_and_nms.py,funcao,oriented_box_non_max_suppression,6,23,14,27,29,41,119.5517,199.1772,3.5217,701.4502,38.9695,0.0664 +src/supervision/detection/utils/iou_and_nms.py,funcao,_group_overlapping_oriented_boxes,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/utils/iou_and_nms.py,funcao,oriented_box_non_max_merge,6,23,14,27,29,41,119.5517,199.1772,3.5217,701.4502,38.9695,0.0664 +src/supervision/detection/utils/masks.py,funcao,move_masks,6,27,17,32,33,49,143.8917,247.1753,3.5556,878.8456,48.8248,0.0824 +src/supervision/detection/utils/masks.py,funcao,calculate_masks_centroids,3,16,12,24,19,36,68.7549,152.9254,2.25,344.0821,19.1157,0.051 +src/supervision/detection/utils/masks.py,funcao,contains_holes,3,5,3,5,8,8,16.3645,24.0,1.5,36.0,2.0,0.008 +src/supervision/detection/utils/masks.py,funcao,contains_multiple_segments,3,7,4,8,10,12,24.4064,39.8631,1.7143,68.3368,3.7965,0.0133 +src/supervision/detection/utils/masks.py,funcao,resize_masks,3,5,6,12,8,18,16.3645,54.0,3.6,194.4,10.8,0.018 +src/supervision/detection/utils/masks.py,funcao,_resolve_distance_threshold,2,5,3,6,7,9,13.6096,25.2662,1.2,30.3194,1.6844,0.0084 +src/supervision/detection/utils/masks.py,funcao,_filter_labels_by_centroid_distance,4,8,4,8,12,12,32.0,43.0196,2.0,86.0391,4.78,0.0143 +src/supervision/detection/utils/masks.py,funcao,_filter_labels_by_edge_distance,4,8,6,11,12,17,32.0,60.9444,2.75,167.597,9.3109,0.0203 +src/supervision/detection/utils/masks.py,funcao,filter_segments_by_distance,5,9,6,11,14,17,40.139,64.725,3.0556,197.7709,10.9873,0.0216 +src/supervision/detection/utils/polygons.py,funcao,filter_polygons_by_area,5,12,10,20,17,30,54.6292,122.6239,4.1667,510.9329,28.3852,0.0409 +src/supervision/detection/utils/polygons.py,funcao,approximate_polygon,8,14,10,20,22,30,77.303,133.7829,5.7143,764.474,42.4708,0.0446 +src/supervision/detection/utils/vlms.py,funcao,edit_distance,6,18,15,29,24,44,90.5684,201.7384,4.8333,975.0687,54.1705,0.0672 +src/supervision/detection/utils/vlms.py,funcao,fuzzy_match_index,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/draw/color.py,funcao,_validate_color_hex,3,5,3,5,8,8,16.3645,24.0,1.5,36.0,2.0,0.008 +src/supervision/draw/color.py,funcao,from_hex,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/draw/color.py,funcao,from_rgb_tuple,3,9,8,13,12,21,33.2842,75.2842,2.1667,163.1158,9.062,0.0251 +src/supervision/draw/color.py,funcao,from_bgr_tuple,3,9,8,13,12,21,33.2842,75.2842,2.1667,163.1158,9.062,0.0251 +src/supervision/draw/color.py,funcao,from_rgba_tuple,3,11,10,17,14,27,42.8086,102.7986,2.3182,238.3058,13.2392,0.0343 +src/supervision/draw/color.py,funcao,from_bgra_tuple,3,11,10,17,14,27,42.8086,102.7986,2.3182,238.3058,13.2392,0.0343 +src/supervision/draw/color.py,funcao,as_hex,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/draw/color.py,funcao,as_rgb,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/draw/color.py,funcao,as_bgr,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/draw/color.py,funcao,as_rgba,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/draw/color.py,funcao,as_bgra,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/draw/color.py,funcao,WHITE,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/draw/color.py,funcao,BLACK,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/draw/color.py,funcao,GREY,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/draw/color.py,funcao,RED,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/draw/color.py,funcao,GREEN,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/draw/color.py,funcao,BLUE,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/draw/color.py,funcao,YELLOW,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/draw/color.py,funcao,ROBOFLOW,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/draw/color.py,funcao,__hash__,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/draw/color.py,funcao,__repr__,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/draw/color.py,funcao,__eq__,2,9,5,13,11,18,30.5293,62.2698,1.4444,89.9452,4.997,0.0208 +src/supervision/draw/color.py,funcao,DEFAULT,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/draw/color.py,funcao,LEGACY,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/draw/color.py,funcao,from_matplotlib,3,8,5,10,11,15,28.7549,51.8915,1.875,97.2965,5.4054,0.0173 +src/supervision/draw/color.py,funcao,by_idx,2,3,2,4,5,6,6.7549,13.9316,1.3333,18.5754,1.032,0.0046 +src/supervision/draw/color.py,funcao,__len__,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/draw/color.py,funcao,unify_to_bgr,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/draw/utils.py,funcao,draw_line,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/draw/utils.py,funcao,draw_rectangle,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/draw/utils.py,funcao,draw_filled_rectangle,3,2,4,6,5,10,6.7549,23.2193,4.5,104.4868,5.8048,0.0077 +src/supervision/draw/utils.py,funcao,draw_rounded_rectangle,4,8,17,32,12,49,32.0,175.6632,8.0,1405.3053,78.0725,0.0586 +src/supervision/draw/utils.py,funcao,draw_polygon,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/draw/utils.py,funcao,draw_filled_polygon,2,2,2,4,4,6,4.0,12.0,2.0,24.0,1.3333,0.004 +src/supervision/draw/utils.py,funcao,draw_text,4,11,9,18,15,27,46.0537,105.486,3.2727,345.2271,19.1793,0.0352 +src/supervision/draw/utils.py,funcao,draw_image,10,30,23,45,40,68,180.426,361.8911,7.5,2714.1833,150.788,0.1206 +src/supervision/draw/utils.py,funcao,calculate_optimal_text_scale,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/draw/utils.py,funcao,calculate_optimal_line_thickness,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/geometry/core.py,funcao,list,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/geometry/core.py,funcao,as_xy_int_tuple,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/geometry/core.py,funcao,as_xy_float_tuple,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/geometry/core.py,funcao,magnitude,3,7,5,10,10,15,24.4064,49.8289,2.1429,106.7763,5.932,0.0166 +src/supervision/geometry/core.py,funcao,center,2,5,4,8,7,12,13.6096,33.6883,1.6,53.9012,2.9945,0.0112 +src/supervision/geometry/core.py,funcao,cross_product,2,8,7,14,10,21,26.0,69.7605,1.75,122.0809,6.7823,0.0233 +src/supervision/geometry/core.py,funcao,from_xyxy,1,4,2,4,5,6,8.0,13.9316,0.5,6.9658,0.387,0.0046 +src/supervision/geometry/core.py,funcao,top_left,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/geometry/core.py,funcao,bottom_right,1,4,2,4,5,6,8.0,13.9316,0.5,6.9658,0.387,0.0046 +src/supervision/geometry/core.py,funcao,pad,3,8,6,12,11,18,28.7549,62.2698,2.25,140.107,7.7837,0.0208 +src/supervision/geometry/core.py,funcao,as_xyxy_int_tuple,1,4,2,4,5,6,8.0,13.9316,0.5,6.9658,0.387,0.0046 +src/supervision/geometry/utils.py,funcao,get_polygon_center,4,10,6,11,14,17,41.2193,64.725,2.2,142.3951,7.9108,0.0216 +src/supervision/key_points/annotators.py,funcao,annotate,4,8,6,9,12,15,32.0,53.7744,2.25,120.9925,6.7218,0.0179 +src/supervision/key_points/annotators.py,funcao,__init__,1,3,2,4,4,6,4.7549,12.0,0.6667,8.0,0.4444,0.004 +src/supervision/key_points/annotators.py,funcao,_get_covariances,2,4,2,4,6,6,10.0,15.5098,1.0,15.5098,0.8617,0.0052 +src/supervision/key_points/annotators.py,funcao,_decompose_covariance,4,7,5,7,11,12,27.6515,41.5132,2.0,83.0264,4.6126,0.0138 +src/supervision/key_points/annotators.py,funcao,_iter_ellipse_params,5,9,6,11,14,17,40.139,64.725,3.0556,197.7709,10.9873,0.0216 +src/supervision/key_points/annotators.py,funcao,get_text_bounding_box,3,9,8,16,12,24,33.2842,86.0391,2.6667,229.4376,12.7465,0.0287 +src/supervision/key_points/annotators.py,funcao,_resolve_labels,3,5,4,8,8,12,16.3645,36.0,2.4,86.4,4.8,0.012 +src/supervision/key_points/annotators.py,funcao,_resolve_color_list,2,3,2,4,5,6,6.7549,13.9316,1.3333,18.5754,1.032,0.0046 +src/supervision/key_points/core.py,funcao,_optional_array_equal,3,7,6,12,10,18,24.4064,59.7947,2.5714,153.7578,8.5421,0.0199 +src/supervision/key_points/core.py,funcao,_normalize_row_index,2,11,5,11,13,16,40.0537,59.207,1.0,59.207,3.2893,0.0197 +src/supervision/key_points/core.py,funcao,__init__,1,4,3,6,5,9,8.0,20.8974,0.75,15.673,0.8707,0.007 +src/supervision/key_points/core.py,funcao,__post_init__,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/key_points/core.py,funcao,confidence,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/key_points/core.py,funcao,__len__,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/key_points/core.py,funcao,__iter__,1,3,2,4,4,6,4.7549,12.0,0.6667,8.0,0.4444,0.004 +src/supervision/key_points/core.py,funcao,__eq__,1,1,1,1,2,2,0,2.0,0.5,1.0,0.0556,0.0007 +src/supervision/key_points/core.py,funcao,from_inference,2,3,2,3,5,5,6.7549,11.6096,1.0,11.6096,0.645,0.0039 +src/supervision/key_points/core.py,funcao,from_mediapipe,4,10,6,11,14,17,41.2193,64.725,2.2,142.3951,7.9108,0.0216 +src/supervision/key_points/core.py,funcao,from_ultralytics,2,4,2,4,6,6,10.0,15.5098,1.0,15.5098,0.8617,0.0052 +src/supervision/key_points/core.py,funcao,from_yolo_nas,4,9,5,10,13,15,36.5293,55.5066,2.2222,123.348,6.8527,0.0185 +src/supervision/key_points/core.py,funcao,from_detectron2,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/key_points/core.py,funcao,from_transformers,2,4,2,4,6,6,10.0,15.5098,1.0,15.5098,0.8617,0.0052 +src/supervision/key_points/core.py,funcao,_get_by_2d_bool_mask,7,23,19,37,30,56,123.6934,274.7859,5.6304,1547.1639,85.9536,0.0916 +src/supervision/key_points/core.py,funcao,_normalize_getitem_index,3,17,10,19,20,29,74.2418,125.3359,1.6765,210.122,11.6734,0.0418 +src/supervision/key_points/core.py,funcao,_select_fields,1,5,4,8,6,12,11.6096,31.0196,0.8,24.8156,1.3786,0.0103 +src/supervision/key_points/core.py,funcao,_reshape_selected,4,15,14,28,19,42,66.6034,178.413,3.7333,666.075,37.0042,0.0595 +src/supervision/key_points/core.py,funcao,_getitem_by_normalized_index,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/key_points/core.py,funcao,__getitem__,2,7,3,7,9,10,21.6515,31.6993,1.0,31.6993,1.7611,0.0106 +src/supervision/key_points/core.py,funcao,__setitem__,1,1,1,1,2,2,0,2.0,0.5,1.0,0.0556,0.0007 +src/supervision/key_points/core.py,funcao,empty,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/key_points/core.py,funcao,is_empty,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/key_points/core.py,funcao,with_nms,8,14,15,22,22,37,77.303,164.999,6.2857,1037.1364,57.6187,0.055 +src/supervision/key_points/core.py,funcao,as_detections,5,9,8,12,14,20,40.139,76.1471,3.3333,253.8237,14.1013,0.0254 +src/supervision/metrics/core.py,funcao,update,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/core.py,funcao,reset,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/core.py,funcao,compute,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/detection.py,funcao,_assert_supported_target,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/metrics/detection.py,funcao,detections_to_tensor,7,20,13,24,27,37,106.09,175.9308,4.2,738.9095,41.0505,0.0586 +src/supervision/metrics/detection.py,funcao,_validate_input_tensors,5,14,9,16,19,25,64.9126,106.1982,2.8571,303.4234,16.8569,0.0354 +src/supervision/metrics/detection.py,funcao,_get_coordinate_metadata,2,4,2,4,6,6,10.0,15.5098,1.0,15.5098,0.8617,0.0052 +src/supervision/metrics/detection.py,funcao,_validate_detection_batch_shapes,3,12,8,16,15,24,47.7744,93.7654,2.0,187.5307,10.4184,0.0313 +src/supervision/metrics/detection.py,funcao,_try_early_exit,2,6,4,8,8,12,17.5098,36.0,1.3333,48.0,2.6667,0.012 +src/supervision/metrics/detection.py,funcao,_get_iou_batch,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/metrics/detection.py,funcao,_fill_confusion_matrix_from_iou,7,18,13,24,25,37,94.7101,171.8227,4.6667,801.8392,44.5466,0.0573 +src/supervision/metrics/detection.py,funcao,validate_input_tensors,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/detection.py,funcao,__eq__,3,8,5,11,11,16,28.7549,55.3509,2.0625,114.1612,6.3423,0.0185 +src/supervision/metrics/detection.py,funcao,from_detections,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/detection.py,funcao,from_tensors,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/metrics/detection.py,funcao,evaluate_detection_batch,3,6,4,8,9,12,20.2647,38.0391,2.0,76.0782,4.2266,0.0127 +src/supervision/metrics/detection.py,funcao,_drop_extra_matches,2,3,3,4,5,7,6.7549,16.2535,1.3333,21.6713,1.204,0.0054 +src/supervision/metrics/detection.py,funcao,benchmark,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/detection.py,funcao,plot,9,23,15,27,32,42,132.5713,210.0,5.2826,1109.3478,61.6304,0.07 +src/supervision/metrics/detection.py,funcao,compute_average_precision,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/detection.py,funcao,_match_detection_batch,5,8,5,9,13,14,35.6096,51.8062,2.8125,145.7048,8.0947,0.0173 +src/supervision/metrics/detection.py,funcao,_average_precisions_per_class,6,15,10,19,21,29,74.1131,127.3772,3.8,484.0334,26.8907,0.0425 +src/supervision/metrics/f1_score.py,funcao,__init__,2,8,5,11,10,16,26.0,53.1508,1.375,73.0824,4.0601,0.0177 +src/supervision/metrics/f1_score.py,funcao,reset,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/f1_score.py,funcao,update,2,4,3,4,6,7,10.0,18.0947,1.0,18.0947,1.0053,0.006 +src/supervision/metrics/f1_score.py,funcao,compute,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/f1_score.py,funcao,_compute,7,17,14,27,24,41,89.1384,187.9835,5.5588,1044.9669,58.0537,0.0627 +src/supervision/metrics/f1_score.py,funcao,_compute_f1_for_classes,2,7,5,9,9,14,21.6515,44.379,1.2857,57.0587,3.1699,0.0148 +src/supervision/metrics/f1_score.py,funcao,_match_detection_batch,5,8,5,9,13,14,35.6096,51.8062,2.8125,145.7048,8.0947,0.0173 +src/supervision/metrics/f1_score.py,funcao,_compute_confusion_matrix,2,8,5,10,10,15,26.0,49.8289,1.25,62.2862,3.4603,0.0166 +src/supervision/metrics/f1_score.py,funcao,_compute_f1,6,13,9,16,19,25,63.6155,106.1982,3.6923,392.1164,21.7842,0.0354 +src/supervision/metrics/f1_score.py,funcao,_detections_content,4,11,7,14,15,21,46.0537,82.0447,2.5455,208.8411,11.6023,0.0273 +src/supervision/metrics/f1_score.py,funcao,_make_empty_content,1,4,3,6,5,9,8.0,20.8974,0.75,15.673,0.8707,0.007 +src/supervision/metrics/f1_score.py,funcao,_filter_detections_by_size,3,12,8,16,15,24,47.7744,93.7654,2.0,187.5307,10.4184,0.0313 +src/supervision/metrics/f1_score.py,funcao,_filter_predictions_and_targets_by_size,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/f1_score.py,funcao,f1_50,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/f1_score.py,funcao,f1_75,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/f1_score.py,funcao,_ensure_size_results,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/metrics/f1_score.py,funcao,small_objects,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/f1_score.py,funcao,medium_objects,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/f1_score.py,funcao,large_objects,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/f1_score.py,funcao,__str__,3,16,12,24,19,36,68.7549,152.9254,2.25,344.0821,19.1157,0.051 +src/supervision/metrics/f1_score.py,funcao,to_pandas,1,4,3,6,5,9,8.0,20.8974,0.75,15.673,0.8707,0.007 +src/supervision/metrics/f1_score.py,funcao,plot,4,26,19,38,30,57,130.2114,279.6928,2.9231,817.5635,45.4202,0.0932 +src/supervision/metrics/mean_average_precision.py,funcao,__init__,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/mean_average_precision.py,funcao,map50_95,2,5,4,6,7,10,13.6096,28.0735,1.2,33.6883,1.8716,0.0094 +src/supervision/metrics/mean_average_precision.py,funcao,map50,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/mean_average_precision.py,funcao,map75,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/mean_average_precision.py,funcao,small_objects,2,5,4,8,7,12,13.6096,33.6883,1.6,53.9012,2.9945,0.0112 +src/supervision/metrics/mean_average_precision.py,funcao,medium_objects,2,5,4,8,7,12,13.6096,33.6883,1.6,53.9012,2.9945,0.0112 +src/supervision/metrics/mean_average_precision.py,funcao,large_objects,2,5,4,8,7,12,13.6096,33.6883,1.6,53.9012,2.9945,0.0112 +src/supervision/metrics/mean_average_precision.py,funcao,__str__,2,7,4,9,9,13,21.6515,41.209,1.2857,52.983,2.9435,0.0137 +src/supervision/metrics/mean_average_precision.py,funcao,to_pandas,1,4,3,6,5,9,8.0,20.8974,0.75,15.673,0.8707,0.007 +src/supervision/metrics/mean_average_precision.py,funcao,plot,4,27,19,38,31,57,136.382,282.3892,2.8148,794.8733,44.1596,0.0941 +src/supervision/metrics/mean_average_precision.py,funcao,empty,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/mean_average_precision.py,funcao,create_class_members,2,6,6,12,8,18,17.5098,54.0,2.0,108.0,6.0,0.018 +src/supervision/metrics/mean_average_precision.py,funcao,get_annotation_ids,6,15,12,19,21,31,74.1131,136.1618,3.8,517.415,28.7453,0.0454 +src/supervision/metrics/mean_average_precision.py,funcao,get_category_ids,3,9,10,15,12,25,33.2842,89.6241,2.5,224.0602,12.4478,0.0299 +src/supervision/metrics/mean_average_precision.py,funcao,get_image_ids,4,10,7,11,14,18,41.2193,68.5324,2.2,150.7713,8.3762,0.0228 +src/supervision/metrics/mean_average_precision.py,funcao,get_annotations,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/metrics/mean_average_precision.py,funcao,load_predictions,8,28,17,32,36,49,158.6059,253.3263,4.5714,1158.0632,64.3368,0.0844 +src/supervision/metrics/mean_average_precision.py,funcao,eval_imgs,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/mean_average_precision.py,funcao,results,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/mean_average_precision.py,funcao,stats,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/mean_average_precision.py,funcao,ious,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/mean_average_precision.py,funcao,_targets,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/mean_average_precision.py,funcao,_predictions,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/mean_average_precision.py,funcao,_prepare_targets_and_predictions,2,5,3,6,7,9,13.6096,25.2662,1.2,30.3194,1.6844,0.0084 +src/supervision/metrics/mean_average_precision.py,funcao,_compute_iou,4,9,7,11,13,18,36.5293,66.6079,2.4444,162.8193,9.0455,0.0222 +src/supervision/metrics/mean_average_precision.py,funcao,_evaluate_image,11,35,27,48,46,75,217.5787,414.2671,7.5429,3124.7579,173.5977,0.1381 +src/supervision/metrics/mean_average_precision.py,funcao,_initialize_accumulation,1,3,3,3,4,6,4.7549,12.0,0.5,6.0,0.3333,0.004 +src/supervision/metrics/mean_average_precision.py,funcao,_select_evaluation_indices,1,8,4,8,9,12,24.0,38.0391,0.5,19.0196,1.0566,0.0127 +src/supervision/metrics/mean_average_precision.py,funcao,_compute_raw_metrics,11,34,27,49,45,76,211.0275,417.3808,7.9265,3308.3569,183.7976,0.1391 +src/supervision/metrics/mean_average_precision.py,funcao,_compute_average_precision,3,6,4,6,9,10,20.2647,31.6993,1.5,47.5489,2.6416,0.0106 +src/supervision/metrics/mean_average_precision.py,funcao,_compute_average_precision_by_size,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/mean_average_precision.py,funcao,_accumulate,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/mean_average_precision.py,funcao,_pycocotools_summarize,6,11,13,22,17,35,53.5635,143.0612,6.0,858.3672,47.6871,0.0477 +src/supervision/metrics/mean_average_precision.py,funcao,evaluate,1,1,1,1,2,2,0,2.0,0.5,1.0,0.0556,0.0007 +src/supervision/metrics/mean_average_precision.py,funcao,reset,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/mean_average_precision.py,funcao,update,4,7,7,10,11,17,27.6515,58.8103,2.8571,168.0295,9.335,0.0196 +src/supervision/metrics/mean_average_precision.py,funcao,_prepare_targets,7,20,16,32,27,48,106.09,228.2346,5.6,1278.1138,71.0063,0.0761 +src/supervision/metrics/mean_average_precision.py,funcao,_prepare_predictions,7,18,13,26,25,39,94.7101,181.1104,5.0556,915.6136,50.8674,0.0604 +src/supervision/metrics/mean_average_precision.py,funcao,compute,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/metrics/mean_average_recall.py,funcao,_ensure_size_results,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/metrics/mean_average_recall.py,funcao,small_objects,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/mean_average_recall.py,funcao,medium_objects,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/mean_average_recall.py,funcao,large_objects,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/mean_average_recall.py,funcao,__init__,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/mean_average_recall.py,funcao,mAR_at_1,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/mean_average_recall.py,funcao,mAR_at_10,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/mean_average_recall.py,funcao,mAR_at_100,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/mean_average_recall.py,funcao,__str__,3,16,12,24,19,36,68.7549,152.9254,2.25,344.0821,19.1157,0.051 +src/supervision/metrics/mean_average_recall.py,funcao,to_pandas,1,4,3,6,5,9,8.0,20.8974,0.75,15.673,0.8707,0.007 +src/supervision/metrics/mean_average_recall.py,funcao,plot,4,27,19,38,31,57,136.382,282.3892,2.8148,794.8733,44.1596,0.0941 +src/supervision/metrics/mean_average_recall.py,funcao,reset,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/mean_average_recall.py,funcao,update,2,4,3,4,6,7,10.0,18.0947,1.0,18.0947,1.0053,0.006 +src/supervision/metrics/mean_average_recall.py,funcao,compute,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/mean_average_recall.py,funcao,_compute,5,11,9,16,16,25,49.6634,100.0,3.6364,363.6364,20.202,0.0333 +src/supervision/metrics/mean_average_recall.py,funcao,_compute_average_recall_for_classes,1,2,2,4,3,6,2.0,9.5098,1.0,9.5098,0.5283,0.0032 +src/supervision/metrics/mean_average_recall.py,funcao,_match_detection_batch,5,8,5,9,13,14,35.6096,51.8062,2.8125,145.7048,8.0947,0.0173 +src/supervision/metrics/mean_average_recall.py,funcao,_compute_confusion_matrix,2,8,5,10,10,15,26.0,49.8289,1.25,62.2862,3.4603,0.0166 +src/supervision/metrics/mean_average_recall.py,funcao,_compute_recall,5,8,6,10,13,16,35.6096,59.207,3.125,185.022,10.279,0.0197 +src/supervision/metrics/mean_average_recall.py,funcao,_detections_content,4,11,7,14,15,21,46.0537,82.0447,2.5455,208.8411,11.6023,0.0273 +src/supervision/metrics/mean_average_recall.py,funcao,_make_empty_content,1,4,3,6,5,9,8.0,20.8974,0.75,15.673,0.8707,0.007 +src/supervision/metrics/mean_average_recall.py,funcao,_filter_detections_by_size,3,12,8,16,15,24,47.7744,93.7654,2.0,187.5307,10.4184,0.0313 +src/supervision/metrics/mean_average_recall.py,funcao,_filter_predictions_and_targets_by_size,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/precision.py,funcao,__init__,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/precision.py,funcao,precision_at_50,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/precision.py,funcao,precision_at_75,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/precision.py,funcao,small_objects,2,5,4,8,7,12,13.6096,33.6883,1.6,53.9012,2.9945,0.0112 +src/supervision/metrics/precision.py,funcao,medium_objects,2,5,4,8,7,12,13.6096,33.6883,1.6,53.9012,2.9945,0.0112 +src/supervision/metrics/precision.py,funcao,large_objects,2,5,4,8,7,12,13.6096,33.6883,1.6,53.9012,2.9945,0.0112 +src/supervision/metrics/precision.py,funcao,__str__,3,16,12,24,19,36,68.7549,152.9254,2.25,344.0821,19.1157,0.051 +src/supervision/metrics/precision.py,funcao,to_pandas,1,4,3,6,5,9,8.0,20.8974,0.75,15.673,0.8707,0.007 +src/supervision/metrics/precision.py,funcao,plot,4,26,19,38,30,57,130.2114,279.6928,2.9231,817.5635,45.4202,0.0932 +src/supervision/metrics/precision.py,funcao,reset,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/precision.py,funcao,update,2,4,3,4,6,7,10.0,18.0947,1.0,18.0947,1.0053,0.006 +src/supervision/metrics/precision.py,funcao,compute,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/precision.py,funcao,_compute,7,17,14,27,24,41,89.1384,187.9835,5.5588,1044.9669,58.0537,0.0627 +src/supervision/metrics/precision.py,funcao,_compute_precision_for_classes,2,7,5,9,9,14,21.6515,44.379,1.2857,57.0587,3.1699,0.0148 +src/supervision/metrics/precision.py,funcao,_match_detection_batch,5,8,5,9,13,14,35.6096,51.8062,2.8125,145.7048,8.0947,0.0173 +src/supervision/metrics/precision.py,funcao,_compute_confusion_matrix,2,8,5,10,10,15,26.0,49.8289,1.25,62.2862,3.4603,0.0166 +src/supervision/metrics/precision.py,funcao,_compute_precision,5,8,5,8,13,13,35.6096,48.1057,2.5,120.2643,6.6813,0.016 +src/supervision/metrics/precision.py,funcao,_detections_content,4,11,7,14,15,21,46.0537,82.0447,2.5455,208.8411,11.6023,0.0273 +src/supervision/metrics/precision.py,funcao,_make_empty_content,1,4,3,6,5,9,8.0,20.8974,0.75,15.673,0.8707,0.007 +src/supervision/metrics/precision.py,funcao,_filter_detections_by_size,3,12,8,16,15,24,47.7744,93.7654,2.0,187.5307,10.4184,0.0313 +src/supervision/metrics/precision.py,funcao,_filter_predictions_and_targets_by_size,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/recall.py,funcao,recall_at_50,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/recall.py,funcao,recall_at_75,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/recall.py,funcao,__init__,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/recall.py,funcao,_ensure_size_results,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/metrics/recall.py,funcao,small_objects,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/recall.py,funcao,medium_objects,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/recall.py,funcao,large_objects,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/recall.py,funcao,reset,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/recall.py,funcao,update,2,4,3,4,6,7,10.0,18.0947,1.0,18.0947,1.0053,0.006 +src/supervision/metrics/recall.py,funcao,compute,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/recall.py,funcao,_compute,4,10,8,15,14,23,41.2193,87.5692,3.0,262.7075,14.5949,0.0292 +src/supervision/metrics/recall.py,funcao,_compute_recall_for_classes,2,5,4,7,7,11,13.6096,30.8809,1.4,43.2333,2.4018,0.0103 +src/supervision/metrics/recall.py,funcao,_match_detection_batch,5,8,5,9,13,14,35.6096,51.8062,2.8125,145.7048,8.0947,0.0173 +src/supervision/metrics/recall.py,funcao,_compute_confusion_matrix,2,8,5,10,10,15,26.0,49.8289,1.25,62.2862,3.4603,0.0166 +src/supervision/metrics/recall.py,funcao,_compute_recall,5,8,5,8,13,13,35.6096,48.1057,2.5,120.2643,6.6813,0.016 +src/supervision/metrics/recall.py,funcao,_detections_content,4,11,7,14,15,21,46.0537,82.0447,2.5455,208.8411,11.6023,0.0273 +src/supervision/metrics/recall.py,funcao,_make_empty_content,1,4,3,6,5,9,8.0,20.8974,0.75,15.673,0.8707,0.007 +src/supervision/metrics/recall.py,funcao,_filter_detections_by_size,3,12,8,16,15,24,47.7744,93.7654,2.0,187.5307,10.4184,0.0313 +src/supervision/metrics/recall.py,funcao,_filter_predictions_and_targets_by_size,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/recall.py,funcao,__str__,3,16,12,24,19,36,68.7549,152.9254,2.25,344.0821,19.1157,0.051 +src/supervision/metrics/recall.py,funcao,to_pandas,1,4,3,6,5,9,8.0,20.8974,0.75,15.673,0.8707,0.007 +src/supervision/metrics/recall.py,funcao,plot,4,26,19,38,30,57,130.2114,279.6928,2.9231,817.5635,45.4202,0.0932 +src/supervision/metrics/utils/object_size.py,funcao,get_object_size_category,1,4,3,6,5,9,8.0,20.8974,0.75,15.673,0.8707,0.007 +src/supervision/metrics/utils/object_size.py,funcao,get_bbox_size_category,7,17,11,22,24,33,89.1384,151.3038,4.5294,685.317,38.0732,0.0504 +src/supervision/metrics/utils/object_size.py,funcao,get_mask_size_category,4,7,6,12,11,18,27.6515,62.2698,3.4286,213.4964,11.8609,0.0208 +src/supervision/metrics/utils/object_size.py,funcao,get_obb_size_category,8,38,25,51,46,76,223.4212,419.7907,5.3684,2253.6133,125.2007,0.1399 +src/supervision/metrics/utils/object_size.py,funcao,get_detection_size_category,2,7,5,10,9,15,21.6515,47.5489,1.4286,67.927,3.7737,0.0158 +src/supervision/metrics/utils/utils.py,funcao,ensure_pandas_installed,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/tracker/byte_tracker/core.py,funcao,__init__,3,6,3,6,9,9,20.2647,28.5293,1.5,42.794,2.3774,0.0095 +src/supervision/tracker/byte_tracker/core.py,funcao,frame_id,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/tracker/byte_tracker/core.py,funcao,update_with_detections,5,8,6,10,13,16,35.6096,59.207,3.125,185.022,10.279,0.0197 +src/supervision/tracker/byte_tracker/core.py,funcao,reset,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/tracker/byte_tracker/core.py,funcao,update_with_tensors,1,10,6,12,11,18,33.2193,62.2698,0.6,37.3619,2.0757,0.0208 +src/supervision/tracker/byte_tracker/core.py,funcao,_split_by_confidence,3,6,6,11,9,17,20.2647,53.8887,2.75,148.194,8.233,0.018 +src/supervision/tracker/byte_tracker/core.py,funcao,_build_stracks,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/tracker/byte_tracker/core.py,funcao,_separate_tracks,1,1,1,1,2,2,0,2.0,0.5,1.0,0.0556,0.0007 +src/supervision/tracker/byte_tracker/core.py,funcao,_first_association,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/tracker/byte_tracker/core.py,funcao,_second_association,2,3,3,6,5,9,6.7549,20.8974,2.0,41.7947,2.3219,0.007 +src/supervision/tracker/byte_tracker/core.py,funcao,_unconfirmed_and_init_new,2,4,2,4,6,6,10.0,15.5098,1.0,15.5098,0.8617,0.0052 +src/supervision/tracker/byte_tracker/core.py,funcao,_remove_stale_lost_tracks,3,5,3,6,8,9,16.3645,27.0,1.8,48.6,2.7,0.009 +src/supervision/tracker/byte_tracker/core.py,funcao,_update_state,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/tracker/byte_tracker/core.py,funcao,joint_tracks,2,4,2,4,6,6,10.0,15.5098,1.0,15.5098,0.8617,0.0052 +src/supervision/tracker/byte_tracker/core.py,funcao,sub_tracks,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/tracker/byte_tracker/core.py,funcao,remove_duplicate_tracks,4,9,6,12,13,18,36.5293,66.6079,2.6667,177.6211,9.8678,0.0222 +src/supervision/tracker/byte_tracker/kalman_filter.py,funcao,__init__,3,6,6,12,9,18,20.2647,57.0587,3.0,171.176,9.5098,0.019 +src/supervision/tracker/byte_tracker/kalman_filter.py,funcao,initiate,1,16,12,24,17,36,64.0,147.1487,0.75,110.3615,6.1312,0.049 +src/supervision/tracker/byte_tracker/kalman_filter.py,funcao,predict,2,10,7,14,12,21,35.2193,75.2842,1.4,105.3979,5.8554,0.0251 +src/supervision/tracker/byte_tracker/kalman_filter.py,funcao,project,2,6,4,8,8,12,17.5098,36.0,1.3333,48.0,2.6667,0.012 +src/supervision/tracker/byte_tracker/kalman_filter.py,funcao,multi_predict,2,14,9,18,16,27,55.303,108.0,1.2857,138.8571,7.7143,0.036 +src/supervision/tracker/byte_tracker/kalman_filter.py,funcao,update,2,6,3,6,8,9,17.5098,27.0,1.0,27.0,1.5,0.009 +src/supervision/tracker/byte_tracker/matching.py,funcao,indices_to_matches,2,6,3,6,8,9,17.5098,27.0,1.0,27.0,1.5,0.009 +src/supervision/tracker/byte_tracker/matching.py,funcao,linear_assignment,3,5,3,6,8,9,16.3645,27.0,1.8,48.6,2.7,0.009 +src/supervision/tracker/byte_tracker/matching.py,funcao,iou_distance,5,12,7,14,17,21,54.6292,85.8367,2.9167,250.3571,13.9087,0.0286 +src/supervision/tracker/byte_tracker/matching.py,funcao,fuse_score,3,7,4,8,10,12,24.4064,39.8631,1.7143,68.3368,3.7965,0.0133 +src/supervision/tracker/byte_tracker/single_object_track.py,funcao,__post_init__,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/tracker/byte_tracker/single_object_track.py,funcao,__init__,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/tracker/byte_tracker/single_object_track.py,funcao,state,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/tracker/byte_tracker/single_object_track.py,funcao,is_activated,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/tracker/byte_tracker/single_object_track.py,funcao,start_frame,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/tracker/byte_tracker/single_object_track.py,funcao,frame_id,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/tracker/byte_tracker/single_object_track.py,funcao,kalman_filter,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/tracker/byte_tracker/single_object_track.py,funcao,mean,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/tracker/byte_tracker/single_object_track.py,funcao,covariance,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/tracker/byte_tracker/single_object_track.py,funcao,score,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/tracker/byte_tracker/single_object_track.py,funcao,tracklet_len,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/tracker/byte_tracker/single_object_track.py,funcao,minimum_consecutive_frames,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/tracker/byte_tracker/single_object_track.py,funcao,internal_track_id,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/tracker/byte_tracker/single_object_track.py,funcao,external_track_id,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/tracker/byte_tracker/single_object_track.py,funcao,predict,2,6,4,8,8,12,17.5098,36.0,1.3333,48.0,2.6667,0.012 +src/supervision/tracker/byte_tracker/single_object_track.py,funcao,multi_predict,3,7,4,8,10,12,24.4064,39.8631,1.7143,68.3368,3.7965,0.0133 +src/supervision/tracker/byte_tracker/single_object_track.py,funcao,activate,1,3,2,4,4,6,4.7549,12.0,0.6667,8.0,0.4444,0.004 +src/supervision/tracker/byte_tracker/single_object_track.py,funcao,re_activate,1,4,3,6,5,9,8.0,20.8974,0.75,15.673,0.8707,0.007 +src/supervision/tracker/byte_tracker/single_object_track.py,funcao,update,3,9,6,12,12,18,33.2842,64.5293,2.0,129.0587,7.1699,0.0215 +src/supervision/tracker/byte_tracker/single_object_track.py,funcao,tlwh,4,8,4,8,12,12,32.0,43.0196,2.0,86.0391,4.78,0.0143 +src/supervision/tracker/byte_tracker/single_object_track.py,funcao,tlbr,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/tracker/byte_tracker/single_object_track.py,funcao,tlwh_to_xyah,2,6,3,6,8,9,17.5098,27.0,1.0,27.0,1.5,0.009 +src/supervision/tracker/byte_tracker/single_object_track.py,funcao,to_xyah,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/tracker/byte_tracker/single_object_track.py,funcao,tlbr_to_tlwh,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/tracker/byte_tracker/single_object_track.py,funcao,tlwh_to_tlbr,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/tracker/byte_tracker/single_object_track.py,funcao,__repr__,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/tracker/byte_tracker/utils.py,funcao,__init__,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/tracker/byte_tracker/utils.py,funcao,reset,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/tracker/byte_tracker/utils.py,funcao,new_id,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/tracker/byte_tracker/utils.py,funcao,NO_ID,1,1,1,1,2,2,0,2.0,0.5,1.0,0.0556,0.0007 +src/supervision/utils/conversion.py,funcao,ensure_cv2_image_for_class_method,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/utils/conversion.py,funcao,ensure_cv2_image_for_annotation,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/utils/conversion.py,funcao,ensure_cv2_image_for_standalone_function,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/utils/conversion.py,funcao,ensure_pil_image_for_class_method,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/utils/conversion.py,funcao,ensure_pil_image_for_annotation,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/utils/conversion.py,funcao,ensure_cv2_image_for_processing,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/utils/conversion.py,funcao,images_to_cv2,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/utils/conversion.py,funcao,pillow_to_cv2,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/utils/conversion.py,funcao,cv2_to_pillow,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/utils/file.py,funcao,default,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/utils/file.py,funcao,list_files_with_extensions,5,8,5,9,13,14,35.6096,51.8062,2.8125,145.7048,8.0947,0.0173 +src/supervision/utils/file.py,funcao,read_txt_file,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/utils/file.py,funcao,save_text_file,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/utils/file.py,funcao,read_json_file,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/utils/file.py,funcao,save_json_file,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/utils/file.py,funcao,read_yaml_file,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/utils/file.py,funcao,save_yaml_file,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/utils/image.py,funcao,crop_image,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/utils/image.py,funcao,scale_image,2,4,3,6,6,9,10.0,23.2647,1.5,34.897,1.9387,0.0078 +src/supervision/utils/image.py,funcao,resize_image,3,8,5,10,11,15,28.7549,51.8915,1.875,97.2965,5.4054,0.0173 +src/supervision/utils/image.py,funcao,letterbox_image,2,13,8,16,15,24,50.1057,93.7654,1.2308,115.4035,6.4113,0.0313 +src/supervision/utils/image.py,funcao,overlay_image,9,30,25,48,39,73,175.736,385.8344,7.2,2778.0074,154.3337,0.1286 +src/supervision/utils/image.py,funcao,tint_image,3,4,4,6,7,10,12.7549,28.0735,2.25,63.1655,3.5092,0.0094 +src/supervision/utils/image.py,funcao,grayscale_image,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/utils/image.py,funcao,get_image_resolution_wh,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/utils/image.py,funcao,__init__,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/utils/image.py,funcao,__enter__,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/utils/image.py,funcao,save_image,2,4,2,4,6,6,10.0,15.5098,1.0,15.5098,0.8617,0.0052 +src/supervision/utils/image.py,funcao,__exit__,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/utils/image.py,funcao,create_tiles,5,12,7,14,17,21,54.6292,85.8367,2.9167,250.3571,13.9087,0.0286 +src/supervision/utils/image.py,funcao,_negotiate_tiles_format,2,4,2,4,6,6,10.0,15.5098,1.0,15.5098,0.8617,0.0052 +src/supervision/utils/image.py,funcao,_calculate_aggregated_images_shape,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/utils/image.py,funcao,_aggregate_images_shape,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/utils/image.py,funcao,_establish_grid_size,4,11,9,18,15,27,46.0537,105.486,3.2727,345.2271,19.1793,0.0352 +src/supervision/utils/image.py,funcao,_negotiate_grid_size,4,8,5,10,12,15,32.0,53.7744,2.5,134.4361,7.4687,0.0179 +src/supervision/utils/image.py,funcao,_generate_tiles,3,6,5,8,9,13,20.2647,41.209,2.0,82.4181,4.5788,0.0137 +src/supervision/utils/image.py,funcao,_draw_texts,1,4,3,6,5,9,8.0,20.8974,0.75,15.673,0.8707,0.007 +src/supervision/utils/image.py,funcao,_prepare_default_titles_anchors,4,9,6,12,13,18,36.5293,66.6079,2.6667,177.6211,9.8678,0.0222 +src/supervision/utils/image.py,funcao,_merge_tiles_elements,2,6,5,8,8,13,17.5098,39.0,1.3333,52.0,2.8889,0.013 +src/supervision/utils/image.py,funcao,_generate_color_image,2,3,2,3,5,5,6.7549,11.6096,1.0,11.6096,0.645,0.0039 +src/supervision/utils/internal.py,funcao,format_warning,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/utils/internal.py,funcao,warn_deprecated,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/utils/internal.py,funcao,deprecated_parameter,2,4,2,4,6,6,10.0,15.5098,1.0,15.5098,0.8617,0.0052 +src/supervision/utils/internal.py,funcao,__init__,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/utils/internal.py,funcao,__get__,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/utils/internal.py,funcao,get_instance_variables,3,7,5,7,10,12,24.4064,39.8631,1.5,59.7947,3.3219,0.0133 +src/supervision/utils/iterables.py,funcao,create_batches,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/utils/iterables.py,funcao,fill,2,4,2,4,6,6,10.0,15.5098,1.0,15.5098,0.8617,0.0052 +src/supervision/utils/iterables.py,funcao,find_duplicates,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/utils/logger.py,funcao,_get_logger,3,5,3,5,8,8,16.3645,24.0,1.5,36.0,2.0,0.008 +src/supervision/utils/notebook.py,funcao,plot_image,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/utils/notebook.py,funcao,plot_images_grid,6,13,7,14,19,21,63.6155,89.2065,3.2308,288.2055,16.0114,0.0297 +src/supervision/utils/video.py,funcao,from_video_path,1,1,1,1,2,2,0,2.0,0.5,1.0,0.0556,0.0007 +src/supervision/utils/video.py,funcao,resolution_wh,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/utils/video.py,funcao,__init__,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/utils/video.py,funcao,__enter__,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/utils/video.py,funcao,write_frame,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/utils/video.py,funcao,__exit__,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/utils/video.py,funcao,_mux_audio,4,7,4,8,11,12,27.6515,41.5132,2.2857,94.8873,5.2715,0.0138 +src/supervision/utils/video.py,funcao,_validate_and_setup_video,5,10,9,16,15,25,44.8289,97.6723,4.0,390.6891,21.7049,0.0326 +src/supervision/utils/video.py,funcao,get_video_frames_generator,6,9,7,12,15,19,44.0391,74.2309,4.0,296.9237,16.4958,0.0247 +src/supervision/utils/video.py,funcao,_reader_thread,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/utils/video.py,funcao,_writer_thread,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/utils/video.py,funcao,_drain_and_cleanup,3,5,4,6,8,10,16.3645,30.0,1.8,54.0,3.0,0.01 +src/supervision/utils/video.py,funcao,_mux_audio_if_needed,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/utils/video.py,funcao,_total_frames,2,4,3,6,6,9,10.0,23.2647,1.5,34.897,1.9387,0.0078 +src/supervision/utils/video.py,funcao,_start_workers,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/utils/video.py,funcao,_setup_progress_bar,1,1,1,1,2,2,0,2.0,0.5,1.0,0.0556,0.0007 +src/supervision/utils/video.py,funcao,_process_frames,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/utils/video.py,funcao,run,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/utils/video.py,funcao,process_video,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/utils/video.py,funcao,fps,5,7,5,8,12,13,31.2611,46.6045,2.8571,133.1558,7.3975,0.0155 +src/supervision/utils/video.py,funcao,tick,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/utils/video.py,funcao,reset,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/validators/__init__.py,funcao,_validate_xyxy,3,8,4,8,11,12,28.7549,41.5132,1.5,62.2698,3.4594,0.0138 +src/supervision/validators/__init__.py,funcao,validate_xyxy,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/validators/__init__.py,funcao,_validate_mask,6,14,8,15,20,23,68.8127,99.4043,3.2143,319.514,17.7508,0.0331 +src/supervision/validators/__init__.py,funcao,validate_mask,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/validators/__init__.py,funcao,_validate_class_id,5,9,5,9,14,14,40.139,53.303,2.5,133.2574,7.4032,0.0178 +src/supervision/validators/__init__.py,funcao,validate_class_id,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/validators/__init__.py,funcao,_validate_confidence,5,9,5,9,14,14,40.139,53.303,2.5,133.2574,7.4032,0.0178 +src/supervision/validators/__init__.py,funcao,validate_confidence,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/validators/__init__.py,funcao,_validate_keypoint_confidence,6,14,8,15,20,23,68.8127,99.4043,3.2143,319.514,17.7508,0.0331 +src/supervision/validators/__init__.py,funcao,validate_key_point_confidence,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/validators/__init__.py,funcao,validate_keypoint_confidence,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/validators/__init__.py,funcao,_validate_tracker_id,5,9,5,9,14,14,40.139,53.303,2.5,133.2574,7.4032,0.0178 +src/supervision/validators/__init__.py,funcao,validate_tracker_id,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/validators/__init__.py,funcao,_validate_data,4,10,7,14,14,21,41.2193,79.9545,2.8,223.8725,12.4374,0.0267 +src/supervision/validators/__init__.py,funcao,validate_data,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/validators/__init__.py,funcao,_validate_xy,4,8,4,8,12,12,32.0,43.0196,2.0,86.0391,4.78,0.0143 +src/supervision/validators/__init__.py,funcao,validate_xy,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/validators/__init__.py,funcao,_validate_visible,6,14,8,15,20,23,68.8127,99.4043,3.2143,319.514,17.7508,0.0331 +src/supervision/validators/__init__.py,funcao,_validate_detections_fields,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/validators/__init__.py,funcao,validate_detections_fields,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/validators/__init__.py,funcao,_validate_keypoints_fields,2,5,3,6,7,9,13.6096,25.2662,1.2,30.3194,1.6844,0.0084 +src/supervision/validators/__init__.py,funcao,validate_key_points_fields,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/validators/__init__.py,funcao,validate_keypoints_fields,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/validators/__init__.py,funcao,_validate_resolution,5,13,8,14,18,22,59.7154,91.7384,2.6923,246.9879,13.7215,0.0306 +src/supervision/validators/__init__.py,funcao,validate_resolution,0,0,0,0,0,0,0,0,0,0,0,0 diff --git a/metrics-after-radon/mi_depois.json b/metrics-after-radon/mi_depois.json new file mode 100644 index 0000000000..d07ca28462 --- /dev/null +++ b/metrics-after-radon/mi_depois.json @@ -0,0 +1,322 @@ +{ + "src\\supervision\\config.py": { + "mi": 100.0, + "rank": "A" + }, + "src\\supervision\\__init__.py": { + "mi": 63.74014936937565, + "rank": "A" + }, + "src\\supervision\\annotators\\base.py": { + "mi": 100.0, + "rank": "A" + }, + "src\\supervision\\annotators\\core.py": { + "mi": 0.0, + "rank": "C" + }, + "src\\supervision\\annotators\\utils.py": { + "mi": 48.682299587593235, + "rank": "A" + }, + "src\\supervision\\annotators\\__init__.py": { + "mi": 100.0, + "rank": "A" + }, + "src\\supervision\\assets\\downloader.py": { + "mi": 81.65419137342202, + "rank": "A" + }, + "src\\supervision\\assets\\list.py": { + "mi": 100.0, + "rank": "A" + }, + "src\\supervision\\assets\\__init__.py": { + "mi": 100.0, + "rank": "A" + }, + "src\\supervision\\classification\\core.py": { + "mi": 58.06429475373086, + "rank": "A" + }, + "src\\supervision\\classification\\__init__.py": { + "mi": 100.0, + "rank": "A" + }, + "src\\supervision\\dataset\\core.py": { + "mi": 41.66201117496284, + "rank": "A" + }, + "src\\supervision\\dataset\\utils.py": { + "mi": 59.65711155220216, + "rank": "A" + }, + "src\\supervision\\dataset\\__init__.py": { + "mi": 100.0, + "rank": "A" + }, + "src\\supervision\\dataset\\formats\\coco.py": { + "mi": 53.44967374947408, + "rank": "A" + }, + "src\\supervision\\dataset\\formats\\pascal_voc.py": { + "mi": 60.165233236403246, + "rank": "A" + }, + "src\\supervision\\dataset\\formats\\yolo.py": { + "mi": 50.12873587118398, + "rank": "A" + }, + "src\\supervision\\dataset\\formats\\__init__.py": { + "mi": 100.0, + "rank": "A" + }, + "src\\supervision\\detection\\compact_mask.py": { + "mi": 25.26843613160484, + "rank": "A" + }, + "src\\supervision\\detection\\core.py": { + "mi": 15.706410264069852, + "rank": "B" + }, + "src\\supervision\\detection\\line_zone.py": { + "mi": 39.758410197423565, + "rank": "A" + }, + "src\\supervision\\detection\\vlm.py": { + "mi": 30.565624147338244, + "rank": "A" + }, + "src\\supervision\\detection\\__init__.py": { + "mi": 100.0, + "rank": "A" + }, + "src\\supervision\\detection\\tools\\csv_sink.py": { + "mi": 65.84774008907647, + "rank": "A" + }, + "src\\supervision\\detection\\tools\\inference_slicer.py": { + "mi": 38.313078315559075, + "rank": "A" + }, + "src\\supervision\\detection\\tools\\json_sink.py": { + "mi": 66.2655996887249, + "rank": "A" + }, + "src\\supervision\\detection\\tools\\polygon_zone.py": { + "mi": 62.07390876036888, + "rank": "A" + }, + "src\\supervision\\detection\\tools\\smoother.py": { + "mi": 58.7494965444356, + "rank": "A" + }, + "src\\supervision\\detection\\tools\\transformers.py": { + "mi": 70.0376428384057, + "rank": "A" + }, + "src\\supervision\\detection\\tools\\__init__.py": { + "mi": 100.0, + "rank": "A" + }, + "src\\supervision\\detection\\utils\\boxes.py": { + "mi": 35.682912967703025, + "rank": "A" + }, + "src\\supervision\\detection\\utils\\converters.py": { + "mi": 26.896168601464833, + "rank": "A" + }, + "src\\supervision\\detection\\utils\\internal.py": { + "mi": 45.18180797708275, + "rank": "A" + }, + "src\\supervision\\detection\\utils\\iou_and_nms.py": { + "mi": 27.284450962907226, + "rank": "A" + }, + "src\\supervision\\detection\\utils\\masks.py": { + "mi": 49.42464274677599, + "rank": "A" + }, + "src\\supervision\\detection\\utils\\polygons.py": { + "mi": 63.29136737707571, + "rank": "A" + }, + "src\\supervision\\detection\\utils\\vlms.py": { + "mi": 67.2801534822581, + "rank": "A" + }, + "src\\supervision\\detection\\utils\\__init__.py": { + "mi": 100.0, + "rank": "A" + }, + "src\\supervision\\draw\\base.py": { + "mi": 100.0, + "rank": "A" + }, + "src\\supervision\\draw\\color.py": { + "mi": 45.50893596792294, + "rank": "A" + }, + "src\\supervision\\draw\\utils.py": { + "mi": 62.74342158480082, + "rank": "A" + }, + "src\\supervision\\draw\\__init__.py": { + "mi": 100.0, + "rank": "A" + }, + "src\\supervision\\geometry\\core.py": { + "mi": 61.798795509769285, + "rank": "A" + }, + "src\\supervision\\geometry\\utils.py": { + "mi": 71.90618369506942, + "rank": "A" + }, + "src\\supervision\\geometry\\__init__.py": { + "mi": 100.0, + "rank": "A" + }, + "src\\supervision\\keypoint\\annotators.py": { + "mi": 100.0, + "rank": "A" + }, + "src\\supervision\\keypoint\\core.py": { + "mi": 100.0, + "rank": "A" + }, + "src\\supervision\\keypoint\\__init__.py": { + "mi": 100.0, + "rank": "A" + }, + "src\\supervision\\key_points\\annotators.py": { + "mi": 35.96042639704176, + "rank": "A" + }, + "src\\supervision\\key_points\\core.py": { + "mi": 30.699780871238666, + "rank": "A" + }, + "src\\supervision\\key_points\\skeletons.py": { + "mi": 100.0, + "rank": "A" + }, + "src\\supervision\\key_points\\__init__.py": { + "mi": 100.0, + "rank": "A" + }, + "src\\supervision\\metrics\\core.py": { + "mi": 100.0, + "rank": "A" + }, + "src\\supervision\\metrics\\detection.py": { + "mi": 37.05866062572759, + "rank": "A" + }, + "src\\supervision\\metrics\\f1_score.py": { + "mi": 34.76068184502129, + "rank": "A" + }, + "src\\supervision\\metrics\\mean_average_precision.py": { + "mi": 3.2103557427773173, + "rank": "C" + }, + "src\\supervision\\metrics\\mean_average_recall.py": { + "mi": 35.51405657793091, + "rank": "A" + }, + "src\\supervision\\metrics\\precision.py": { + "mi": 33.402917403418, + "rank": "A" + }, + "src\\supervision\\metrics\\recall.py": { + "mi": 35.48155344921449, + "rank": "A" + }, + "src\\supervision\\metrics\\__init__.py": { + "mi": 100.0, + "rank": "A" + }, + "src\\supervision\\metrics\\utils\\object_size.py": { + "mi": 55.24992048623798, + "rank": "A" + }, + "src\\supervision\\metrics\\utils\\utils.py": { + "mi": 100.0, + "rank": "A" + }, + "src\\supervision\\metrics\\utils\\__init__.py": { + "mi": 100.0, + "rank": "A" + }, + "src\\supervision\\tracker\\__init__.py": { + "mi": 100.0, + "rank": "A" + }, + "src\\supervision\\tracker\\byte_tracker\\core.py": { + "mi": 40.92986336325105, + "rank": "A" + }, + "src\\supervision\\tracker\\byte_tracker\\kalman_filter.py": { + "mi": 67.80339634909727, + "rank": "A" + }, + "src\\supervision\\tracker\\byte_tracker\\matching.py": { + "mi": 45.303415801323766, + "rank": "A" + }, + "src\\supervision\\tracker\\byte_tracker\\single_object_track.py": { + "mi": 36.581150611002535, + "rank": "A" + }, + "src\\supervision\\tracker\\byte_tracker\\utils.py": { + "mi": 90.14540124941266, + "rank": "A" + }, + "src\\supervision\\tracker\\byte_tracker\\__init__.py": { + "mi": 100.0, + "rank": "A" + }, + "src\\supervision\\utils\\conversion.py": { + "mi": 100.0, + "rank": "A" + }, + "src\\supervision\\utils\\file.py": { + "mi": 58.74379408220088, + "rank": "A" + }, + "src\\supervision\\utils\\image.py": { + "mi": 40.17591006834741, + "rank": "A" + }, + "src\\supervision\\utils\\internal.py": { + "mi": 68.84898914903948, + "rank": "A" + }, + "src\\supervision\\utils\\iterables.py": { + "mi": 61.66267771103371, + "rank": "A" + }, + "src\\supervision\\utils\\logger.py": { + "mi": 86.56239735560584, + "rank": "A" + }, + "src\\supervision\\utils\\notebook.py": { + "mi": 74.31672637457959, + "rank": "A" + }, + "src\\supervision\\utils\\video.py": { + "mi": 47.27137129264925, + "rank": "A" + }, + "src\\supervision\\utils\\__init__.py": { + "mi": 100.0, + "rank": "A" + }, + "src\\supervision\\validators\\__init__.py": { + "mi": 39.7549289317202, + "rank": "A" + } +} \ No newline at end of file diff --git a/metrics-after-radon/mi_por_arquivo_depois.csv b/metrics-after-radon/mi_por_arquivo_depois.csv new file mode 100644 index 0000000000..8017281b20 --- /dev/null +++ b/metrics-after-radon/mi_por_arquivo_depois.csv @@ -0,0 +1,81 @@ +arquivo,mi,rank_mi +src/supervision/annotators/core.py,0.0,C +src/supervision/metrics/mean_average_precision.py,3.2104,C +src/supervision/detection/core.py,15.7064,B +src/supervision/detection/compact_mask.py,25.2684,A +src/supervision/detection/utils/converters.py,26.8962,A +src/supervision/detection/utils/iou_and_nms.py,27.2845,A +src/supervision/detection/vlm.py,30.5656,A +src/supervision/key_points/core.py,30.6998,A +src/supervision/metrics/precision.py,33.4029,A +src/supervision/metrics/f1_score.py,34.7607,A +src/supervision/metrics/recall.py,35.4816,A +src/supervision/metrics/mean_average_recall.py,35.5141,A +src/supervision/detection/utils/boxes.py,35.6829,A +src/supervision/key_points/annotators.py,35.9604,A +src/supervision/tracker/byte_tracker/single_object_track.py,36.5812,A +src/supervision/metrics/detection.py,37.0587,A +src/supervision/detection/tools/inference_slicer.py,38.3131,A +src/supervision/validators/__init__.py,39.7549,A +src/supervision/detection/line_zone.py,39.7584,A +src/supervision/utils/image.py,40.1759,A +src/supervision/tracker/byte_tracker/core.py,40.9299,A +src/supervision/dataset/core.py,41.662,A +src/supervision/detection/utils/internal.py,45.1818,A +src/supervision/tracker/byte_tracker/matching.py,45.3034,A +src/supervision/draw/color.py,45.5089,A +src/supervision/utils/video.py,47.2714,A +src/supervision/annotators/utils.py,48.6823,A +src/supervision/detection/utils/masks.py,49.4246,A +src/supervision/dataset/formats/yolo.py,50.1287,A +src/supervision/dataset/formats/coco.py,53.4497,A +src/supervision/metrics/utils/object_size.py,55.2499,A +src/supervision/classification/core.py,58.0643,A +src/supervision/utils/file.py,58.7438,A +src/supervision/detection/tools/smoother.py,58.7495,A +src/supervision/dataset/utils.py,59.6571,A +src/supervision/dataset/formats/pascal_voc.py,60.1652,A +src/supervision/utils/iterables.py,61.6627,A +src/supervision/geometry/core.py,61.7988,A +src/supervision/detection/tools/polygon_zone.py,62.0739,A +src/supervision/draw/utils.py,62.7434,A +src/supervision/detection/utils/polygons.py,63.2914,A +src/supervision/__init__.py,63.7401,A +src/supervision/detection/tools/csv_sink.py,65.8477,A +src/supervision/detection/tools/json_sink.py,66.2656,A +src/supervision/detection/utils/vlms.py,67.2802,A +src/supervision/tracker/byte_tracker/kalman_filter.py,67.8034,A +src/supervision/utils/internal.py,68.849,A +src/supervision/detection/tools/transformers.py,70.0376,A +src/supervision/geometry/utils.py,71.9062,A +src/supervision/utils/notebook.py,74.3167,A +src/supervision/assets/downloader.py,81.6542,A +src/supervision/utils/logger.py,86.5624,A +src/supervision/tracker/byte_tracker/utils.py,90.1454,A +src/supervision/config.py,100.0,A +src/supervision/annotators/base.py,100.0,A +src/supervision/annotators/__init__.py,100.0,A +src/supervision/assets/list.py,100.0,A +src/supervision/assets/__init__.py,100.0,A +src/supervision/classification/__init__.py,100.0,A +src/supervision/dataset/__init__.py,100.0,A +src/supervision/dataset/formats/__init__.py,100.0,A +src/supervision/detection/__init__.py,100.0,A +src/supervision/detection/tools/__init__.py,100.0,A +src/supervision/detection/utils/__init__.py,100.0,A +src/supervision/draw/base.py,100.0,A +src/supervision/draw/__init__.py,100.0,A +src/supervision/geometry/__init__.py,100.0,A +src/supervision/keypoint/annotators.py,100.0,A +src/supervision/keypoint/core.py,100.0,A +src/supervision/keypoint/__init__.py,100.0,A +src/supervision/key_points/skeletons.py,100.0,A +src/supervision/key_points/__init__.py,100.0,A +src/supervision/metrics/core.py,100.0,A +src/supervision/metrics/__init__.py,100.0,A +src/supervision/metrics/utils/utils.py,100.0,A +src/supervision/metrics/utils/__init__.py,100.0,A +src/supervision/tracker/__init__.py,100.0,A +src/supervision/tracker/byte_tracker/__init__.py,100.0,A +src/supervision/utils/conversion.py,100.0,A +src/supervision/utils/__init__.py,100.0,A diff --git a/metrics-after-radon/raw_depois.json b/metrics-after-radon/raw_depois.json new file mode 100644 index 0000000000..efda79c50e --- /dev/null +++ b/metrics-after-radon/raw_depois.json @@ -0,0 +1,722 @@ +{ + "src\\supervision\\config.py": { + "loc": 13, + "lloc": 6, + "sloc": 3, + "comments": 10, + "multi": 0, + "blank": 0, + "single_comments": 10 + }, + "src\\supervision\\__init__.py": { + "loc": 287, + "lloc": 39, + "sloc": 283, + "comments": 1, + "multi": 0, + "blank": 3, + "single_comments": 1 + }, + "src\\supervision\\annotators\\base.py": { + "loc": 12, + "lloc": 7, + "sloc": 9, + "comments": 0, + "multi": 0, + "blank": 3, + "single_comments": 0 + }, + "src\\supervision\\annotators\\core.py": { + "loc": 3382, + "lloc": 1092, + "sloc": 1811, + "comments": 28, + "multi": 1127, + "blank": 426, + "single_comments": 18 + }, + "src\\supervision\\annotators\\utils.py": { + "loc": 487, + "lloc": 195, + "sloc": 266, + "comments": 5, + "multi": 129, + "blank": 90, + "single_comments": 2 + }, + "src\\supervision\\annotators\\__init__.py": { + "loc": 0, + "lloc": 0, + "sloc": 0, + "comments": 0, + "multi": 0, + "blank": 0, + "single_comments": 0 + }, + "src\\supervision\\assets\\downloader.py": { + "loc": 95, + "lloc": 42, + "sloc": 46, + "comments": 0, + "multi": 25, + "blank": 24, + "single_comments": 0 + }, + "src\\supervision\\assets\\list.py": { + "loc": 82, + "lloc": 35, + "sloc": 66, + "comments": 2, + "multi": 0, + "blank": 16, + "single_comments": 0 + }, + "src\\supervision\\assets\\__init__.py": { + "loc": 4, + "lloc": 3, + "sloc": 3, + "comments": 0, + "multi": 0, + "blank": 1, + "single_comments": 0 + }, + "src\\supervision\\classification\\core.py": { + "loc": 200, + "lloc": 64, + "sloc": 60, + "comments": 0, + "multi": 94, + "blank": 46, + "single_comments": 0 + }, + "src\\supervision\\classification\\__init__.py": { + "loc": 0, + "lloc": 0, + "sloc": 0, + "comments": 0, + "multi": 0, + "blank": 0, + "single_comments": 0 + }, + "src\\supervision\\dataset\\core.py": { + "loc": 969, + "lloc": 267, + "sloc": 448, + "comments": 2, + "multi": 389, + "blank": 128, + "single_comments": 4 + }, + "src\\supervision\\dataset\\utils.py": { + "loc": 164, + "lloc": 80, + "sloc": 117, + "comments": 3, + "multi": 10, + "blank": 34, + "single_comments": 3 + }, + "src\\supervision\\dataset\\__init__.py": { + "loc": 0, + "lloc": 0, + "sloc": 0, + "comments": 0, + "multi": 0, + "blank": 0, + "single_comments": 0 + }, + "src\\supervision\\dataset\\formats\\coco.py": { + "loc": 648, + "lloc": 201, + "sloc": 357, + "comments": 13, + "multi": 187, + "blank": 91, + "single_comments": 13 + }, + "src\\supervision\\dataset\\formats\\pascal_voc.py": { + "loc": 355, + "lloc": 155, + "sloc": 197, + "comments": 15, + "multi": 88, + "blank": 55, + "single_comments": 15 + }, + "src\\supervision\\dataset\\formats\\yolo.py": { + "loc": 477, + "lloc": 185, + "sloc": 319, + "comments": 2, + "multi": 99, + "blank": 57, + "single_comments": 2 + }, + "src\\supervision\\dataset\\formats\\__init__.py": { + "loc": 0, + "lloc": 0, + "sloc": 0, + "comments": 0, + "multi": 0, + "blank": 0, + "single_comments": 0 + }, + "src\\supervision\\detection\\compact_mask.py": { + "loc": 1306, + "lloc": 434, + "sloc": 477, + "comments": 68, + "multi": 545, + "blank": 224, + "single_comments": 60 + }, + "src\\supervision\\detection\\core.py": { + "loc": 2960, + "lloc": 618, + "sloc": 1758, + "comments": 21, + "multi": 640, + "blank": 550, + "single_comments": 12 + }, + "src\\supervision\\detection\\line_zone.py": { + "loc": 944, + "lloc": 341, + "sloc": 586, + "comments": 2, + "multi": 224, + "blank": 132, + "single_comments": 2 + }, + "src\\supervision\\detection\\vlm.py": { + "loc": 986, + "lloc": 425, + "sloc": 618, + "comments": 10, + "multi": 190, + "blank": 171, + "single_comments": 7 + }, + "src\\supervision\\detection\\__init__.py": { + "loc": 0, + "lloc": 0, + "sloc": 0, + "comments": 0, + "multi": 0, + "blank": 0, + "single_comments": 0 + }, + "src\\supervision\\detection\\tools\\csv_sink.py": { + "loc": 241, + "lloc": 85, + "sloc": 116, + "comments": 0, + "multi": 88, + "blank": 37, + "single_comments": 0 + }, + "src\\supervision\\detection\\tools\\inference_slicer.py": { + "loc": 639, + "lloc": 286, + "sloc": 430, + "comments": 4, + "multi": 107, + "blank": 98, + "single_comments": 4 + }, + "src\\supervision\\detection\\tools\\json_sink.py": { + "loc": 215, + "lloc": 71, + "sloc": 87, + "comments": 0, + "multi": 92, + "blank": 36, + "single_comments": 0 + }, + "src\\supervision\\detection\\tools\\polygon_zone.py": { + "loc": 290, + "lloc": 126, + "sloc": 171, + "comments": 0, + "multi": 70, + "blank": 49, + "single_comments": 0 + }, + "src\\supervision\\detection\\tools\\smoother.py": { + "loc": 184, + "lloc": 57, + "sloc": 58, + "comments": 6, + "multi": 82, + "blank": 38, + "single_comments": 6 + }, + "src\\supervision\\detection\\tools\\transformers.py": { + "loc": 250, + "lloc": 68, + "sloc": 109, + "comments": 0, + "multi": 100, + "blank": 41, + "single_comments": 0 + }, + "src\\supervision\\detection\\tools\\__init__.py": { + "loc": 0, + "lloc": 0, + "sloc": 0, + "comments": 0, + "multi": 0, + "blank": 0, + "single_comments": 0 + }, + "src\\supervision\\detection\\utils\\boxes.py": { + "loc": 417, + "lloc": 100, + "sloc": 108, + "comments": 5, + "multi": 234, + "blank": 71, + "single_comments": 4 + }, + "src\\supervision\\detection\\utils\\converters.py": { + "loc": 738, + "lloc": 195, + "sloc": 189, + "comments": 6, + "multi": 399, + "blank": 146, + "single_comments": 4 + }, + "src\\supervision\\detection\\utils\\internal.py": { + "loc": 431, + "lloc": 193, + "sloc": 277, + "comments": 1, + "multi": 78, + "blank": 75, + "single_comments": 1 + }, + "src\\supervision\\detection\\utils\\iou_and_nms.py": { + "loc": 1461, + "lloc": 532, + "sloc": 703, + "comments": 40, + "multi": 502, + "blank": 218, + "single_comments": 38 + }, + "src\\supervision\\detection\\utils\\masks.py": { + "loc": 475, + "lloc": 161, + "sloc": 341, + "comments": 7, + "multi": 54, + "blank": 73, + "single_comments": 7 + }, + "src\\supervision\\detection\\utils\\polygons.py": { + "loc": 116, + "lloc": 29, + "sloc": 37, + "comments": 2, + "multi": 57, + "blank": 20, + "single_comments": 2 + }, + "src\\supervision\\detection\\utils\\vlms.py": { + "loc": 100, + "lloc": 26, + "sloc": 33, + "comments": 0, + "multi": 51, + "blank": 16, + "single_comments": 0 + }, + "src\\supervision\\detection\\utils\\__init__.py": { + "loc": 0, + "lloc": 0, + "sloc": 0, + "comments": 0, + "multi": 0, + "blank": 0, + "single_comments": 0 + }, + "src\\supervision\\draw\\base.py": { + "loc": 14, + "lloc": 6, + "sloc": 5, + "comments": 0, + "multi": 6, + "blank": 3, + "single_comments": 0 + }, + "src\\supervision\\draw\\color.py": { + "loc": 572, + "lloc": 166, + "sloc": 217, + "comments": 3, + "multi": 237, + "blank": 118, + "single_comments": 0 + }, + "src\\supervision\\draw\\utils.py": { + "loc": 420, + "lloc": 94, + "sloc": 209, + "comments": 6, + "multi": 140, + "blank": 65, + "single_comments": 6 + }, + "src\\supervision\\draw\\__init__.py": { + "loc": 0, + "lloc": 0, + "sloc": 0, + "comments": 0, + "multi": 0, + "blank": 0, + "single_comments": 0 + }, + "src\\supervision\\geometry\\core.py": { + "loc": 202, + "lloc": 82, + "sloc": 77, + "comments": 0, + "multi": 86, + "blank": 39, + "single_comments": 0 + }, + "src\\supervision\\geometry\\utils.py": { + "loc": 51, + "lloc": 15, + "sloc": 14, + "comments": 2, + "multi": 23, + "blank": 12, + "single_comments": 2 + }, + "src\\supervision\\geometry\\__init__.py": { + "loc": 0, + "lloc": 0, + "sloc": 0, + "comments": 0, + "multi": 0, + "blank": 0, + "single_comments": 0 + }, + "src\\supervision\\keypoint\\annotators.py": { + "loc": 13, + "lloc": 3, + "sloc": 11, + "comments": 1, + "multi": 0, + "blank": 2, + "single_comments": 0 + }, + "src\\supervision\\keypoint\\core.py": { + "loc": 8, + "lloc": 3, + "sloc": 6, + "comments": 1, + "multi": 0, + "blank": 2, + "single_comments": 0 + }, + "src\\supervision\\keypoint\\__init__.py": { + "loc": 13, + "lloc": 4, + "sloc": 11, + "comments": 0, + "multi": 0, + "blank": 2, + "single_comments": 0 + }, + "src\\supervision\\key_points\\annotators.py": { + "loc": 972, + "lloc": 332, + "sloc": 471, + "comments": 0, + "multi": 380, + "blank": 117, + "single_comments": 4 + }, + "src\\supervision\\key_points\\core.py": { + "loc": 1342, + "lloc": 371, + "sloc": 754, + "comments": 11, + "multi": 359, + "blank": 223, + "single_comments": 6 + }, + "src\\supervision\\key_points\\skeletons.py": { + "loc": 2646, + "lloc": 15, + "sloc": 2636, + "comments": 0, + "multi": 0, + "blank": 10, + "single_comments": 0 + }, + "src\\supervision\\key_points\\__init__.py": { + "loc": 0, + "lloc": 0, + "sloc": 0, + "comments": 0, + "multi": 0, + "blank": 0, + "single_comments": 0 + }, + "src\\supervision\\metrics\\core.py": { + "loc": 72, + "lloc": 28, + "sloc": 22, + "comments": 0, + "multi": 35, + "blank": 15, + "single_comments": 0 + }, + "src\\supervision\\metrics\\detection.py": { + "loc": 1148, + "lloc": 374, + "sloc": 588, + "comments": 6, + "multi": 415, + "blank": 136, + "single_comments": 9 + }, + "src\\supervision\\metrics\\f1_score.py": { + "loc": 793, + "lloc": 380, + "sloc": 500, + "comments": 12, + "multi": 166, + "blank": 112, + "single_comments": 15 + }, + "src\\supervision\\metrics\\mean_average_precision.py": { + "loc": 1697, + "lloc": 751, + "sloc": 1140, + "comments": 93, + "multi": 216, + "blank": 238, + "single_comments": 103 + }, + "src\\supervision\\metrics\\mean_average_recall.py": { + "loc": 793, + "lloc": 371, + "sloc": 507, + "comments": 5, + "multi": 158, + "blank": 120, + "single_comments": 8 + }, + "src\\supervision\\metrics\\precision.py": { + "loc": 826, + "lloc": 387, + "sloc": 520, + "comments": 11, + "multi": 168, + "blank": 121, + "single_comments": 17 + }, + "src\\supervision\\metrics\\recall.py": { + "loc": 768, + "lloc": 368, + "sloc": 492, + "comments": 3, + "multi": 155, + "blank": 115, + "single_comments": 6 + }, + "src\\supervision\\metrics\\__init__.py": { + "loc": 40, + "lloc": 8, + "sloc": 39, + "comments": 0, + "multi": 0, + "blank": 1, + "single_comments": 0 + }, + "src\\supervision\\metrics\\utils\\object_size.py": { + "loc": 241, + "lloc": 85, + "sloc": 86, + "comments": 1, + "multi": 110, + "blank": 44, + "single_comments": 1 + }, + "src\\supervision\\metrics\\utils\\utils.py": { + "loc": 9, + "lloc": 5, + "sloc": 9, + "comments": 1, + "multi": 0, + "blank": 0, + "single_comments": 0 + }, + "src\\supervision\\metrics\\utils\\__init__.py": { + "loc": 0, + "lloc": 0, + "sloc": 0, + "comments": 0, + "multi": 0, + "blank": 0, + "single_comments": 0 + }, + "src\\supervision\\tracker\\__init__.py": { + "loc": 0, + "lloc": 0, + "sloc": 0, + "comments": 0, + "multi": 0, + "blank": 0, + "single_comments": 0 + }, + "src\\supervision\\tracker\\byte_tracker\\core.py": { + "loc": 540, + "lloc": 260, + "sloc": 388, + "comments": 4, + "multi": 63, + "blank": 84, + "single_comments": 5 + }, + "src\\supervision\\tracker\\byte_tracker\\kalman_filter.py": { + "loc": 193, + "lloc": 65, + "sloc": 113, + "comments": 0, + "multi": 49, + "blank": 31, + "single_comments": 0 + }, + "src\\supervision\\tracker\\byte_tracker\\matching.py": { + "loc": 75, + "lloc": 45, + "sloc": 58, + "comments": 0, + "multi": 0, + "blank": 17, + "single_comments": 0 + }, + "src\\supervision\\tracker\\byte_tracker\\single_object_track.py": { + "loc": 288, + "lloc": 223, + "sloc": 220, + "comments": 0, + "multi": 15, + "blank": 52, + "single_comments": 1 + }, + "src\\supervision\\tracker\\byte_tracker\\utils.py": { + "loc": 37, + "lloc": 19, + "sloc": 16, + "comments": 0, + "multi": 12, + "blank": 8, + "single_comments": 1 + }, + "src\\supervision\\tracker\\byte_tracker\\__init__.py": { + "loc": 0, + "lloc": 0, + "sloc": 0, + "comments": 0, + "multi": 0, + "blank": 0, + "single_comments": 0 + }, + "src\\supervision\\utils\\conversion.py": { + "loc": 178, + "lloc": 74, + "sloc": 92, + "comments": 5, + "multi": 41, + "blank": 43, + "single_comments": 2 + }, + "src\\supervision\\utils\\file.py": { + "loc": 211, + "lloc": 72, + "sloc": 67, + "comments": 2, + "multi": 104, + "blank": 40, + "single_comments": 0 + }, + "src\\supervision\\utils\\image.py": { + "loc": 924, + "lloc": 280, + "sloc": 653, + "comments": 8, + "multi": 145, + "blank": 126, + "single_comments": 0 + }, + "src\\supervision\\utils\\internal.py": { + "loc": 208, + "lloc": 57, + "sloc": 77, + "comments": 0, + "multi": 90, + "blank": 41, + "single_comments": 0 + }, + "src\\supervision\\utils\\iterables.py": { + "loc": 103, + "lloc": 30, + "sloc": 28, + "comments": 0, + "multi": 56, + "blank": 19, + "single_comments": 0 + }, + "src\\supervision\\utils\\logger.py": { + "loc": 63, + "lloc": 24, + "sloc": 25, + "comments": 0, + "multi": 23, + "blank": 15, + "single_comments": 0 + }, + "src\\supervision\\utils\\notebook.py": { + "loc": 117, + "lloc": 36, + "sloc": 45, + "comments": 0, + "multi": 50, + "blank": 22, + "single_comments": 0 + }, + "src\\supervision\\utils\\video.py": { + "loc": 560, + "lloc": 242, + "sloc": 346, + "comments": 2, + "multi": 136, + "blank": 78, + "single_comments": 0 + }, + "src\\supervision\\utils\\__init__.py": { + "loc": 0, + "lloc": 0, + "sloc": 0, + "comments": 0, + "multi": 0, + "blank": 0, + "single_comments": 0 + }, + "src\\supervision\\validators\\__init__.py": { + "loc": 363, + "lloc": 151, + "sloc": 291, + "comments": 15, + "multi": 8, + "blank": 61, + "single_comments": 3 + } +} \ No newline at end of file diff --git a/metrics-after-radon/raw_por_arquivo_e_total_depois.csv b/metrics-after-radon/raw_por_arquivo_e_total_depois.csv new file mode 100644 index 0000000000..9b4d474e25 --- /dev/null +++ b/metrics-after-radon/raw_por_arquivo_e_total_depois.csv @@ -0,0 +1,82 @@ +arquivo,loc,lloc,sloc,comments,multi,blank,single_comments +src/supervision/annotators/__init__.py,0,0,0,0,0,0,0 +src/supervision/classification/__init__.py,0,0,0,0,0,0,0 +src/supervision/dataset/__init__.py,0,0,0,0,0,0,0 +src/supervision/dataset/formats/__init__.py,0,0,0,0,0,0,0 +src/supervision/detection/__init__.py,0,0,0,0,0,0,0 +src/supervision/detection/tools/__init__.py,0,0,0,0,0,0,0 +src/supervision/detection/utils/__init__.py,0,0,0,0,0,0,0 +src/supervision/draw/__init__.py,0,0,0,0,0,0,0 +src/supervision/geometry/__init__.py,0,0,0,0,0,0,0 +src/supervision/key_points/__init__.py,0,0,0,0,0,0,0 +src/supervision/metrics/utils/__init__.py,0,0,0,0,0,0,0 +src/supervision/tracker/__init__.py,0,0,0,0,0,0,0 +src/supervision/tracker/byte_tracker/__init__.py,0,0,0,0,0,0,0 +src/supervision/utils/__init__.py,0,0,0,0,0,0,0 +src/supervision/config.py,13,6,3,10,0,0,10 +src/supervision/assets/__init__.py,4,3,3,0,0,1,0 +src/supervision/draw/base.py,14,6,5,0,6,3,0 +src/supervision/keypoint/core.py,8,3,6,1,0,2,0 +src/supervision/annotators/base.py,12,7,9,0,0,3,0 +src/supervision/metrics/utils/utils.py,9,5,9,1,0,0,0 +src/supervision/keypoint/annotators.py,13,3,11,1,0,2,0 +src/supervision/keypoint/__init__.py,13,4,11,0,0,2,0 +src/supervision/geometry/utils.py,51,15,14,2,23,12,2 +src/supervision/tracker/byte_tracker/utils.py,37,19,16,0,12,8,1 +src/supervision/metrics/core.py,72,28,22,0,35,15,0 +src/supervision/utils/logger.py,63,24,25,0,23,15,0 +src/supervision/utils/iterables.py,103,30,28,0,56,19,0 +src/supervision/detection/utils/vlms.py,100,26,33,0,51,16,0 +src/supervision/detection/utils/polygons.py,116,29,37,2,57,20,2 +src/supervision/metrics/__init__.py,40,8,39,0,0,1,0 +src/supervision/utils/notebook.py,117,36,45,0,50,22,0 +src/supervision/assets/downloader.py,95,42,46,0,25,24,0 +src/supervision/detection/tools/smoother.py,184,57,58,6,82,38,6 +src/supervision/tracker/byte_tracker/matching.py,75,45,58,0,0,17,0 +src/supervision/classification/core.py,200,64,60,0,94,46,0 +src/supervision/assets/list.py,82,35,66,2,0,16,0 +src/supervision/utils/file.py,211,72,67,2,104,40,0 +src/supervision/geometry/core.py,202,82,77,0,86,39,0 +src/supervision/utils/internal.py,208,57,77,0,90,41,0 +src/supervision/metrics/utils/object_size.py,241,85,86,1,110,44,1 +src/supervision/detection/tools/json_sink.py,215,71,87,0,92,36,0 +src/supervision/utils/conversion.py,178,74,92,5,41,43,2 +src/supervision/detection/utils/boxes.py,417,100,108,5,234,71,4 +src/supervision/detection/tools/transformers.py,250,68,109,0,100,41,0 +src/supervision/tracker/byte_tracker/kalman_filter.py,193,65,113,0,49,31,0 +src/supervision/detection/tools/csv_sink.py,241,85,116,0,88,37,0 +src/supervision/dataset/utils.py,164,80,117,3,10,34,3 +src/supervision/detection/tools/polygon_zone.py,290,126,171,0,70,49,0 +src/supervision/detection/utils/converters.py,738,195,189,6,399,146,4 +src/supervision/dataset/formats/pascal_voc.py,355,155,197,15,88,55,15 +src/supervision/draw/utils.py,420,94,209,6,140,65,6 +src/supervision/draw/color.py,572,166,217,3,237,118,0 +src/supervision/tracker/byte_tracker/single_object_track.py,288,223,220,0,15,52,1 +src/supervision/annotators/utils.py,487,195,266,5,129,90,2 +src/supervision/detection/utils/internal.py,431,193,277,1,78,75,1 +src/supervision/__init__.py,287,39,283,1,0,3,1 +src/supervision/validators/__init__.py,363,151,291,15,8,61,3 +src/supervision/dataset/formats/yolo.py,477,185,319,2,99,57,2 +src/supervision/detection/utils/masks.py,475,161,341,7,54,73,7 +src/supervision/utils/video.py,560,242,346,2,136,78,0 +src/supervision/dataset/formats/coco.py,648,201,357,13,187,91,13 +src/supervision/tracker/byte_tracker/core.py,540,260,388,4,63,84,5 +src/supervision/detection/tools/inference_slicer.py,639,286,430,4,107,98,4 +src/supervision/dataset/core.py,969,267,448,2,389,128,4 +src/supervision/key_points/annotators.py,972,332,471,0,380,117,4 +src/supervision/detection/compact_mask.py,1306,434,477,68,545,224,60 +src/supervision/metrics/recall.py,768,368,492,3,155,115,6 +src/supervision/metrics/f1_score.py,793,380,500,12,166,112,15 +src/supervision/metrics/mean_average_recall.py,793,371,507,5,158,120,8 +src/supervision/metrics/precision.py,826,387,520,11,168,121,17 +src/supervision/detection/line_zone.py,944,341,586,2,224,132,2 +src/supervision/metrics/detection.py,1148,374,588,6,415,136,9 +src/supervision/detection/vlm.py,986,425,618,10,190,171,7 +src/supervision/utils/image.py,924,280,653,8,145,126,0 +src/supervision/detection/utils/iou_and_nms.py,1461,532,703,40,502,218,38 +src/supervision/key_points/core.py,1342,371,754,11,359,223,6 +src/supervision/metrics/mean_average_precision.py,1697,751,1140,93,216,238,103 +src/supervision/detection/core.py,2960,618,1758,21,640,550,12 +src/supervision/annotators/core.py,3382,1092,1811,28,1127,426,18 +src/supervision/key_points/skeletons.py,2646,15,2636,0,0,10,0 +TOTAL,35428,11544,20816,445,9107,5101,404 diff --git a/metrics-before-codecarbon/emissions_antes.csv b/metrics-before-codecarbon/emissions_antes.csv new file mode 100644 index 0000000000..e9cf9b22da --- /dev/null +++ b/metrics-before-codecarbon/emissions_antes.csv @@ -0,0 +1,3 @@ +timestamp,project_name,run_id,experiment_id,duration,emissions,emissions_rate,cpu_power,gpu_power,ram_power,cpu_energy,gpu_energy,ram_energy,energy_consumed,water_consumed,country_name,country_iso_code,region,cloud_provider,cloud_region,os,python_version,codecarbon_version,cpu_count,cpu_model,gpu_count,gpu_model,longitude,latitude,ram_total_size,tracking_mode,cpu_utilization_percent,gpu_utilization_percent,ram_utilization_percent,ram_used_gb,on_cloud,pue,wue +2026-06-25T14:37:10,supervision,e3fdd41c-7332-4157-a072-a44a4fdf0f64,5b0fa12a-3dd7-45bb-9766-cc326314d9f1,1.552282600000126,4.4246307305294404e-07,2.850402839359972e-07,5.4000003888000006,0.0,10.0,1.5778181636030325e-06,0.0,2.9211352777780225e-06,4.498953441381054e-06,0.0,Brazil,BRA,ceará,,,Windows-11-10.0.26200-SP0,3.14.0,3.2.8,16,AMD Ryzen 7 7735HS with Radeon Graphics,0,,-39.0159,-4.9702,5.691925048828125,machine,0.0,0,0.0,0.0,N,1.0,0.0 +2026-06-25T19:20:45,supervision,4195d116-a599-4945-bf30-7846b68ef8d4,5b0fa12a-3dd7-45bb-9766-cc326314d9f1,88.10822499999995,1.9512963025056644e-05,2.2146585094702176e-07,5.511116914810715,0.0,10.0,7.057550971867822e-05,0.0,0.00012783180944446338,0.0001984073191631415,0.0,Brazil,BRA,ceará,,,Windows-11-10.0.26200-SP0,3.12.10,3.2.8,16,AMD Ryzen 7 7735HS with Radeon Graphics,0,,-39.0159,-4.9702,5.691925048828125,machine,1.0325301204819277,0,88.94939759036144,5.062971138092409,N,1.0,0.0 diff --git a/metrics-before-pylint/pylint_antes.json b/metrics-before-pylint/pylint_antes.json new file mode 100644 index 0000000000..f20110cb01 --- /dev/null +++ b/metrics-before-pylint/pylint_antes.json @@ -0,0 +1,12729 @@ +[ + { + "type": "convention", + "module": "supervision.config", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\config.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\__init__.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 9, + "column": 0, + "endLine": 33, + "endColumn": 1, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.annotators.core import BackgroundOverlayAnnotator, BlurAnnotator, BoxAnnotator, BoxCornerAnnotator, CircleAnnotator, ColorAnnotator, ComparisonAnnotator, CropAnnotator, DotAnnotator, EllipseAnnotator, HaloAnnotator, HeatMapAnnotator, IconAnnotator, LabelAnnotator, MaskAnnotator, OrientedBoxAnnotator, PercentageBarAnnotator, PixelateAnnotator, PolygonAnnotator, RichLabelAnnotator, RoundBoxAnnotator, TraceAnnotator, TriangleAnnotator\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 34, + "column": 0, + "endLine": 39, + "endColumn": 1, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.annotators.utils import ColorLookup, hex_to_rgba, is_valid_hex, rgba_to_hex\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 40, + "column": 0, + "endLine": 40, + "endColumn": 59, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.classification.core import Classifications\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 41, + "column": 0, + "endLine": 45, + "endColumn": 1, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.dataset.core import BaseDataset, ClassificationDataset, DetectionDataset\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 46, + "column": 0, + "endLine": 46, + "endColumn": 73, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.dataset.formats.coco import get_coco_class_index_mapping\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 47, + "column": 0, + "endLine": 47, + "endColumn": 58, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.detection.compact_mask import CompactMask\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 48, + "column": 0, + "endLine": 48, + "endColumn": 49, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.detection.core import Detections\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 49, + "column": 0, + "endLine": 53, + "endColumn": 1, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.detection.line_zone import LineZone, LineZoneAnnotator, LineZoneAnnotatorMulticlass\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 54, + "column": 0, + "endLine": 54, + "endColumn": 56, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.detection.tools.csv_sink import CSVSink\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 55, + "column": 0, + "endLine": 55, + "endColumn": 72, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.detection.tools.inference_slicer import InferenceSlicer\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 56, + "column": 0, + "endLine": 56, + "endColumn": 58, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.detection.tools.json_sink import JSONSink\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 57, + "column": 0, + "endLine": 57, + "endColumn": 86, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.detection.tools.polygon_zone import PolygonZone, PolygonZoneAnnotator\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 58, + "column": 0, + "endLine": 58, + "endColumn": 67, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.detection.tools.smoother import DetectionsSmoother\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 59, + "column": 0, + "endLine": 66, + "endColumn": 1, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.detection.utils.boxes import clip_boxes, denormalize_boxes, move_boxes, pad_boxes, scale_boxes, xyxyxyxy_to_xyxy\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 67, + "column": 0, + "endLine": 81, + "endColumn": 1, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.detection.utils.converters import is_compressed_rle, mask_to_polygons, mask_to_rle, mask_to_xyxy, polygon_to_mask, polygon_to_xyxy, rle_to_mask, xcycwh_to_xyxy, xywh_to_xyxy, xyxy_to_mask, xyxy_to_polygons, xyxy_to_xcycarh, xyxy_to_xywh\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 82, + "column": 0, + "endLine": 96, + "endColumn": 1, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.detection.utils.iou_and_nms import OverlapFilter, OverlapMetric, box_iou, box_iou_batch, box_iou_batch_with_jaccard, box_non_max_merge, box_non_max_suppression, mask_iou_batch, mask_non_max_merge, mask_non_max_suppression, oriented_box_iou_batch, oriented_box_non_max_merge, oriented_box_non_max_suppression\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 97, + "column": 0, + "endLine": 103, + "endColumn": 1, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.detection.utils.masks import calculate_masks_centroids, contains_holes, contains_multiple_segments, filter_segments_by_distance, move_masks\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 104, + "column": 0, + "endLine": 107, + "endColumn": 1, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.detection.utils.polygons import approximate_polygon, filter_polygons_by_area\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 108, + "column": 0, + "endLine": 108, + "endColumn": 77, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.detection.utils.vlms import edit_distance, fuzzy_match_index\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 109, + "column": 0, + "endLine": 109, + "endColumn": 46, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.detection.vlm import LMM, VLM\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 110, + "column": 0, + "endLine": 110, + "endColumn": 54, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.draw.color import Color, ColorPalette\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 111, + "column": 0, + "endLine": 121, + "endColumn": 1, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.draw.utils import calculate_optimal_line_thickness, calculate_optimal_text_scale, draw_filled_polygon, draw_filled_rectangle, draw_image, draw_line, draw_polygon, draw_rectangle, draw_text\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 122, + "column": 0, + "endLine": 122, + "endColumn": 59, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.geometry.core import Point, Position, Rect\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 123, + "column": 0, + "endLine": 123, + "endColumn": 57, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.geometry.utils import get_polygon_center\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 124, + "column": 0, + "endLine": 132, + "endColumn": 1, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.key_points.annotators import EdgeAnnotator, VertexAnnotator, VertexEllipseAnnotator, VertexEllipseAreaAnnotator, VertexEllipseHaloAnnotator, VertexEllipseOutlineAnnotator, VertexLabelAnnotator\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 133, + "column": 0, + "endLine": 133, + "endColumn": 49, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.key_points.core import KeyPoints\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 134, + "column": 0, + "endLine": 134, + "endColumn": 79, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.metrics.detection import ConfusionMatrix, MeanAveragePrecision\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 135, + "column": 0, + "endLine": 135, + "endColumn": 59, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.tracker.byte_tracker.core import ByteTrack\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 136, + "column": 0, + "endLine": 136, + "endColumn": 69, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.utils.conversion import cv2_to_pillow, pillow_to_cv2\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 137, + "column": 0, + "endLine": 137, + "endColumn": 61, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.utils.file import list_files_with_extensions\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 138, + "column": 0, + "endLine": 148, + "endColumn": 1, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.utils.image import ImageSink, crop_image, get_image_resolution_wh, grayscale_image, letterbox_image, overlay_image, resize_image, scale_image, tint_image\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 149, + "column": 0, + "endLine": 149, + "endColumn": 67, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.utils.notebook import plot_image, plot_images_grid\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 150, + "column": 0, + "endLine": 156, + "endColumn": 1, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.utils.video import FPSMonitor, VideoInfo, VideoSink, get_video_frames_generator, process_video\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision.annotators.base", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\annotators\\base.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.annotators.base", + "obj": "BaseAnnotator", + "line": 7, + "column": 0, + "endLine": 7, + "endColumn": 19, + "path": "src\\supervision\\annotators\\base.py", + "symbol": "missing-class-docstring", + "message": "Missing class docstring", + "message-id": "C0115" + }, + { + "type": "convention", + "module": "supervision.annotators.base", + "obj": "BaseAnnotator.annotate", + "line": 9, + "column": 4, + "endLine": 9, + "endColumn": 16, + "path": "src\\supervision\\annotators\\base.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "refactor", + "module": "supervision.annotators.base", + "obj": "BaseAnnotator", + "line": 7, + "column": 0, + "endLine": 7, + "endColumn": 19, + "path": "src\\supervision\\annotators\\base.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "convention", + "module": "supervision.annotators.core", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-lines", + "message": "Too many lines in module (3294/1000)", + "message-id": "C0302" + }, + { + "type": "convention", + "module": "supervision.annotators.core", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "", + "line": 80, + "column": 11, + "endLine": 80, + "endColumn": 35, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'FONT_HERSHEY_SIMPLEX' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "_BaseLabelAnnotator", + "line": 83, + "column": 0, + "endLine": 83, + "endColumn": 25, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-instance-attributes", + "message": "Too many instance attributes (9/7)", + "message-id": "R0902" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "_BaseLabelAnnotator.__init__", + "line": 103, + "column": 4, + "endLine": 103, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (9/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "_BaseLabelAnnotator.__init__", + "line": 103, + "column": 4, + "endLine": 103, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (9/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "_BaseLabelAnnotator", + "line": 83, + "column": 0, + "endLine": 83, + "endColumn": 25, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "BoxAnnotator.annotate", + "line": 214, + "column": 4, + "endLine": 214, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'BoxAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "BoxAnnotator.annotate", + "line": 267, + "column": 12, + "endLine": 267, + "endColumn": 25, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'rectangle' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "BoxAnnotator", + "line": 190, + "column": 0, + "endLine": 190, + "endColumn": 18, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "OrientedBoxAnnotator.annotate", + "line": 301, + "column": 4, + "endLine": 301, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'OrientedBoxAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "OrientedBoxAnnotator.annotate", + "line": 359, + "column": 12, + "endLine": 359, + "endColumn": 28, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'drawContours' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "OrientedBoxAnnotator", + "line": 277, + "column": 0, + "endLine": 277, + "endColumn": 26, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "_paint_masks_by_area", + "line": 365, + "column": 0, + "endLine": 365, + "endColumn": 24, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-locals", + "message": "Too many local variables (16/15)", + "message-id": "R0914" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "MaskAnnotator.annotate", + "line": 451, + "column": 4, + "endLine": 451, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'MaskAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "MaskAnnotator.annotate", + "line": 505, + "column": 8, + "endLine": 505, + "endColumn": 23, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'addWeighted' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "MaskAnnotator", + "line": 423, + "column": 0, + "endLine": 423, + "endColumn": 19, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "PolygonAnnotator.annotate", + "line": 539, + "column": 4, + "endLine": 539, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'PolygonAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "PolygonAnnotator", + "line": 511, + "column": 0, + "endLine": 511, + "endColumn": 22, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "ColorAnnotator.annotate", + "line": 630, + "column": 4, + "endLine": 630, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'ColorAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "ColorAnnotator.annotate", + "line": 684, + "column": 12, + "endLine": 684, + "endColumn": 25, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'rectangle' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "ColorAnnotator.annotate", + "line": 692, + "column": 8, + "endLine": 692, + "endColumn": 23, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'addWeighted' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "ColorAnnotator", + "line": 606, + "column": 0, + "endLine": 606, + "endColumn": 20, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "HaloAnnotator.annotate", + "line": 730, + "column": 4, + "endLine": 730, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'HaloAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "HaloAnnotator.annotate", + "line": 786, + "column": 23, + "endLine": 786, + "endColumn": 31, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'blur' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "HaloAnnotator.annotate", + "line": 788, + "column": 15, + "endLine": 788, + "endColumn": 27, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'cvtColor' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "HaloAnnotator.annotate", + "line": 788, + "column": 42, + "endLine": 788, + "endColumn": 60, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'COLOR_BGR2GRAY' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "HaloAnnotator", + "line": 698, + "column": 0, + "endLine": 698, + "endColumn": 19, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "EllipseAnnotator.annotate", + "line": 830, + "column": 4, + "endLine": 830, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'EllipseAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "EllipseAnnotator.annotate", + "line": 885, + "column": 12, + "endLine": 885, + "endColumn": 23, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'ellipse' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "EllipseAnnotator.annotate", + "line": 894, + "column": 25, + "endLine": 894, + "endColumn": 35, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'LINE_4' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "EllipseAnnotator", + "line": 800, + "column": 0, + "endLine": 800, + "endColumn": 22, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "BoxCornerAnnotator.annotate", + "line": 926, + "column": 4, + "endLine": 926, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'BoxCornerAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "BoxCornerAnnotator.annotate", + "line": 983, + "column": 16, + "endLine": 983, + "endColumn": 24, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'line' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "BoxCornerAnnotator.annotate", + "line": 988, + "column": 16, + "endLine": 988, + "endColumn": 24, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'line' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "BoxCornerAnnotator", + "line": 899, + "column": 0, + "endLine": 899, + "endColumn": 24, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "CircleAnnotator.annotate", + "line": 1019, + "column": 4, + "endLine": 1019, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'CircleAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "CircleAnnotator.annotate", + "line": 1075, + "column": 12, + "endLine": 1075, + "endColumn": 22, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'circle' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "CircleAnnotator", + "line": 994, + "column": 0, + "endLine": 994, + "endColumn": 21, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "DotAnnotator.__init__", + "line": 1092, + "column": 4, + "endLine": 1092, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (6/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "DotAnnotator.__init__", + "line": 1092, + "column": 4, + "endLine": 1092, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (6/5)", + "message-id": "R0917" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "DotAnnotator.annotate", + "line": 1122, + "column": 4, + "endLine": 1122, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'DotAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "DotAnnotator.annotate", + "line": 1177, + "column": 12, + "endLine": 1177, + "endColumn": 22, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'circle' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "DotAnnotator.annotate", + "line": 1187, + "column": 16, + "endLine": 1187, + "endColumn": 26, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'circle' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "DotAnnotator", + "line": 1086, + "column": 0, + "endLine": 1086, + "endColumn": 18, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "LabelAnnotator.__init__", + "line": 1202, + "column": 4, + "endLine": 1202, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (11/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "LabelAnnotator.__init__", + "line": 1202, + "column": 4, + "endLine": 1202, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (11/5)", + "message-id": "R0917" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "LabelAnnotator.annotate", + "line": 1252, + "column": 4, + "endLine": 1252, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'LabelAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "LabelAnnotator._get_label_properties", + "line": 1333, + "column": 4, + "endLine": 1333, + "endColumn": 29, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-locals", + "message": "Too many local variables (18/15)", + "message-id": "R0914" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "LabelAnnotator._get_label_properties", + "line": 1354, + "column": 35, + "endLine": 1354, + "endColumn": 50, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'getTextSize' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "LabelAnnotator._draw_labels", + "line": 1387, + "column": 4, + "endLine": 1387, + "endColumn": 20, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-locals", + "message": "Too many local variables (18/15)", + "message-id": "R0914" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "LabelAnnotator._draw_labels", + "line": 1437, + "column": 34, + "endLine": 1437, + "endColumn": 49, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'getTextSize' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "LabelAnnotator._draw_labels", + "line": 1446, + "column": 30, + "endLine": 1446, + "endColumn": 45, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'getTextSize' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "LabelAnnotator._draw_labels", + "line": 1456, + "column": 16, + "endLine": 1456, + "endColumn": 27, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'putText' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "LabelAnnotator._draw_labels", + "line": 1464, + "column": 29, + "endLine": 1464, + "endColumn": 40, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'LINE_AA' member", + "message-id": "E1101" + }, + { + "type": "convention", + "module": "supervision.annotators.core", + "obj": "LabelAnnotator.draw_rounded_rectangle", + "line": 1470, + "column": 4, + "endLine": 1470, + "endColumn": 30, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "LabelAnnotator.draw_rounded_rectangle", + "line": 1494, + "column": 12, + "endLine": 1494, + "endColumn": 25, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'rectangle' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "LabelAnnotator.draw_rounded_rectangle", + "line": 1502, + "column": 12, + "endLine": 1502, + "endColumn": 22, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'circle' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "RichLabelAnnotator.__init__", + "line": 1518, + "column": 4, + "endLine": 1518, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (11/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "RichLabelAnnotator.__init__", + "line": 1518, + "column": 4, + "endLine": 1518, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (11/5)", + "message-id": "R0917" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "RichLabelAnnotator.annotate", + "line": 1569, + "column": 4, + "endLine": 1569, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'RichLabelAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "RichLabelAnnotator._get_label_properties", + "line": 1649, + "column": 4, + "endLine": 1649, + "endColumn": 29, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-locals", + "message": "Too many local variables (24/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "RichLabelAnnotator._draw_labels", + "line": 1701, + "column": 4, + "endLine": 1701, + "endColumn": 20, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-locals", + "message": "Too many local variables (23/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "RichLabelAnnotator", + "line": 1512, + "column": 0, + "endLine": 1512, + "endColumn": 24, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "IconAnnotator.annotate", + "line": 1812, + "column": 4, + "endLine": 1812, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'IconAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "IconAnnotator.annotate", + "line": 1880, + "column": 23, + "endLine": 1880, + "endColumn": 57, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-function-args", + "message": "Too many positional arguments for classmethod call", + "message-id": "E1121" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "IconAnnotator._load_icon", + "line": 1885, + "column": 15, + "endLine": 1885, + "endColumn": 25, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'imread' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "IconAnnotator._load_icon", + "line": 1885, + "column": 37, + "endLine": 1885, + "endColumn": 57, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'IMREAD_UNCHANGED' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "IconAnnotator", + "line": 1788, + "column": 0, + "endLine": 1788, + "endColumn": 19, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "BlurAnnotator.annotate", + "line": 1914, + "column": 4, + "endLine": 1914, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'BlurAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "BlurAnnotator.annotate", + "line": 1968, + "column": 18, + "endLine": 1968, + "endColumn": 26, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'blur' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "BlurAnnotator", + "line": 1897, + "column": 0, + "endLine": 1897, + "endColumn": 19, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "TraceAnnotator.__init__", + "line": 1985, + "column": 4, + "endLine": 1985, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (6/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "TraceAnnotator.__init__", + "line": 1985, + "column": 4, + "endLine": 1985, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (6/5)", + "message-id": "R0917" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "TraceAnnotator.annotate", + "line": 2017, + "column": 4, + "endLine": 2017, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'TraceAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "TraceAnnotator.annotate", + "line": 2017, + "column": 4, + "endLine": 2017, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-locals", + "message": "Too many local variables (17/15)", + "message-id": "R0914" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "TraceAnnotator.annotate", + "line": 2109, + "column": 16, + "endLine": 2109, + "endColumn": 29, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'polylines' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "TraceAnnotator", + "line": 1974, + "column": 0, + "endLine": 1974, + "endColumn": 20, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "HeatMapAnnotator.__init__", + "line": 2126, + "column": 4, + "endLine": 2126, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (6/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "HeatMapAnnotator.__init__", + "line": 2126, + "column": 4, + "endLine": 2126, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (6/5)", + "message-id": "R0917" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "HeatMapAnnotator.annotate", + "line": 2155, + "column": 4, + "endLine": 2155, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'HeatMapAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "HeatMapAnnotator.annotate", + "line": 2206, + "column": 12, + "endLine": 2206, + "endColumn": 22, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'circle' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "HeatMapAnnotator.annotate", + "line": 2220, + "column": 19, + "endLine": 2220, + "endColumn": 27, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'blur' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "HeatMapAnnotator.annotate", + "line": 2223, + "column": 15, + "endLine": 2223, + "endColumn": 27, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'cvtColor' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "HeatMapAnnotator.annotate", + "line": 2223, + "column": 33, + "endLine": 2223, + "endColumn": 50, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'COLOR_HSV2BGR' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "HeatMapAnnotator.annotate", + "line": 2224, + "column": 15, + "endLine": 2224, + "endColumn": 27, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'cvtColor' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "HeatMapAnnotator.annotate", + "line": 2224, + "column": 61, + "endLine": 2224, + "endColumn": 79, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'COLOR_GRAY2BGR' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "HeatMapAnnotator.annotate", + "line": 2225, + "column": 22, + "endLine": 2225, + "endColumn": 37, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'addWeighted' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "HeatMapAnnotator", + "line": 2119, + "column": 0, + "endLine": 2119, + "endColumn": 22, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "PixelateAnnotator.annotate", + "line": 2250, + "column": 4, + "endLine": 2250, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'PixelateAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "PixelateAnnotator.annotate", + "line": 2305, + "column": 42, + "endLine": 2305, + "endColumn": 50, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'mean' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "PixelateAnnotator.annotate", + "line": 2308, + "column": 42, + "endLine": 2308, + "endColumn": 50, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'mean' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "PixelateAnnotator.annotate", + "line": 2311, + "column": 28, + "endLine": 2311, + "endColumn": 38, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'resize' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "PixelateAnnotator.annotate", + "line": 2314, + "column": 30, + "endLine": 2314, + "endColumn": 40, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'resize' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "PixelateAnnotator.annotate", + "line": 2317, + "column": 30, + "endLine": 2317, + "endColumn": 47, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'INTER_NEAREST' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "PixelateAnnotator", + "line": 2231, + "column": 0, + "endLine": 2231, + "endColumn": 23, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "TriangleAnnotator.__init__", + "line": 2331, + "column": 4, + "endLine": 2331, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (7/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "TriangleAnnotator.__init__", + "line": 2331, + "column": 4, + "endLine": 2331, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (7/5)", + "message-id": "R0917" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "TriangleAnnotator.annotate", + "line": 2364, + "column": 4, + "endLine": 2364, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'TriangleAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "TriangleAnnotator.annotate", + "line": 2427, + "column": 12, + "endLine": 2427, + "endColumn": 24, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'fillPoly' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "TriangleAnnotator.annotate", + "line": 2437, + "column": 16, + "endLine": 2437, + "endColumn": 29, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'polylines' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "TriangleAnnotator", + "line": 2325, + "column": 0, + "endLine": 2325, + "endColumn": 23, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "RoundBoxAnnotator.annotate", + "line": 2480, + "column": 4, + "endLine": 2480, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'RoundBoxAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "RoundBoxAnnotator.annotate", + "line": 2480, + "column": 4, + "endLine": 2480, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-locals", + "message": "Too many local variables (19/15)", + "message-id": "R0914" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "RoundBoxAnnotator.annotate", + "line": 2561, + "column": 16, + "endLine": 2561, + "endColumn": 27, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'ellipse' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "RoundBoxAnnotator.annotate", + "line": 2572, + "column": 16, + "endLine": 2572, + "endColumn": 24, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'line' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "RoundBoxAnnotator", + "line": 2447, + "column": 0, + "endLine": 2447, + "endColumn": 23, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "PercentageBarAnnotator.__init__", + "line": 2588, + "column": 4, + "endLine": 2588, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (7/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "PercentageBarAnnotator.__init__", + "line": 2588, + "column": 4, + "endLine": 2588, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (7/5)", + "message-id": "R0917" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "PercentageBarAnnotator.annotate", + "line": 2624, + "column": 4, + "endLine": 2624, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'PercentageBarAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "PercentageBarAnnotator.annotate", + "line": 2702, + "column": 12, + "endLine": 2702, + "endColumn": 25, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'rectangle' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "PercentageBarAnnotator.annotate", + "line": 2712, + "column": 12, + "endLine": 2712, + "endColumn": 25, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'rectangle' member", + "message-id": "E1101" + }, + { + "type": "convention", + "module": "supervision.annotators.core", + "obj": "PercentageBarAnnotator.calculate_border_coordinates", + "line": 2722, + "column": 4, + "endLine": 2722, + "endColumn": 36, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "PercentageBarAnnotator.calculate_border_coordinates", + "line": 2728, + "column": 8, + "endLine": 2748, + "endColumn": 54, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-else-return", + "message": "Unnecessary \"elif\" after \"return\", remove the leading \"el\" from \"elif\"", + "message-id": "R1705" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "PercentageBarAnnotator.calculate_border_coordinates", + "line": 2736, + "column": 13, + "endLine": 2736, + "endColumn": 79, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "consider-using-in", + "message": "Consider merging these comparisons with 'in' by using 'position in (Position.CENTER, Position.CENTER_OF_MASS)'. Use a set instead if elements are hashable.", + "message-id": "R1714" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "PercentageBarAnnotator.calculate_border_coordinates", + "line": 2722, + "column": 4, + "endLine": 2722, + "endColumn": 36, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-return-statements", + "message": "Too many return statements (9/6)", + "message-id": "R0911" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "PercentageBarAnnotator.calculate_border_coordinates", + "line": 2722, + "column": 4, + "endLine": 2722, + "endColumn": 36, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "inconsistent-return-statements", + "message": "Either all return statements in a function should return an expression, or none of them should.", + "message-id": "R1710" + }, + { + "type": "convention", + "module": "supervision.annotators.core", + "obj": "PercentageBarAnnotator.validate_custom_values", + "line": 2783, + "column": 4, + "endLine": 2783, + "endColumn": 30, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "CropAnnotator.annotate", + "line": 2823, + "column": 4, + "endLine": 2823, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'CropAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "CropAnnotator.annotate", + "line": 2823, + "column": 4, + "endLine": 2823, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-locals", + "message": "Too many local variables (16/15)", + "message-id": "R0914" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "CropAnnotator.annotate", + "line": 2884, + "column": 20, + "endLine": 2884, + "endColumn": 85, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "redundant-keyword-arg", + "message": "Argument 'image' passed by position and keyword in classmethod call", + "message-id": "E1124" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "CropAnnotator.annotate", + "line": 2893, + "column": 12, + "endLine": 2893, + "endColumn": 25, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'rectangle' member", + "message-id": "E1101" + }, + { + "type": "convention", + "module": "supervision.annotators.core", + "obj": "CropAnnotator.calculate_crop_coordinates", + "line": 2904, + "column": 4, + "endLine": 2904, + "endColumn": 34, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "CropAnnotator.calculate_crop_coordinates", + "line": 2910, + "column": 8, + "endLine": 2942, + "endColumn": 78, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-else-return", + "message": "Unnecessary \"elif\" after \"return\", remove the leading \"el\" from \"elif\"", + "message-id": "R1705" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "CropAnnotator.calculate_crop_coordinates", + "line": 2924, + "column": 13, + "endLine": 2924, + "endColumn": 79, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "consider-using-in", + "message": "Consider merging these comparisons with 'in' by using 'position in (Position.CENTER, Position.CENTER_OF_MASS)'. Use a set instead if elements are hashable.", + "message-id": "R1714" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "CropAnnotator.calculate_crop_coordinates", + "line": 2904, + "column": 4, + "endLine": 2904, + "endColumn": 34, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-return-statements", + "message": "Too many return statements (9/6)", + "message-id": "R0911" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "CropAnnotator.calculate_crop_coordinates", + "line": 2904, + "column": 4, + "endLine": 2904, + "endColumn": 34, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "inconsistent-return-statements", + "message": "Either all return statements in a function should return an expression, or none of them should.", + "message-id": "R1710" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "BackgroundOverlayAnnotator.annotate", + "line": 2978, + "column": 4, + "endLine": 2978, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'BackgroundOverlayAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "BackgroundOverlayAnnotator.annotate", + "line": 3016, + "column": 8, + "endLine": 3016, + "endColumn": 23, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'addWeighted' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "BackgroundOverlayAnnotator", + "line": 2945, + "column": 0, + "endLine": 2945, + "endColumn": 32, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "ComparisonAnnotator", + "line": 3032, + "column": 0, + "endLine": 3032, + "endColumn": 25, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-instance-attributes", + "message": "Too many instance attributes (9/7)", + "message-id": "R0902" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "ComparisonAnnotator.__init__", + "line": 3043, + "column": 4, + "endLine": 3043, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (8/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "ComparisonAnnotator._draw_labels", + "line": 3226, + "column": 4, + "endLine": 3226, + "endColumn": 20, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-locals", + "message": "Too many local variables (19/15)", + "message-id": "R0914" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "ComparisonAnnotator._draw_labels", + "line": 3256, + "column": 26, + "endLine": 3256, + "endColumn": 41, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'getTextSize' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "ComparisonAnnotator", + "line": 3032, + "column": 0, + "endLine": 3032, + "endColumn": 25, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "convention", + "module": "supervision.annotators.utils", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\annotators\\utils.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.annotators.utils", + "obj": "ColorLookup.list", + "line": 36, + "column": 4, + "endLine": 36, + "endColumn": 12, + "path": "src\\supervision\\annotators\\utils.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.annotators.utils", + "obj": "resolve_color_idx", + "line": 40, + "column": 0, + "endLine": 40, + "endColumn": 21, + "path": "src\\supervision\\annotators\\utils.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "refactor", + "module": "supervision.annotators.utils", + "obj": "resolve_color_idx", + "line": 51, + "column": 4, + "endLine": 76, + "endColumn": 56, + "path": "src\\supervision\\annotators\\utils.py", + "symbol": "no-else-return", + "message": "Unnecessary \"elif\" after \"return\", remove the leading \"el\" from \"elif\"", + "message-id": "R1705" + }, + { + "type": "convention", + "module": "supervision.annotators.utils", + "obj": "resolve_text_background_xyxy", + "line": 80, + "column": 0, + "endLine": 80, + "endColumn": 32, + "path": "src\\supervision\\annotators\\utils.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "refactor", + "module": "supervision.annotators.utils", + "obj": "resolve_text_background_xyxy", + "line": 88, + "column": 4, + "endLine": 130, + "endColumn": 9, + "path": "src\\supervision\\annotators\\utils.py", + "symbol": "no-else-return", + "message": "Unnecessary \"elif\" after \"return\", remove the leading \"el\" from \"elif\"", + "message-id": "R1705" + }, + { + "type": "refactor", + "module": "supervision.annotators.utils", + "obj": "resolve_text_background_xyxy", + "line": 99, + "column": 9, + "endLine": 99, + "endColumn": 75, + "path": "src\\supervision\\annotators\\utils.py", + "symbol": "consider-using-in", + "message": "Consider merging these comparisons with 'in' by using 'position in (Position.CENTER, Position.CENTER_OF_MASS)'. Use a set instead if elements are hashable.", + "message-id": "R1714" + }, + { + "type": "refactor", + "module": "supervision.annotators.utils", + "obj": "resolve_text_background_xyxy", + "line": 80, + "column": 0, + "endLine": 80, + "endColumn": 32, + "path": "src\\supervision\\annotators\\utils.py", + "symbol": "too-many-return-statements", + "message": "Too many return statements (9/6)", + "message-id": "R0911" + }, + { + "type": "refactor", + "module": "supervision.annotators.utils", + "obj": "resolve_text_background_xyxy", + "line": 80, + "column": 0, + "endLine": 80, + "endColumn": 32, + "path": "src\\supervision\\annotators\\utils.py", + "symbol": "inconsistent-return-statements", + "message": "Either all return statements in a function should return an expression, or none of them should.", + "message-id": "R1710" + }, + { + "type": "convention", + "module": "supervision.annotators.utils", + "obj": "get_color_by_index", + "line": 133, + "column": 0, + "endLine": 133, + "endColumn": 22, + "path": "src\\supervision\\annotators\\utils.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.annotators.utils", + "obj": "resolve_color", + "line": 139, + "column": 0, + "endLine": 139, + "endColumn": 17, + "path": "src\\supervision\\annotators\\utils.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.annotators.utils", + "obj": "validate_labels", + "line": 231, + "column": 0, + "endLine": 231, + "endColumn": 19, + "path": "src\\supervision\\annotators\\utils.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.annotators.utils", + "obj": "Trace", + "line": 332, + "column": 0, + "endLine": 332, + "endColumn": 11, + "path": "src\\supervision\\annotators\\utils.py", + "symbol": "missing-class-docstring", + "message": "Missing class docstring", + "message-id": "C0115" + }, + { + "type": "convention", + "module": "supervision.annotators.utils", + "obj": "Trace.put", + "line": 347, + "column": 4, + "endLine": 347, + "endColumn": 11, + "path": "src\\supervision\\annotators\\utils.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.annotators.utils", + "obj": "Trace.get", + "line": 377, + "column": 4, + "endLine": 377, + "endColumn": 11, + "path": "src\\supervision\\annotators\\utils.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.annotators.utils", + "obj": "rgba_to_hex", + "line": 427, + "column": 11, + "endLine": 427, + "endColumn": 38, + "path": "src\\supervision\\annotators\\utils.py", + "symbol": "consider-using-f-string", + "message": "Formatting a regular string which could be an f-string", + "message-id": "C0209" + }, + { + "type": "convention", + "module": "supervision.assets.downloader", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\assets\\downloader.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.assets.list", + "obj": "", + "line": 28, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\assets\\list.py", + "symbol": "line-too-long", + "message": "Line too long (147/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.assets.list", + "obj": "", + "line": 29, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\assets\\list.py", + "symbol": "line-too-long", + "message": "Line too long (147/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.assets.list", + "obj": "", + "line": 30, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\assets\\list.py", + "symbol": "line-too-long", + "message": "Line too long (147/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.assets.list", + "obj": "", + "line": 31, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\assets\\list.py", + "symbol": "line-too-long", + "message": "Line too long (147/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.assets.list", + "obj": "", + "line": 32, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\assets\\list.py", + "symbol": "line-too-long", + "message": "Line too long (147/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.assets.list", + "obj": "", + "line": 33, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\assets\\list.py", + "symbol": "line-too-long", + "message": "Line too long (147/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.assets.list", + "obj": "", + "line": 34, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\assets\\list.py", + "symbol": "line-too-long", + "message": "Line too long (147/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.assets.list", + "obj": "", + "line": 35, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\assets\\list.py", + "symbol": "line-too-long", + "message": "Line too long (147/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.assets.list", + "obj": "", + "line": 36, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\assets\\list.py", + "symbol": "line-too-long", + "message": "Line too long (147/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.assets.list", + "obj": "", + "line": 37, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\assets\\list.py", + "symbol": "line-too-long", + "message": "Line too long (147/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.assets.list", + "obj": "", + "line": 38, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\assets\\list.py", + "symbol": "line-too-long", + "message": "Line too long (147/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.assets.list", + "obj": "", + "line": 39, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\assets\\list.py", + "symbol": "line-too-long", + "message": "Line too long (147/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.assets.list", + "obj": "", + "line": 62, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\assets\\list.py", + "symbol": "line-too-long", + "message": "Line too long (139/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.assets.list", + "obj": "", + "line": 63, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\assets\\list.py", + "symbol": "line-too-long", + "message": "Line too long (139/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.assets.list", + "obj": "", + "line": 64, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\assets\\list.py", + "symbol": "line-too-long", + "message": "Line too long (139/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.assets.list", + "obj": "", + "line": 65, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\assets\\list.py", + "symbol": "line-too-long", + "message": "Line too long (139/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.assets.list", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\assets\\list.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.assets.list", + "obj": "Assets", + "line": 7, + "column": 0, + "endLine": 7, + "endColumn": 12, + "path": "src\\supervision\\assets\\list.py", + "symbol": "missing-class-docstring", + "message": "Missing class docstring", + "message-id": "C0115" + }, + { + "type": "convention", + "module": "supervision.assets.list", + "obj": "Assets.list", + "line": 19, + "column": 4, + "endLine": 19, + "endColumn": 12, + "path": "src\\supervision\\assets\\list.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.assets", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\assets\\__init__.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.classification.core", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\classification\\core.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.classification.core", + "obj": "Classifications", + "line": 33, + "column": 0, + "endLine": 33, + "endColumn": 21, + "path": "src\\supervision\\classification\\core.py", + "symbol": "missing-class-docstring", + "message": "Missing class docstring", + "message-id": "C0115" + }, + { + "type": "convention", + "module": "supervision.dataset.core", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\dataset\\core.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.dataset.core", + "obj": "BaseDataset", + "line": 41, + "column": 0, + "endLine": 41, + "endColumn": 17, + "path": "src\\supervision\\dataset\\core.py", + "symbol": "missing-class-docstring", + "message": "Missing class docstring", + "message-id": "C0115" + }, + { + "type": "convention", + "module": "supervision.dataset.core", + "obj": "BaseDataset.split", + "line": 47, + "column": 4, + "endLine": 47, + "endColumn": 13, + "path": "src\\supervision\\dataset\\core.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "error", + "module": "supervision.dataset.core", + "obj": "DetectionDataset._get_image", + "line": 105, + "column": 16, + "endLine": 105, + "endColumn": 26, + "path": "src\\supervision\\dataset\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'imread' member", + "message-id": "E1101" + }, + { + "type": "warning", + "module": "supervision.dataset.core", + "obj": "DetectionDataset.merge.is_in_memory", + "line": 280, + "column": 23, + "endLine": 280, + "endColumn": 48, + "path": "src\\supervision\\dataset\\core.py", + "symbol": "protected-access", + "message": "Access to a protected member _images_in_memory of a client class", + "message-id": "W0212" + }, + { + "type": "warning", + "module": "supervision.dataset.core", + "obj": "DetectionDataset.merge.is_lazy", + "line": 283, + "column": 23, + "endLine": 283, + "endColumn": 48, + "path": "src\\supervision\\dataset\\core.py", + "symbol": "protected-access", + "message": "Access to a protected member _images_in_memory of a client class", + "message-id": "W0212" + }, + { + "type": "refactor", + "module": "supervision.dataset.core", + "obj": "DetectionDataset.merge", + "line": 285, + "column": 24, + "endLine": 285, + "endColumn": 80, + "path": "src\\supervision\\dataset\\core.py", + "symbol": "use-a-generator", + "message": "Use a generator instead 'all(is_in_memory(dataset) for dataset in dataset_list)'", + "message-id": "R1729" + }, + { + "type": "refactor", + "module": "supervision.dataset.core", + "obj": "DetectionDataset.merge", + "line": 286, + "column": 19, + "endLine": 286, + "endColumn": 70, + "path": "src\\supervision\\dataset\\core.py", + "symbol": "use-a-generator", + "message": "Use a generator instead 'all(is_lazy(dataset) for dataset in dataset_list)'", + "message-id": "R1729" + }, + { + "type": "warning", + "module": "supervision.dataset.core", + "obj": "DetectionDataset.merge", + "line": 294, + "column": 36, + "endLine": 294, + "endColumn": 61, + "path": "src\\supervision\\dataset\\core.py", + "symbol": "protected-access", + "message": "Access to a protected member _images_in_memory of a client class", + "message-id": "W0212" + }, + { + "type": "warning", + "module": "supervision.dataset.core", + "obj": "DetectionDataset.as_pascal_voc", + "line": 384, + "column": 21, + "endLine": 384, + "endColumn": 48, + "path": "src\\supervision\\dataset\\core.py", + "symbol": "unspecified-encoding", + "message": "Using open without explicitly specifying an encoding", + "message-id": "W1514" + }, + { + "type": "refactor", + "module": "supervision.dataset.core", + "obj": "DetectionDataset.as_yolo", + "line": 504, + "column": 4, + "endLine": 504, + "endColumn": 15, + "path": "src\\supervision\\dataset\\core.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (7/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.dataset.core", + "obj": "DetectionDataset.as_yolo", + "line": 504, + "column": 4, + "endLine": 504, + "endColumn": 15, + "path": "src\\supervision\\dataset\\core.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (7/5)", + "message-id": "R0917" + }, + { + "type": "convention", + "module": "supervision.dataset.core", + "obj": "DetectionDataset.as_yolo", + "line": 552, + "column": 12, + "endLine": 552, + "endColumn": 27, + "path": "src\\supervision\\dataset\\core.py", + "symbol": "import-outside-toplevel", + "message": "Import outside toplevel (warnings)", + "message-id": "C0415" + }, + { + "type": "refactor", + "module": "supervision.dataset.core", + "obj": "DetectionDataset.as_coco", + "line": 626, + "column": 4, + "endLine": 626, + "endColumn": 15, + "path": "src\\supervision\\dataset\\core.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (7/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.dataset.core", + "obj": "DetectionDataset.as_coco", + "line": 626, + "column": 4, + "endLine": 626, + "endColumn": 15, + "path": "src\\supervision\\dataset\\core.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (7/5)", + "message-id": "R0917" + }, + { + "type": "error", + "module": "supervision.dataset.core", + "obj": "ClassificationDataset._get_image", + "line": 770, + "column": 16, + "endLine": 770, + "endColumn": 26, + "path": "src\\supervision\\dataset\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'imread' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.dataset.core", + "obj": "ClassificationDataset.as_folder_structure", + "line": 919, + "column": 12, + "endLine": 919, + "endColumn": 23, + "path": "src\\supervision\\dataset\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'imwrite' member", + "message-id": "E1101" + }, + { + "type": "convention", + "module": "supervision.dataset.utils", + "obj": "", + "line": 29, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\dataset\\utils.py", + "symbol": "line-too-long", + "message": "Line too long (111/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.dataset.utils", + "obj": "", + "line": 37, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\dataset\\utils.py", + "symbol": "line-too-long", + "message": "Line too long (111/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.dataset.utils", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\dataset\\utils.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.dataset.utils", + "obj": "approximate_mask_with_polygons", + "line": 52, + "column": 0, + "endLine": 52, + "endColumn": 34, + "path": "src\\supervision\\dataset\\utils.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.dataset.utils", + "obj": "merge_class_lists", + "line": 80, + "column": 0, + "endLine": 80, + "endColumn": 21, + "path": "src\\supervision\\dataset\\utils.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.dataset.utils", + "obj": "map_detections_class_id", + "line": 108, + "column": 0, + "endLine": 108, + "endColumn": 27, + "path": "src\\supervision\\dataset\\utils.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.dataset.utils", + "obj": "save_dataset_images", + "line": 128, + "column": 0, + "endLine": 128, + "endColumn": 23, + "path": "src\\supervision\\dataset\\utils.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "warning", + "module": "supervision.dataset.utils", + "obj": "save_dataset_images", + "line": 132, + "column": 25, + "endLine": 132, + "endColumn": 50, + "path": "src\\supervision\\dataset\\utils.py", + "symbol": "protected-access", + "message": "Access to a protected member _images_in_memory of a client class", + "message-id": "W0212" + }, + { + "type": "warning", + "module": "supervision.dataset.utils", + "obj": "save_dataset_images", + "line": 133, + "column": 20, + "endLine": 133, + "endColumn": 45, + "path": "src\\supervision\\dataset\\utils.py", + "symbol": "protected-access", + "message": "Access to a protected member _images_in_memory of a client class", + "message-id": "W0212" + }, + { + "type": "error", + "module": "supervision.dataset.utils", + "obj": "save_dataset_images", + "line": 134, + "column": 12, + "endLine": 134, + "endColumn": 23, + "path": "src\\supervision\\dataset\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'imwrite' member", + "message-id": "E1101" + }, + { + "type": "convention", + "module": "supervision.dataset.formats.coco", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\dataset\\formats\\coco.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.dataset.formats.coco", + "obj": "coco_categories_to_classes", + "line": 29, + "column": 0, + "endLine": 29, + "endColumn": 30, + "path": "src\\supervision\\dataset\\formats\\coco.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.dataset.formats.coco", + "obj": "build_coco_class_index_mapping", + "line": 36, + "column": 0, + "endLine": 36, + "endColumn": 34, + "path": "src\\supervision\\dataset\\formats\\coco.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.dataset.formats.coco", + "obj": "group_coco_annotations_by_image_id", + "line": 84, + "column": 0, + "endLine": 84, + "endColumn": 38, + "path": "src\\supervision\\dataset\\formats\\coco.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.dataset.formats.coco", + "obj": "coco_annotations_to_masks", + "line": 96, + "column": 0, + "endLine": 96, + "endColumn": 29, + "path": "src\\supervision\\dataset\\formats\\coco.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.coco", + "obj": "coco_annotations_to_detections", + "line": 193, + "column": 15, + "endLine": 195, + "endColumn": 9, + "path": "src\\supervision\\dataset\\formats\\coco.py", + "symbol": "use-dict-literal", + "message": "Consider using '{\"iscrowd\": np.asarray(iscrowd, dtype=int), \"area\": np.asarray(area, dtype=float), ... }' instead of a call to 'dict'.", + "message-id": "R1735" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.coco", + "obj": "detections_to_coco_annotations", + "line": 217, + "column": 0, + "endLine": 217, + "endColumn": 34, + "path": "src\\supervision\\dataset\\formats\\coco.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (6/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.coco", + "obj": "detections_to_coco_annotations", + "line": 217, + "column": 0, + "endLine": 217, + "endColumn": 34, + "path": "src\\supervision\\dataset\\formats\\coco.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (6/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.coco", + "obj": "detections_to_coco_annotations", + "line": 217, + "column": 0, + "endLine": 217, + "endColumn": 34, + "path": "src\\supervision\\dataset\\formats\\coco.py", + "symbol": "too-many-locals", + "message": "Too many local variables (20/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.coco", + "obj": "detections_to_coco_annotations", + "line": 217, + "column": 0, + "endLine": 217, + "endColumn": 34, + "path": "src\\supervision\\dataset\\formats\\coco.py", + "symbol": "too-many-branches", + "message": "Too many branches (14/12)", + "message-id": "R0912" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.coco", + "obj": "load_coco_annotations", + "line": 396, + "column": 0, + "endLine": 396, + "endColumn": 25, + "path": "src\\supervision\\dataset\\formats\\coco.py", + "symbol": "too-many-locals", + "message": "Too many local variables (22/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.coco", + "obj": "save_coco_annotations", + "line": 507, + "column": 0, + "endLine": 507, + "endColumn": 25, + "path": "src\\supervision\\dataset\\formats\\coco.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (7/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.coco", + "obj": "save_coco_annotations", + "line": 507, + "column": 0, + "endLine": 507, + "endColumn": 25, + "path": "src\\supervision\\dataset\\formats\\coco.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (7/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.coco", + "obj": "save_coco_annotations", + "line": 507, + "column": 0, + "endLine": 507, + "endColumn": 25, + "path": "src\\supervision\\dataset\\formats\\coco.py", + "symbol": "too-many-locals", + "message": "Too many local variables (22/15)", + "message-id": "R0914" + }, + { + "type": "convention", + "module": "supervision.dataset.formats.pascal_voc", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\dataset\\formats\\pascal_voc.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.pascal_voc", + "obj": "object_to_pascal_voc", + "line": 19, + "column": 0, + "endLine": 19, + "endColumn": 24, + "path": "src\\supervision\\dataset\\formats\\pascal_voc.py", + "symbol": "too-many-locals", + "message": "Too many local variables (17/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.pascal_voc", + "obj": "detections_to_pascal_voc", + "line": 84, + "column": 0, + "endLine": 84, + "endColumn": 28, + "path": "src\\supervision\\dataset\\formats\\pascal_voc.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (7/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.pascal_voc", + "obj": "detections_to_pascal_voc", + "line": 84, + "column": 0, + "endLine": 84, + "endColumn": 28, + "path": "src\\supervision\\dataset\\formats\\pascal_voc.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (7/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.pascal_voc", + "obj": "detections_to_pascal_voc", + "line": 84, + "column": 0, + "endLine": 84, + "endColumn": 28, + "path": "src\\supervision\\dataset\\formats\\pascal_voc.py", + "symbol": "too-many-locals", + "message": "Too many local variables (28/15)", + "message-id": "R0914" + }, + { + "type": "error", + "module": "supervision.dataset.formats.pascal_voc", + "obj": "load_pascal_voc_annotations", + "line": 223, + "column": 16, + "endLine": 223, + "endColumn": 26, + "path": "src\\supervision\\dataset\\formats\\pascal_voc.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'imread' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.pascal_voc", + "obj": "detections_from_xml_obj", + "line": 235, + "column": 0, + "endLine": 235, + "endColumn": 27, + "path": "src\\supervision\\dataset\\formats\\pascal_voc.py", + "symbol": "too-many-locals", + "message": "Too many local variables (24/15)", + "message-id": "R0914" + }, + { + "type": "convention", + "module": "supervision.dataset.formats.pascal_voc", + "obj": "parse_polygon_points", + "line": 339, + "column": 0, + "endLine": 339, + "endColumn": 24, + "path": "src\\supervision\\dataset\\formats\\pascal_voc.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.dataset.formats.yolo", + "obj": "", + "line": 252, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\dataset\\formats\\yolo.py", + "symbol": "line-too-long", + "message": "Line too long (124/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.dataset.formats.yolo", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\dataset\\formats\\yolo.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.yolo", + "obj": "_with_seg_mask", + "line": 67, + "column": 11, + "endLine": 67, + "endColumn": 57, + "path": "src\\supervision\\dataset\\formats\\yolo.py", + "symbol": "use-a-generator", + "message": "Use a generator instead 'any(len(line.split()) > 5 for line in lines)'", + "message-id": "R1729" + }, + { + "type": "warning", + "module": "supervision.dataset.formats.yolo", + "obj": "_extract_class_names.", + "line": 121, + "column": 43, + "endLine": 121, + "endColumn": 59, + "path": "src\\supervision\\dataset\\formats\\yolo.py", + "symbol": "unnecessary-lambda", + "message": "Lambda may not be necessary", + "message-id": "W0108" + }, + { + "type": "convention", + "module": "supervision.dataset.formats.yolo", + "obj": "yolo_annotations_to_detections", + "line": 138, + "column": 0, + "endLine": 138, + "endColumn": 34, + "path": "src\\supervision\\dataset\\formats\\yolo.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.yolo", + "obj": "yolo_annotations_to_detections", + "line": 138, + "column": 0, + "endLine": 138, + "endColumn": 34, + "path": "src\\supervision\\dataset\\formats\\yolo.py", + "symbol": "too-many-locals", + "message": "Too many local variables (19/15)", + "message-id": "R0914" + }, + { + "type": "error", + "module": "supervision.dataset.formats.yolo", + "obj": "yolo_annotations_to_detections", + "line": 172, + "column": 19, + "endLine": 172, + "endColumn": 54, + "path": "src\\supervision\\dataset\\formats\\yolo.py", + "symbol": "too-many-function-args", + "message": "Too many positional arguments for method call", + "message-id": "E1121" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.yolo", + "obj": "load_yolo_annotations", + "line": 187, + "column": 0, + "endLine": 187, + "endColumn": 25, + "path": "src\\supervision\\dataset\\formats\\yolo.py", + "symbol": "too-many-locals", + "message": "Too many local variables (18/15)", + "message-id": "R0914" + }, + { + "type": "convention", + "module": "supervision.dataset.formats.yolo", + "obj": "object_to_yolo", + "line": 274, + "column": 0, + "endLine": 274, + "endColumn": 18, + "path": "src\\supervision\\dataset\\formats\\yolo.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.yolo", + "obj": "object_to_yolo", + "line": 274, + "column": 0, + "endLine": 274, + "endColumn": 18, + "path": "src\\supervision\\dataset\\formats\\yolo.py", + "symbol": "too-many-locals", + "message": "Too many local variables (17/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.yolo", + "obj": "object_to_yolo", + "line": 281, + "column": 4, + "endLine": 293, + "endColumn": 50, + "path": "src\\supervision\\dataset\\formats\\yolo.py", + "symbol": "no-else-return", + "message": "Unnecessary \"else\" after \"return\", remove the \"else\" and de-indent the code inside it", + "message-id": "R1705" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.yolo", + "obj": "detections_to_yolo_annotations", + "line": 296, + "column": 0, + "endLine": 296, + "endColumn": 34, + "path": "src\\supervision\\dataset\\formats\\yolo.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (6/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.yolo", + "obj": "detections_to_yolo_annotations", + "line": 296, + "column": 0, + "endLine": 296, + "endColumn": 34, + "path": "src\\supervision\\dataset\\formats\\yolo.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (6/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.yolo", + "obj": "detections_to_yolo_annotations", + "line": 296, + "column": 0, + "endLine": 296, + "endColumn": 34, + "path": "src\\supervision\\dataset\\formats\\yolo.py", + "symbol": "too-many-locals", + "message": "Too many local variables (16/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.yolo", + "obj": "save_yolo_annotations", + "line": 422, + "column": 0, + "endLine": 422, + "endColumn": 25, + "path": "src\\supervision\\dataset\\formats\\yolo.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (6/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.yolo", + "obj": "save_yolo_annotations", + "line": 422, + "column": 0, + "endLine": 422, + "endColumn": 25, + "path": "src\\supervision\\dataset\\formats\\yolo.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (6/5)", + "message-id": "R0917" + }, + { + "type": "convention", + "module": "supervision.dataset.formats.yolo", + "obj": "save_data_yaml", + "line": 474, + "column": 0, + "endLine": 474, + "endColumn": 18, + "path": "src\\supervision\\dataset\\formats\\yolo.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.compact_mask", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\compact_mask.py", + "symbol": "too-many-lines", + "message": "Too many lines in module (1306/1000)", + "message-id": "C0302" + }, + { + "type": "convention", + "module": "supervision.detection.compact_mask", + "obj": "_resize_crop", + "line": 369, + "column": 4, + "endLine": 369, + "endColumn": 14, + "path": "src\\supervision\\detection\\compact_mask.py", + "symbol": "import-outside-toplevel", + "message": "Import outside toplevel (cv2)", + "message-id": "C0415" + }, + { + "type": "error", + "module": "supervision.detection.compact_mask", + "obj": "_resize_crop", + "line": 381, + "column": 14, + "endLine": 381, + "endColumn": 24, + "path": "src\\supervision\\detection\\compact_mask.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'resize' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.compact_mask", + "obj": "_resize_crop", + "line": 384, + "column": 22, + "endLine": 384, + "endColumn": 39, + "path": "src\\supervision\\detection\\compact_mask.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'INTER_NEAREST' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.detection.compact_mask", + "obj": "CompactMask.from_dense", + "line": 476, + "column": 4, + "endLine": 476, + "endColumn": 18, + "path": "src\\supervision\\detection\\compact_mask.py", + "symbol": "too-many-locals", + "message": "Too many local variables (24/15)", + "message-id": "R0914" + }, + { + "type": "warning", + "module": "supervision.detection.compact_mask", + "obj": "CompactMask.merge", + "line": 958, + "column": 22, + "endLine": 958, + "endColumn": 48, + "path": "src\\supervision\\detection\\compact_mask.py", + "symbol": "protected-access", + "message": "Access to a protected member _image_shape of a client class", + "message-id": "W0212" + }, + { + "type": "warning", + "module": "supervision.detection.compact_mask", + "obj": "CompactMask.merge", + "line": 960, + "column": 15, + "endLine": 960, + "endColumn": 30, + "path": "src\\supervision\\detection\\compact_mask.py", + "symbol": "protected-access", + "message": "Access to a protected member _image_shape of a client class", + "message-id": "W0212" + }, + { + "type": "warning", + "module": "supervision.detection.compact_mask", + "obj": "CompactMask.merge", + "line": 963, + "column": 40, + "endLine": 963, + "endColumn": 55, + "path": "src\\supervision\\detection\\compact_mask.py", + "symbol": "protected-access", + "message": "Access to a protected member _image_shape of a client class", + "message-id": "W0212" + }, + { + "type": "warning", + "module": "supervision.detection.compact_mask", + "obj": "CompactMask.merge", + "line": 971, + "column": 28, + "endLine": 971, + "endColumn": 36, + "path": "src\\supervision\\detection\\compact_mask.py", + "symbol": "protected-access", + "message": "Access to a protected member _rles of a client class", + "message-id": "W0212" + }, + { + "type": "warning", + "module": "supervision.detection.compact_mask", + "obj": "CompactMask.merge", + "line": 976, + "column": 13, + "endLine": 976, + "endColumn": 28, + "path": "src\\supervision\\detection\\compact_mask.py", + "symbol": "protected-access", + "message": "Access to a protected member _crop_shapes of a client class", + "message-id": "W0212" + }, + { + "type": "warning", + "module": "supervision.detection.compact_mask", + "obj": "CompactMask.merge", + "line": 979, + "column": 13, + "endLine": 979, + "endColumn": 24, + "path": "src\\supervision\\detection\\compact_mask.py", + "symbol": "protected-access", + "message": "Access to a protected member _offsets of a client class", + "message-id": "W0212" + }, + { + "type": "refactor", + "module": "supervision.detection.compact_mask", + "obj": "CompactMask.repack", + "line": 984, + "column": 4, + "endLine": 984, + "endColumn": 14, + "path": "src\\supervision\\detection\\compact_mask.py", + "symbol": "too-many-locals", + "message": "Too many local variables (18/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.detection.compact_mask", + "obj": "CompactMask.with_offset", + "line": 1067, + "column": 4, + "endLine": 1067, + "endColumn": 19, + "path": "src\\supervision\\detection\\compact_mask.py", + "symbol": "too-many-locals", + "message": "Too many local variables (29/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.detection.compact_mask", + "obj": "CompactMask.resize", + "line": 1192, + "column": 4, + "endLine": 1192, + "endColumn": 14, + "path": "src\\supervision\\detection\\compact_mask.py", + "symbol": "too-many-locals", + "message": "Too many local variables (27/15)", + "message-id": "R0914" + }, + { + "type": "convention", + "module": "supervision.detection.compact_mask", + "obj": "CompactMask.resize", + "line": 1233, + "column": 8, + "endLine": 1233, + "endColumn": 57, + "path": "src\\supervision\\detection\\compact_mask.py", + "symbol": "import-outside-toplevel", + "message": "Import outside toplevel (concurrent.futures.ThreadPoolExecutor)", + "message-id": "C0415" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 73, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (143/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 77, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (115/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 93, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (119/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 109, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (121/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 437, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (101/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 983, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (132/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 984, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (132/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 985, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (132/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 986, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (132/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 987, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (132/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 988, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (132/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 989, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (132/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 990, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (132/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 991, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (132/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 1044, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (102/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 1406, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (204/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 1420, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (106/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 1469, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (132/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 1470, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (132/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 1471, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (132/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 1472, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (132/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 1473, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (132/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 1474, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (132/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 1475, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (132/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 1476, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (132/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 1477, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (132/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 1478, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (132/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 1531, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (102/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 1864, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (204/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 1878, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (106/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 2580, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (119/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "too-many-lines", + "message": "Too many lines in module (2934/1000)", + "message-id": "C0302" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "Detections.__iter__", + "line": 196, + "column": 8, + "endLine": 204, + "endColumn": 13, + "path": "src\\supervision\\detection\\core.py", + "symbol": "consider-using-enumerate", + "message": "Consider using enumerate instead of iterating with range and len", + "message-id": "C0200" + }, + { + "type": "refactor", + "module": "supervision.detection.core", + "obj": "Detections.from_transformers", + "line": 560, + "column": 8, + "endLine": 570, + "endColumn": 13, + "path": "src\\supervision\\detection\\core.py", + "symbol": "no-else-return", + "message": "Unnecessary \"else\" after \"return\", remove the \"else\" and de-indent the code inside it", + "message-id": "R1705" + }, + { + "type": "refactor", + "module": "supervision.detection.core", + "obj": "Detections.from_sam3", + "line": 718, + "column": 4, + "endLine": 718, + "endColumn": 17, + "path": "src\\supervision\\detection\\core.py", + "symbol": "too-many-locals", + "message": "Too many local variables (23/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.detection.core", + "obj": "Detections.from_sam3", + "line": 718, + "column": 4, + "endLine": 718, + "endColumn": 17, + "path": "src\\supervision\\detection\\core.py", + "symbol": "too-many-branches", + "message": "Too many branches (15/12)", + "message-id": "R0912" + }, + { + "type": "refactor", + "module": "supervision.detection.core", + "obj": "Detections.from_azure_analyze_image", + "line": 843, + "column": 4, + "endLine": 843, + "endColumn": 32, + "path": "src\\supervision\\detection\\core.py", + "symbol": "too-many-locals", + "message": "Too many local variables (19/15)", + "message-id": "R0914" + }, + { + "type": "warning", + "module": "supervision.detection.core", + "obj": "Detections.from_lmm", + "line": 1447, + "column": 16, + "endLine": 1450, + "endColumn": 17, + "path": "src\\supervision\\detection\\core.py", + "symbol": "raise-missing-from", + "message": "Consider explicitly re-raising using 'except ValueError as exc' and 'raise ValueError(f\"Invalid LMM string '{lmm}'. Must be one of {[m.value for m in LMM]}\") from exc'", + "message-id": "W0707" + }, + { + "type": "refactor", + "module": "supervision.detection.core", + "obj": "Detections.from_vlm", + "line": 1461, + "column": 4, + "endLine": 1461, + "endColumn": 16, + "path": "src\\supervision\\detection\\core.py", + "symbol": "too-many-return-statements", + "message": "Too many return statements (10/6)", + "message-id": "R0911" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "Detections.merge.stack_or_none", + "line": 2185, + "column": 19, + "endLine": 2185, + "endColumn": 43, + "path": "src\\supervision\\detection\\core.py", + "symbol": "unnecessary-dunder-call", + "message": "Unnecessarily calls dunder method __getattribute__. Access attribute directly or use getattr built-in function.", + "message-id": "C2801" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "Detections.merge.stack_or_none", + "line": 2187, + "column": 19, + "endLine": 2187, + "endColumn": 43, + "path": "src\\supervision\\detection\\core.py", + "symbol": "unnecessary-dunder-call", + "message": "Unnecessarily calls dunder method __getattribute__. Access attribute directly or use getattr built-in function.", + "message-id": "C2801" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "Detections.merge.stack_or_none", + "line": 2190, + "column": 25, + "endLine": 2190, + "endColumn": 49, + "path": "src\\supervision\\detection\\core.py", + "symbol": "unnecessary-dunder-call", + "message": "Unnecessarily calls dunder method __getattribute__. Access attribute directly or use getattr built-in function.", + "message-id": "C2801" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "Detections.merge.stack_or_none", + "line": 2195, + "column": 30, + "endLine": 2195, + "endColumn": 54, + "path": "src\\supervision\\detection\\core.py", + "symbol": "unnecessary-dunder-call", + "message": "Unnecessarily calls dunder method __getattribute__. Access attribute directly or use getattr built-in function.", + "message-id": "C2801" + }, + { + "type": "refactor", + "module": "supervision.detection.core", + "obj": "Detections.get_anchors_coordinates", + "line": 2236, + "column": 8, + "endLine": 2278, + "endColumn": 75, + "path": "src\\supervision\\detection\\core.py", + "symbol": "no-else-return", + "message": "Unnecessary \"elif\" after \"return\", remove the leading \"el\" from \"elif\"", + "message-id": "R1705" + }, + { + "type": "refactor", + "module": "supervision.detection.core", + "obj": "Detections.get_anchors_coordinates", + "line": 2217, + "column": 4, + "endLine": 2217, + "endColumn": 31, + "path": "src\\supervision\\detection\\core.py", + "symbol": "too-many-return-statements", + "message": "Too many return statements (10/6)", + "message-id": "R0911" + }, + { + "type": "refactor", + "module": "supervision.detection.core", + "obj": "Detections", + "line": 68, + "column": 0, + "endLine": 68, + "endColumn": 16, + "path": "src\\supervision\\detection\\core.py", + "symbol": "too-many-public-methods", + "message": "Too many public methods (26/20)", + "message-id": "R0904" + }, + { + "type": "refactor", + "module": "supervision.detection.core", + "obj": "_merge_detection_group", + "line": 2678, + "column": 0, + "endLine": 2678, + "endColumn": 26, + "path": "src\\supervision\\detection\\core.py", + "symbol": "too-many-locals", + "message": "Too many local variables (18/15)", + "message-id": "R0914" + }, + { + "type": "error", + "module": "supervision.detection.core", + "obj": "merge_inner_detection_object_pair", + "line": 2815, + "column": 13, + "endLine": 2815, + "endColumn": 30, + "path": "src\\supervision\\detection\\core.py", + "symbol": "no-member", + "message": "Module 'supervision.detection.core' has no 'xyxy' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.core", + "obj": "merge_inner_detection_object_pair", + "line": 2817, + "column": 7, + "endLine": 2817, + "endColumn": 30, + "path": "src\\supervision\\detection\\core.py", + "symbol": "no-member", + "message": "Module 'supervision.detection.core' has no 'confidence' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.core", + "obj": "merge_inner_detection_object_pair", + "line": 2820, + "column": 15, + "endLine": 2820, + "endColumn": 38, + "path": "src\\supervision\\detection\\core.py", + "symbol": "no-member", + "message": "Module 'supervision.detection.core' has no 'confidence' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.core", + "obj": "merge_inner_detection_object_pair", + "line": 2825, + "column": 31, + "endLine": 2825, + "endColumn": 54, + "path": "src\\supervision\\detection\\core.py", + "symbol": "no-member", + "message": "Module 'supervision.detection.core' has no 'confidence' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.core", + "obj": "merge_inner_detection_object_pair", + "line": 2834, + "column": 7, + "endLine": 2834, + "endColumn": 24, + "path": "src\\supervision\\detection\\core.py", + "symbol": "no-member", + "message": "Module 'supervision.detection.core' has no 'mask' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.core", + "obj": "merge_inner_detection_object_pair", + "line": 2837, + "column": 36, + "endLine": 2837, + "endColumn": 53, + "path": "src\\supervision\\detection\\core.py", + "symbol": "no-member", + "message": "Module 'supervision.detection.core' has no 'mask' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.core", + "obj": "merge_inner_detection_object_pair", + "line": 2839, + "column": 7, + "endLine": 2839, + "endColumn": 30, + "path": "src\\supervision\\detection\\core.py", + "symbol": "no-member", + "message": "Module 'supervision.detection.core' has no 'confidence' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.core", + "obj": "merge_inner_detection_object_pair", + "line": 2841, + "column": 9, + "endLine": 2841, + "endColumn": 32, + "path": "src\\supervision\\detection\\core.py", + "symbol": "no-member", + "message": "Module 'supervision.detection.core' has no 'confidence' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.core", + "obj": "merge_inner_detection_object_pair", + "line": 2846, + "column": 31, + "endLine": 2846, + "endColumn": 52, + "path": "src\\supervision\\detection\\core.py", + "symbol": "no-member", + "message": "Module 'supervision.detection.core' has no 'metadata' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.core", + "obj": "merge_inner_detections_objects", + "line": 2873, + "column": 19, + "endLine": 2873, + "endColumn": 29, + "path": "src\\supervision\\detection\\core.py", + "symbol": "unsubscriptable-object", + "message": "Value 'detections' is unsubscriptable", + "message-id": "E1136" + }, + { + "type": "error", + "module": "supervision.detection.core", + "obj": "merge_inner_detections_objects", + "line": 2874, + "column": 24, + "endLine": 2874, + "endColumn": 34, + "path": "src\\supervision\\detection\\core.py", + "symbol": "unsubscriptable-object", + "message": "Value 'detections' is unsubscriptable", + "message-id": "E1136" + }, + { + "type": "error", + "module": "supervision.detection.core", + "obj": "merge_inner_detections_objects", + "line": 2883, + "column": 23, + "endLine": 2883, + "endColumn": 84, + "path": "src\\supervision\\detection\\core.py", + "symbol": "too-many-function-args", + "message": "Too many positional arguments for classmethod call", + "message-id": "E1121" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "validate_fields_both_defined_or_none", + "line": 2931, + "column": 0, + "endLine": 2931, + "endColumn": 40, + "path": "src\\supervision\\detection\\core.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.line_zone", + "obj": "", + "line": 33, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "line-too-long", + "message": "Line too long (118/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.line_zone", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "refactor", + "module": "supervision.detection.line_zone", + "obj": "LineZone", + "line": 26, + "column": 0, + "endLine": 26, + "endColumn": 14, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "too-many-instance-attributes", + "message": "Too many instance attributes (8/7)", + "message-id": "R0902" + }, + { + "type": "convention", + "module": "supervision.detection.line_zone", + "obj": "LineZone.in_count", + "line": 130, + "column": 4, + "endLine": 130, + "endColumn": 16, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.line_zone", + "obj": "LineZone.out_count", + "line": 134, + "column": 4, + "endLine": 134, + "endColumn": 17, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.line_zone", + "obj": "LineZone.in_count_per_class", + "line": 138, + "column": 4, + "endLine": 138, + "endColumn": 26, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.line_zone", + "obj": "LineZone.out_count_per_class", + "line": 142, + "column": 4, + "endLine": 142, + "endColumn": 27, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "refactor", + "module": "supervision.detection.line_zone", + "obj": "LineZone._update_class_id_to_name", + "line": 323, + "column": 24, + "endLine": 326, + "endColumn": 13, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "unnecessary-comprehension", + "message": "Unnecessary use of a comprehension, use dict(zip(detections.class_id, class_names)) instead.", + "message-id": "R1721" + }, + { + "type": "convention", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator", + "line": 330, + "column": 0, + "endLine": 330, + "endColumn": 23, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "missing-class-docstring", + "message": "Missing class docstring", + "message-id": "C0115" + }, + { + "type": "refactor", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator", + "line": 330, + "column": 0, + "endLine": 330, + "endColumn": 23, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "too-many-instance-attributes", + "message": "Too many instance attributes (14/7)", + "message-id": "R0902" + }, + { + "type": "refactor", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator.__init__", + "line": 331, + "column": 4, + "endLine": 331, + "endColumn": 16, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (14/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator.__init__", + "line": 331, + "column": 4, + "endLine": 331, + "endColumn": 16, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (14/5)", + "message-id": "R0917" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator.annotate", + "line": 402, + "column": 8, + "endLine": 402, + "endColumn": 16, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'line' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator.annotate", + "line": 408, + "column": 21, + "endLine": 408, + "endColumn": 32, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'LINE_AA' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator.annotate", + "line": 411, + "column": 8, + "endLine": 411, + "endColumn": 18, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'circle' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator.annotate", + "line": 417, + "column": 21, + "endLine": 417, + "endColumn": 32, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'LINE_AA' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator.annotate", + "line": 419, + "column": 8, + "endLine": 419, + "endColumn": 18, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'circle' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator.annotate", + "line": 425, + "column": 21, + "endLine": 425, + "endColumn": 32, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'LINE_AA' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator._calculate_anchor_in_frame", + "line": 481, + "column": 4, + "endLine": 481, + "endColumn": 34, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "too-many-locals", + "message": "Too many local variables (16/15)", + "message-id": "R0914" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator._draw_basic_label", + "line": 566, + "column": 25, + "endLine": 566, + "endColumn": 40, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'getTextSize' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator._draw_basic_label", + "line": 567, + "column": 18, + "endLine": 567, + "endColumn": 42, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'FONT_HERSHEY_SIMPLEX' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator._draw_oriented_label", + "line": 623, + "column": 34, + "endLine": 623, + "endColumn": 49, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'getTextSize' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator._draw_oriented_label", + "line": 624, + "column": 18, + "endLine": 624, + "endColumn": 42, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'FONT_HERSHEY_SIMPLEX' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator._draw_oriented_label", + "line": 635, + "column": 16, + "endLine": 635, + "endColumn": 63, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "too-many-function-args", + "message": "Too many positional arguments for classmethod call", + "message-id": "E1121" + }, + { + "type": "refactor", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator._make_label_image", + "line": 641, + "column": 4, + "endLine": 641, + "endColumn": 25, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (8/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator._make_label_image", + "line": 641, + "column": 4, + "endLine": 641, + "endColumn": 25, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "too-many-locals", + "message": "Too many local variables (18/15)", + "message-id": "R0914" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator._make_label_image", + "line": 668, + "column": 34, + "endLine": 668, + "endColumn": 49, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'getTextSize' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator._make_label_image", + "line": 669, + "column": 18, + "endLine": 669, + "endColumn": 42, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'FONT_HERSHEY_SIMPLEX' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator._make_label_image", + "line": 679, + "column": 36, + "endLine": 685, + "endColumn": 9, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "use-dict-literal", + "message": "Consider using '{\"text\": text, \"text_anchor\": annotation_center, \"text_scale\": text_scale, ... }' instead of a call to 'dict'.", + "message-id": "R1735" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator._make_label_image", + "line": 702, + "column": 25, + "endLine": 702, + "endColumn": 33, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'flip' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator._make_label_image", + "line": 705, + "column": 26, + "endLine": 705, + "endColumn": 49, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'getRotationMatrix2D' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator._make_label_image", + "line": 708, + "column": 21, + "endLine": 708, + "endColumn": 35, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'warpAffine' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator", + "line": 330, + "column": 0, + "endLine": 330, + "endColumn": 23, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "convention", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotatorMulticlass", + "line": 713, + "column": 0, + "endLine": 713, + "endColumn": 33, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "missing-class-docstring", + "message": "Missing class docstring", + "message-id": "C0115" + }, + { + "type": "refactor", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotatorMulticlass", + "line": 713, + "column": 0, + "endLine": 713, + "endColumn": 33, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "too-many-instance-attributes", + "message": "Too many instance attributes (9/7)", + "message-id": "R0902" + }, + { + "type": "refactor", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotatorMulticlass.__init__", + "line": 714, + "column": 4, + "endLine": 714, + "endColumn": 16, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (9/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotatorMulticlass.annotate", + "line": 769, + "column": 4, + "endLine": 769, + "endColumn": 16, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "too-many-locals", + "message": "Too many local variables (26/15)", + "message-id": "R0914" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotatorMulticlass.annotate", + "line": 817, + "column": 38, + "endLine": 817, + "endColumn": 53, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'getTextSize' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotatorMulticlass.annotate", + "line": 818, + "column": 22, + "endLine": 818, + "endColumn": 46, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'FONT_HERSHEY_SIMPLEX' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotatorMulticlass.annotate", + "line": 855, + "column": 29, + "endLine": 855, + "endColumn": 44, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'getTextSize' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotatorMulticlass.annotate", + "line": 856, + "column": 22, + "endLine": 856, + "endColumn": 46, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'FONT_HERSHEY_SIMPLEX' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotatorMulticlass.annotate", + "line": 862, + "column": 12, + "endLine": 862, + "endColumn": 23, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'putText' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotatorMulticlass.annotate", + "line": 866, + "column": 25, + "endLine": 866, + "endColumn": 49, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'FONT_HERSHEY_SIMPLEX' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotatorMulticlass.annotate", + "line": 870, + "column": 25, + "endLine": 870, + "endColumn": 36, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'LINE_AA' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotatorMulticlass", + "line": 713, + "column": 0, + "endLine": 713, + "endColumn": 33, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "convention", + "module": "supervision.detection.vlm", + "obj": "", + "line": 437, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "line-too-long", + "message": "Line too long (172/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.vlm", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.detection.vlm", + "obj": "LMM.list", + "line": 50, + "column": 4, + "endLine": 50, + "endColumn": 12, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.vlm", + "obj": "LMM.from_value", + "line": 54, + "column": 4, + "endLine": 54, + "endColumn": 18, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "warning", + "module": "supervision.detection.vlm", + "obj": "LMM.from_value", + "line": 66, + "column": 16, + "endLine": 66, + "endColumn": 88, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "raise-missing-from", + "message": "Consider explicitly re-raising using 'except ValueError as exc' and 'raise ValueError(f'Invalid value: {value}. Must be one of {cls.list()}') from exc'", + "message-id": "W0707" + }, + { + "type": "convention", + "module": "supervision.detection.vlm", + "obj": "VLM.list", + "line": 97, + "column": 4, + "endLine": 97, + "endColumn": 12, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.vlm", + "obj": "VLM.from_value", + "line": 101, + "column": 4, + "endLine": 101, + "endColumn": 18, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "warning", + "module": "supervision.detection.vlm", + "obj": "VLM.from_value", + "line": 109, + "column": 16, + "endLine": 109, + "endColumn": 88, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "raise-missing-from", + "message": "Consider explicitly re-raising using 'except ValueError as exc' and 'raise ValueError(f'Invalid value: {value}. Must be one of {cls.list()}') from exc'", + "message-id": "W0707" + }, + { + "type": "warning", + "module": "supervision.detection.vlm", + "obj": "_validate_vlm_parameters", + "line": 184, + "column": 12, + "endLine": 186, + "endColumn": 13, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "raise-missing-from", + "message": "Consider explicitly re-raising using 'except ValueError as exc' and 'raise ValueError(f'Invalid vlm value: {vlm}. Must be one of {[e.value for e in VLM]}') from exc'", + "message-id": "W0707" + }, + { + "type": "convention", + "module": "supervision.detection.vlm", + "obj": "validate_vlm_parameters", + "line": 211, + "column": 0, + "endLine": 211, + "endColumn": 27, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "warning", + "module": "supervision.detection.vlm", + "obj": "recover_truncated_qwen_2_5_vl_response", + "line": 301, + "column": 11, + "endLine": 301, + "endColumn": 20, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "broad-exception-caught", + "message": "Catching too general exception Exception", + "message-id": "W0718" + }, + { + "type": "refactor", + "module": "supervision.detection.vlm", + "obj": "from_qwen_2_5_vl", + "line": 305, + "column": 0, + "endLine": 305, + "endColumn": 20, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "too-many-locals", + "message": "Too many local variables (20/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.detection.vlm", + "obj": "from_deepseek_vl_2", + "line": 424, + "column": 0, + "endLine": 424, + "endColumn": 22, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "too-many-locals", + "message": "Too many local variables (23/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.detection.vlm", + "obj": "from_florence_2", + "line": 495, + "column": 0, + "endLine": 495, + "endColumn": 19, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "too-many-locals", + "message": "Too many local variables (18/15)", + "message-id": "R0914" + }, + { + "type": "error", + "module": "supervision.detection.vlm", + "obj": "from_florence_2", + "line": 539, + "column": 19, + "endLine": 539, + "endColumn": 45, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "too-many-function-args", + "message": "Too many positional arguments for method call", + "message-id": "E1121" + }, + { + "type": "refactor", + "module": "supervision.detection.vlm", + "obj": "from_florence_2", + "line": 495, + "column": 0, + "endLine": 495, + "endColumn": 19, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "too-many-return-statements", + "message": "Too many return statements (7/6)", + "message-id": "R0911" + }, + { + "type": "refactor", + "module": "supervision.detection.vlm", + "obj": "from_google_gemini_2_0", + "line": 591, + "column": 0, + "endLine": 591, + "endColumn": 26, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "too-many-locals", + "message": "Too many local variables (16/15)", + "message-id": "R0914" + }, + { + "type": "convention", + "module": "supervision.detection.vlm", + "obj": "from_google_gemini_2_0", + "line": 636, + "column": 21, + "endLine": 636, + "endColumn": 40, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "use-maxsplit-arg", + "message": "Use result.split('```', maxsplit=1)[0] instead", + "message-id": "C0207" + }, + { + "type": "error", + "module": "supervision.detection.vlm", + "obj": "from_google_gemini_2_0", + "line": 661, + "column": 11, + "endLine": 665, + "endColumn": 5, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "redundant-keyword-arg", + "message": "Argument 'resolution_wh' passed by position and keyword in classmethod call", + "message-id": "E1124" + }, + { + "type": "refactor", + "module": "supervision.detection.vlm", + "obj": "from_google_gemini_2_5", + "line": 678, + "column": 0, + "endLine": 678, + "endColumn": 26, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "too-many-locals", + "message": "Too many local variables (34/15)", + "message-id": "R0914" + }, + { + "type": "convention", + "module": "supervision.detection.vlm", + "obj": "from_google_gemini_2_5", + "line": 727, + "column": 21, + "endLine": 727, + "endColumn": 40, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "use-maxsplit-arg", + "message": "Use result.split('```', maxsplit=1)[0] instead", + "message-id": "C0207" + }, + { + "type": "error", + "module": "supervision.detection.vlm", + "obj": "from_google_gemini_2_5", + "line": 761, + "column": 24, + "endLine": 765, + "endColumn": 9, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "redundant-keyword-arg", + "message": "Argument 'resolution_wh' passed by position and keyword in classmethod call", + "message-id": "E1124" + }, + { + "type": "warning", + "module": "supervision.detection.vlm", + "obj": "from_google_gemini_2_5", + "line": 783, + "column": 27, + "endLine": 783, + "endColumn": 36, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "broad-exception-caught", + "message": "Catching too general exception Exception", + "message-id": "W0718" + }, + { + "type": "refactor", + "module": "supervision.detection.vlm", + "obj": "from_google_gemini_2_5", + "line": 755, + "column": 4, + "endLine": 811, + "endColumn": 34, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "too-many-nested-blocks", + "message": "Too many nested blocks (6/5)", + "message-id": "R1702" + }, + { + "type": "refactor", + "module": "supervision.detection.vlm", + "obj": "from_google_gemini_2_5", + "line": 678, + "column": 0, + "endLine": 678, + "endColumn": 26, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "too-many-branches", + "message": "Too many branches (23/12)", + "message-id": "R0912" + }, + { + "type": "refactor", + "module": "supervision.detection.vlm", + "obj": "from_google_gemini_2_5", + "line": 678, + "column": 0, + "endLine": 678, + "endColumn": 26, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "too-many-statements", + "message": "Too many statements (71/50)", + "message-id": "R0915" + }, + { + "type": "error", + "module": "supervision.detection.vlm", + "obj": "from_moondream", + "line": 914, + "column": 8, + "endLine": 917, + "endColumn": 9, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "redundant-keyword-arg", + "message": "Argument 'resolution_wh' passed by position and keyword in classmethod call", + "message-id": "E1124" + }, + { + "type": "convention", + "module": "supervision.detection.tools.csv_sink", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\tools\\csv_sink.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.detection.tools.csv_sink", + "obj": "WriterProtocol", + "line": 27, + "column": 0, + "endLine": 27, + "endColumn": 20, + "path": "src\\supervision\\detection\\tools\\csv_sink.py", + "symbol": "missing-class-docstring", + "message": "Missing class docstring", + "message-id": "C0115" + }, + { + "type": "convention", + "module": "supervision.detection.tools.csv_sink", + "obj": "WriterProtocol.writerow", + "line": 28, + "column": 4, + "endLine": 28, + "endColumn": 16, + "path": "src\\supervision\\detection\\tools\\csv_sink.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.csv_sink", + "obj": "WriterProtocol", + "line": 27, + "column": 0, + "endLine": 27, + "endColumn": 20, + "path": "src\\supervision\\detection\\tools\\csv_sink.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "warning", + "module": "supervision.detection.tools.csv_sink", + "obj": "CSVSink.open", + "line": 108, + "column": 20, + "endLine": 108, + "endColumn": 57, + "path": "src\\supervision\\detection\\tools\\csv_sink.py", + "symbol": "unspecified-encoding", + "message": "Using open without explicitly specifying an encoding", + "message-id": "W1514" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.csv_sink", + "obj": "CSVSink.open", + "line": 108, + "column": 20, + "endLine": 108, + "endColumn": 57, + "path": "src\\supervision\\detection\\tools\\csv_sink.py", + "symbol": "consider-using-with", + "message": "Consider using 'with' for resource-allocating operations", + "message-id": "R1732" + }, + { + "type": "warning", + "module": "supervision.detection.tools.csv_sink", + "obj": "CSVSink.append", + "line": 211, + "column": 12, + "endLine": 213, + "endColumn": 13, + "path": "src\\supervision\\detection\\tools\\csv_sink.py", + "symbol": "broad-exception-raised", + "message": "Raising too general exception: Exception", + "message-id": "W0719" + }, + { + "type": "convention", + "module": "supervision.detection.tools.csv_sink", + "obj": "CSVSink.parse_field_names", + "line": 234, + "column": 4, + "endLine": 234, + "endColumn": 25, + "path": "src\\supervision\\detection\\tools\\csv_sink.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.tools.inference_slicer", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\tools\\inference_slicer.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.inference_slicer", + "obj": "InferenceSlicer", + "line": 64, + "column": 0, + "endLine": 64, + "endColumn": 21, + "path": "src\\supervision\\detection\\tools\\inference_slicer.py", + "symbol": "too-many-instance-attributes", + "message": "Too many instance attributes (12/7)", + "message-id": "R0902" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.inference_slicer", + "obj": "InferenceSlicer.__init__", + "line": 143, + "column": 4, + "endLine": 143, + "endColumn": 16, + "path": "src\\supervision\\detection\\tools\\inference_slicer.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (8/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.inference_slicer", + "obj": "InferenceSlicer.__init__", + "line": 143, + "column": 4, + "endLine": 143, + "endColumn": 16, + "path": "src\\supervision\\detection\\tools\\inference_slicer.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (8/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.inference_slicer", + "obj": "InferenceSlicer.__call__", + "line": 178, + "column": 4, + "endLine": 178, + "endColumn": 16, + "path": "src\\supervision\\detection\\tools\\inference_slicer.py", + "symbol": "too-many-locals", + "message": "Too many local variables (18/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.inference_slicer", + "obj": "InferenceSlicer.__call__", + "line": 178, + "column": 4, + "endLine": 178, + "endColumn": 16, + "path": "src\\supervision\\detection\\tools\\inference_slicer.py", + "symbol": "too-many-branches", + "message": "Too many branches (13/12)", + "message-id": "R0912" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.inference_slicer", + "obj": "InferenceSlicer._run_callback", + "line": 275, + "column": 4, + "endLine": 275, + "endColumn": 21, + "path": "src\\supervision\\detection\\tools\\inference_slicer.py", + "symbol": "too-many-locals", + "message": "Too many local variables (16/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.inference_slicer", + "obj": "InferenceSlicer._generate_offset", + "line": 389, + "column": 4, + "endLine": 389, + "endColumn": 24, + "path": "src\\supervision\\detection\\tools\\inference_slicer.py", + "symbol": "too-many-locals", + "message": "Too many local variables (19/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.inference_slicer", + "obj": "InferenceSlicer", + "line": 64, + "column": 0, + "endLine": 64, + "endColumn": 21, + "path": "src\\supervision\\detection\\tools\\inference_slicer.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "convention", + "module": "supervision.detection.tools.json_sink", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\tools\\json_sink.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "warning", + "module": "supervision.detection.tools.json_sink", + "obj": "JSONSink.open", + "line": 82, + "column": 20, + "endLine": 82, + "endColumn": 45, + "path": "src\\supervision\\detection\\tools\\json_sink.py", + "symbol": "unspecified-encoding", + "message": "Using open without explicitly specifying an encoding", + "message-id": "W1514" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.json_sink", + "obj": "JSONSink.open", + "line": 82, + "column": 20, + "endLine": 82, + "endColumn": 45, + "path": "src\\supervision\\detection\\tools\\json_sink.py", + "symbol": "consider-using-with", + "message": "Consider using 'with' for resource-allocating operations", + "message-id": "R1732" + }, + { + "type": "convention", + "module": "supervision.detection.tools.polygon_zone", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\tools\\polygon_zone.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.polygon_zone", + "obj": "PolygonZone", + "line": 18, + "column": 0, + "endLine": 18, + "endColumn": 17, + "path": "src\\supervision\\detection\\tools\\polygon_zone.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.polygon_zone", + "obj": "PolygonZoneAnnotator", + "line": 111, + "column": 0, + "endLine": 111, + "endColumn": 26, + "path": "src\\supervision\\detection\\tools\\polygon_zone.py", + "symbol": "too-many-instance-attributes", + "message": "Too many instance attributes (11/7)", + "message-id": "R0902" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.polygon_zone", + "obj": "PolygonZoneAnnotator.__init__", + "line": 131, + "column": 4, + "endLine": 131, + "endColumn": 16, + "path": "src\\supervision\\detection\\tools\\polygon_zone.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (9/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.polygon_zone", + "obj": "PolygonZoneAnnotator.__init__", + "line": 131, + "column": 4, + "endLine": 131, + "endColumn": 16, + "path": "src\\supervision\\detection\\tools\\polygon_zone.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (9/5)", + "message-id": "R0917" + }, + { + "type": "error", + "module": "supervision.detection.tools.polygon_zone", + "obj": "PolygonZoneAnnotator.__init__", + "line": 150, + "column": 20, + "endLine": 150, + "endColumn": 44, + "path": "src\\supervision\\detection\\tools\\polygon_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'FONT_HERSHEY_SIMPLEX' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.polygon_zone", + "obj": "PolygonZoneAnnotator", + "line": 111, + "column": 0, + "endLine": 111, + "endColumn": 26, + "path": "src\\supervision\\detection\\tools\\polygon_zone.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "convention", + "module": "supervision.detection.tools.smoother", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\tools\\smoother.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.detection.tools.smoother", + "obj": "DetectionsSmoother.update_with_detections", + "line": 117, + "column": 8, + "endLine": 121, + "endColumn": 87, + "path": "src\\supervision\\detection\\tools\\smoother.py", + "symbol": "consider-using-enumerate", + "message": "Consider using enumerate instead of iterating with range and len", + "message-id": "C0200" + }, + { + "type": "convention", + "module": "supervision.detection.tools.smoother", + "obj": "DetectionsSmoother.update_with_detections", + "line": 123, + "column": 8, + "endLine": 125, + "endColumn": 50, + "path": "src\\supervision\\detection\\tools\\smoother.py", + "symbol": "consider-using-dict-items", + "message": "Consider iterating with .items()", + "message-id": "C0206" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.smoother", + "obj": "DetectionsSmoother.update_with_detections", + "line": 128, + "column": 15, + "endLine": 128, + "endColumn": 62, + "path": "src\\supervision\\detection\\tools\\smoother.py", + "symbol": "use-a-generator", + "message": "Use a generator instead 'all(d is None for d in self.tracks[track_id])'", + "message-id": "R1729" + }, + { + "type": "convention", + "module": "supervision.detection.tools.smoother", + "obj": "DetectionsSmoother.get_smoothed_detections", + "line": 166, + "column": 4, + "endLine": 166, + "endColumn": 31, + "path": "src\\supervision\\detection\\tools\\smoother.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.tools.transformers", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\tools\\transformers.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.transformers", + "obj": "process_transformers_detection_result", + "line": 35, + "column": 11, + "endLine": 40, + "endColumn": 5, + "path": "src\\supervision\\detection\\tools\\transformers.py", + "symbol": "use-dict-literal", + "message": "Consider using '{\"xyxy\": detection_result['boxes'].cpu().detach().numpy(), \"confidence\": detection_result['scores'].cpu().detach().numpy(), ... }' instead of a call to 'dict'.", + "message-id": "R1735" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.transformers", + "obj": "process_transformers_v4_segmentation_result", + "line": 62, + "column": 4, + "endLine": 79, + "endColumn": 9, + "path": "src\\supervision\\detection\\tools\\transformers.py", + "symbol": "no-else-return", + "message": "Unnecessary \"else\" after \"return\", remove the \"else\" and de-indent the code inside it", + "message-id": "R1705" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.transformers", + "obj": "process_transformers_v4_segmentation_result", + "line": 73, + "column": 15, + "endLine": 79, + "endColumn": 9, + "path": "src\\supervision\\detection\\tools\\transformers.py", + "symbol": "use-dict-literal", + "message": "Consider using '{\"xyxy\": boxes if boxes is not None else mask_to_xyxy(masks), \"mask\": np.squeeze(masks, axis=1) if boxes is not None else masks, ... }' instead of a call to 'dict'.", + "message-id": "R1735" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.transformers", + "obj": "process_transformers_v5_semantic_or_instance_segmentation_result", + "line": 139, + "column": 11, + "endLine": 145, + "endColumn": 5, + "path": "src\\supervision\\detection\\tools\\transformers.py", + "symbol": "use-dict-literal", + "message": "Consider using '{\"xyxy\": mask_to_xyxy(masks), \"mask\": masks, \"confidence\": scores}' instead of a call to 'dict'.", + "message-id": "R1735" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.transformers", + "obj": "process_transformers_v4_panoptic_segmentation_result", + "line": 174, + "column": 11, + "endLine": 179, + "endColumn": 5, + "path": "src\\supervision\\detection\\tools\\transformers.py", + "symbol": "use-dict-literal", + "message": "Consider using '{\"xyxy\": mask_to_xyxy(masks), \"mask\": masks, \"class_id\": class_ids, ... }' instead of a call to 'dict'.", + "message-id": "R1735" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.transformers", + "obj": "process_transformers_v5_panoptic_segmentation_result", + "line": 204, + "column": 11, + "endLine": 204, + "endColumn": 84, + "path": "src\\supervision\\detection\\tools\\transformers.py", + "symbol": "use-dict-literal", + "message": "Consider using '{\"xyxy\": mask_to_xyxy(masks), \"mask\": masks, \"class_id\": class_ids, ... }' instead of a call to 'dict'.", + "message-id": "R1735" + }, + { + "type": "convention", + "module": "supervision.detection.utils.boxes", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\utils\\boxes.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "error", + "module": "supervision.detection.utils.boxes", + "obj": "denormalize_boxes", + "line": 156, + "column": 13, + "endLine": 156, + "endColumn": 22, + "path": "src\\supervision\\detection\\utils\\boxes.py", + "symbol": "no-member", + "message": "Module 'supervision.detection.utils.boxes' has no 'copy' member", + "message-id": "E1101" + }, + { + "type": "warning", + "module": "supervision.detection.utils.boxes", + "obj": "denormalize_boxes", + "line": 109, + "column": 4, + "endLine": 109, + "endColumn": 50, + "path": "src\\supervision\\detection\\utils\\boxes.py", + "symbol": "unused-argument", + "message": "Unused argument 'normalized_xyxy'", + "message-id": "W0613" + }, + { + "type": "convention", + "module": "supervision.detection.utils.converters", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\utils\\converters.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "error", + "module": "supervision.detection.utils.converters", + "obj": "polygon_to_mask", + "line": 48, + "column": 4, + "endLine": 48, + "endColumn": 16, + "path": "src\\supervision\\detection\\utils\\converters.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'fillPoly' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.utils.converters", + "obj": "mask_to_polygons", + "line": 322, + "column": 18, + "endLine": 322, + "endColumn": 34, + "path": "src\\supervision\\detection\\utils\\converters.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'findContours' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.utils.converters", + "obj": "mask_to_polygons", + "line": 323, + "column": 31, + "endLine": 323, + "endColumn": 44, + "path": "src\\supervision\\detection\\utils\\converters.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'RETR_TREE' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.utils.converters", + "obj": "mask_to_polygons", + "line": 323, + "column": 46, + "endLine": 323, + "endColumn": 69, + "path": "src\\supervision\\detection\\utils\\converters.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'CHAIN_APPROX_SIMPLE' member", + "message-id": "E1101" + }, + { + "type": "convention", + "module": "supervision.detection.utils.internal", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\utils\\internal.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.detection.utils.internal", + "obj": "extract_ultralytics_masks", + "line": 18, + "column": 0, + "endLine": 18, + "endColumn": 29, + "path": "src\\supervision\\detection\\utils\\internal.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "error", + "module": "supervision.detection.utils.internal", + "obj": "extract_ultralytics_masks", + "line": 47, + "column": 19, + "endLine": 47, + "endColumn": 29, + "path": "src\\supervision\\detection\\utils\\internal.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'resize' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.detection.utils.internal", + "obj": "process_roboflow_result", + "line": 54, + "column": 0, + "endLine": 54, + "endColumn": 27, + "path": "src\\supervision\\detection\\utils\\internal.py", + "symbol": "too-many-locals", + "message": "Too many local variables (31/15)", + "message-id": "R0914" + }, + { + "type": "error", + "module": "supervision.detection.utils.internal", + "obj": "process_roboflow_result", + "line": 128, + "column": 27, + "endLine": 128, + "endColumn": 37, + "path": "src\\supervision\\detection\\utils\\internal.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'resize' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.utils.internal", + "obj": "process_roboflow_result", + "line": 131, + "column": 38, + "endLine": 131, + "endColumn": 55, + "path": "src\\supervision\\detection\\utils\\internal.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'INTER_NEAREST' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.detection.utils.internal", + "obj": "process_roboflow_result", + "line": 54, + "column": 0, + "endLine": 54, + "endColumn": 27, + "path": "src\\supervision\\detection\\utils\\internal.py", + "symbol": "too-many-statements", + "message": "Too many statements (62/50)", + "message-id": "R0915" + }, + { + "type": "refactor", + "module": "supervision.detection.utils.internal", + "obj": "merge_data", + "line": 241, + "column": 0, + "endLine": 241, + "endColumn": 14, + "path": "src\\supervision\\detection\\utils\\internal.py", + "symbol": "too-many-branches", + "message": "Too many branches (13/12)", + "message-id": "R0912" + }, + { + "type": "convention", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "too-many-lines", + "message": "Too many lines in module (1453/1000)", + "message-id": "C0302" + }, + { + "type": "convention", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "OverlapFilter.list", + "line": 35, + "column": 4, + "endLine": 35, + "endColumn": 12, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "OverlapFilter.from_value", + "line": 39, + "column": 4, + "endLine": 39, + "endColumn": 18, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "warning", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "OverlapFilter.from_value", + "line": 47, + "column": 16, + "endLine": 47, + "endColumn": 88, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "raise-missing-from", + "message": "Consider explicitly re-raising using 'except ValueError as exc' and 'raise ValueError(f'Invalid value: {value}. Must be one of {cls.list()}') from exc'", + "message-id": "W0707" + }, + { + "type": "convention", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "OverlapMetric.list", + "line": 71, + "column": 4, + "endLine": 71, + "endColumn": 12, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "OverlapMetric.from_value", + "line": 75, + "column": 4, + "endLine": 75, + "endColumn": 18, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "warning", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "OverlapMetric.from_value", + "line": 83, + "column": 16, + "endLine": 83, + "endColumn": 88, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "raise-missing-from", + "message": "Consider explicitly re-raising using 'except ValueError as exc' and 'raise ValueError(f'Invalid value: {value}. Must be one of {cls.list()}') from exc'", + "message-id": "W0707" + }, + { + "type": "refactor", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "box_iou", + "line": 90, + "column": 0, + "endLine": 90, + "endColumn": 11, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "too-many-locals", + "message": "Too many local variables (21/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "box_iou_batch", + "line": 162, + "column": 0, + "endLine": 162, + "endColumn": 17, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "too-many-locals", + "message": "Too many local variables (22/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "_jaccard", + "line": 264, + "column": 0, + "endLine": 264, + "endColumn": 12, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "too-many-locals", + "message": "Too many local variables (19/15)", + "message-id": "R0914" + }, + { + "type": "convention", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "_jaccard", + "line": 280, + "column": 4, + "endLine": 280, + "endColumn": 7, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "invalid-name", + "message": "Variable name \"EPS\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "_jaccard", + "line": 294, + "column": 4, + "endLine": 294, + "endColumn": 6, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "invalid-name", + "message": "Variable name \"Aa\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "_jaccard", + "line": 295, + "column": 4, + "endLine": 295, + "endColumn": 6, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "invalid-name", + "message": "Variable name \"Ab\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "_jaccard", + "line": 296, + "column": 4, + "endLine": 296, + "endColumn": 6, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "invalid-name", + "message": "Variable name \"Ai\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "refactor", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "oriented_box_iou_batch", + "line": 426, + "column": 0, + "endLine": 426, + "endColumn": 26, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "too-many-locals", + "message": "Too many local variables (24/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "oriented_box_iou_batch", + "line": 493, + "column": 8, + "endLine": 506, + "endColumn": 13, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "no-else-raise", + "message": "Unnecessary \"elif\" after \"raise\", remove the leading \"el\" from \"elif\"", + "message-id": "R1720" + }, + { + "type": "error", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "oriented_box_iou_batch", + "line": 545, + "column": 26, + "endLine": 545, + "endColumn": 51, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'intersectConvexConvex' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "oriented_box_iou_batch", + "line": 426, + "column": 0, + "endLine": 426, + "endColumn": 26, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "too-many-branches", + "message": "Too many branches (13/12)", + "message-id": "R0912" + }, + { + "type": "refactor", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "compact_mask_iou_batch", + "line": 569, + "column": 0, + "endLine": 569, + "endColumn": 26, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "too-many-locals", + "message": "Too many local variables (43/15)", + "message-id": "R0914" + }, + { + "type": "warning", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "mask_non_max_suppression", + "line": 837, + "column": 4, + "endLine": 837, + "endColumn": 23, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "unused-argument", + "message": "Unused argument 'mask_dimension'", + "message-id": "W0613" + }, + { + "type": "refactor", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "oriented_box_non_max_suppression", + "line": 1306, + "column": 8, + "endLine": 1319, + "endColumn": 13, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "no-else-raise", + "message": "Unnecessary \"elif\" after \"raise\", remove the leading \"el\" from \"elif\"", + "message-id": "R1720" + }, + { + "type": "refactor", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "oriented_box_non_max_merge", + "line": 1421, + "column": 8, + "endLine": 1434, + "endColumn": 13, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "no-else-raise", + "message": "Unnecessary \"elif\" after \"raise\", remove the leading \"el\" from \"elif\"", + "message-id": "R1720" + }, + { + "type": "convention", + "module": "supervision.detection.utils.masks", + "obj": "", + "line": 188, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\utils\\masks.py", + "symbol": "line-too-long", + "message": "Line too long (113/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.utils.masks", + "obj": "", + "line": 249, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\utils\\masks.py", + "symbol": "line-too-long", + "message": "Line too long (137/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.utils.masks", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\utils\\masks.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "refactor", + "module": "supervision.detection.utils.masks", + "obj": "calculate_masks_centroids", + "line": 90, + "column": 0, + "endLine": 90, + "endColumn": 29, + "path": "src\\supervision\\detection\\utils\\masks.py", + "symbol": "too-many-locals", + "message": "Too many local variables (24/15)", + "message-id": "R0914" + }, + { + "type": "error", + "module": "supervision.detection.utils.masks", + "obj": "contains_holes", + "line": 191, + "column": 19, + "endLine": 191, + "endColumn": 35, + "path": "src\\supervision\\detection\\utils\\masks.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'findContours' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.utils.masks", + "obj": "contains_holes", + "line": 191, + "column": 48, + "endLine": 191, + "endColumn": 62, + "path": "src\\supervision\\detection\\utils\\masks.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'RETR_CCOMP' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.utils.masks", + "obj": "contains_holes", + "line": 191, + "column": 64, + "endLine": 191, + "endColumn": 87, + "path": "src\\supervision\\detection\\utils\\masks.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'CHAIN_APPROX_SIMPLE' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.detection.utils.masks", + "obj": "contains_multiple_segments", + "line": 251, + "column": 7, + "endLine": 251, + "endColumn": 46, + "path": "src\\supervision\\detection\\utils\\masks.py", + "symbol": "consider-using-in", + "message": "Consider merging these comparisons with 'in' by using 'connectivity not in (4, 8)'. Use a set instead if elements are hashable.", + "message-id": "R1714" + }, + { + "type": "error", + "module": "supervision.detection.utils.masks", + "obj": "contains_multiple_segments", + "line": 257, + "column": 26, + "endLine": 257, + "endColumn": 49, + "path": "src\\supervision\\detection\\utils\\masks.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'connectedComponents' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.detection.utils.masks", + "obj": "filter_segments_by_distance", + "line": 291, + "column": 0, + "endLine": 291, + "endColumn": 31, + "path": "src\\supervision\\detection\\utils\\masks.py", + "symbol": "too-many-locals", + "message": "Too many local variables (26/15)", + "message-id": "R0914" + }, + { + "type": "error", + "module": "supervision.detection.utils.masks", + "obj": "filter_segments_by_distance", + "line": 384, + "column": 43, + "endLine": 384, + "endColumn": 75, + "path": "src\\supervision\\detection\\utils\\masks.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'connectedComponentsWithStats' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.utils.masks", + "obj": "filter_segments_by_distance", + "line": 391, + "column": 22, + "endLine": 391, + "endColumn": 38, + "path": "src\\supervision\\detection\\utils\\masks.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'CC_STAT_AREA' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.utils.masks", + "obj": "filter_segments_by_distance", + "line": 413, + "column": 29, + "endLine": 413, + "endColumn": 50, + "path": "src\\supervision\\detection\\utils\\masks.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'distanceTransform' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.utils.masks", + "obj": "filter_segments_by_distance", + "line": 413, + "column": 60, + "endLine": 413, + "endColumn": 71, + "path": "src\\supervision\\detection\\utils\\masks.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'DIST_L2' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.detection.utils.masks", + "obj": "filter_segments_by_distance", + "line": 291, + "column": 0, + "endLine": 291, + "endColumn": 31, + "path": "src\\supervision\\detection\\utils\\masks.py", + "symbol": "too-many-branches", + "message": "Too many branches (13/12)", + "message-id": "R0912" + }, + { + "type": "convention", + "module": "supervision.detection.utils.polygons", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\utils\\polygons.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "error", + "module": "supervision.detection.utils.polygons", + "obj": "filter_polygons_by_area", + "line": 35, + "column": 12, + "endLine": 35, + "endColumn": 27, + "path": "src\\supervision\\detection\\utils\\polygons.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'contourArea' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.utils.polygons", + "obj": "approximate_polygon", + "line": 109, + "column": 31, + "endLine": 109, + "endColumn": 47, + "path": "src\\supervision\\detection\\utils\\polygons.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'approxPolyDP' member", + "message-id": "E1101" + }, + { + "type": "convention", + "module": "supervision.detection.utils.vlms", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\utils\\vlms.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.draw.base", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\draw\\base.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.draw.base", + "obj": "", + "line": 7, + "column": 0, + "endLine": 7, + "endColumn": 9, + "path": "src\\supervision\\draw\\base.py", + "symbol": "invalid-name", + "message": "Type variable name \"ImageType\" doesn't conform to predefined naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\draw\\color.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "refactor", + "module": "supervision.draw.color", + "obj": "Color.from_hex", + "line": 141, + "column": 8, + "endLine": 146, + "endColumn": 34, + "path": "src\\supervision\\draw\\color.py", + "symbol": "no-else-return", + "message": "Unnecessary \"else\" after \"return\", remove the \"else\" and de-indent the code inside it", + "message-id": "R1705" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "Color.WHITE", + "line": 356, + "column": 4, + "endLine": 356, + "endColumn": 13, + "path": "src\\supervision\\draw\\color.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "Color.WHITE", + "line": 356, + "column": 4, + "endLine": 356, + "endColumn": 13, + "path": "src\\supervision\\draw\\color.py", + "symbol": "invalid-name", + "message": "Method name \"WHITE\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "error", + "module": "supervision.draw.color", + "obj": "Color.WHITE", + "line": 356, + "column": 4, + "endLine": 356, + "endColumn": 13, + "path": "src\\supervision\\draw\\color.py", + "symbol": "no-self-argument", + "message": "Method 'WHITE' should have \"self\" as first argument", + "message-id": "E0213" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "Color.BLACK", + "line": 360, + "column": 4, + "endLine": 360, + "endColumn": 13, + "path": "src\\supervision\\draw\\color.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "Color.BLACK", + "line": 360, + "column": 4, + "endLine": 360, + "endColumn": 13, + "path": "src\\supervision\\draw\\color.py", + "symbol": "invalid-name", + "message": "Method name \"BLACK\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "error", + "module": "supervision.draw.color", + "obj": "Color.BLACK", + "line": 360, + "column": 4, + "endLine": 360, + "endColumn": 13, + "path": "src\\supervision\\draw\\color.py", + "symbol": "no-self-argument", + "message": "Method 'BLACK' should have \"self\" as first argument", + "message-id": "E0213" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "Color.GREY", + "line": 364, + "column": 4, + "endLine": 364, + "endColumn": 12, + "path": "src\\supervision\\draw\\color.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "Color.GREY", + "line": 364, + "column": 4, + "endLine": 364, + "endColumn": 12, + "path": "src\\supervision\\draw\\color.py", + "symbol": "invalid-name", + "message": "Method name \"GREY\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "error", + "module": "supervision.draw.color", + "obj": "Color.GREY", + "line": 364, + "column": 4, + "endLine": 364, + "endColumn": 12, + "path": "src\\supervision\\draw\\color.py", + "symbol": "no-self-argument", + "message": "Method 'GREY' should have \"self\" as first argument", + "message-id": "E0213" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "Color.RED", + "line": 368, + "column": 4, + "endLine": 368, + "endColumn": 11, + "path": "src\\supervision\\draw\\color.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "Color.RED", + "line": 368, + "column": 4, + "endLine": 368, + "endColumn": 11, + "path": "src\\supervision\\draw\\color.py", + "symbol": "invalid-name", + "message": "Method name \"RED\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "error", + "module": "supervision.draw.color", + "obj": "Color.RED", + "line": 368, + "column": 4, + "endLine": 368, + "endColumn": 11, + "path": "src\\supervision\\draw\\color.py", + "symbol": "no-self-argument", + "message": "Method 'RED' should have \"self\" as first argument", + "message-id": "E0213" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "Color.GREEN", + "line": 372, + "column": 4, + "endLine": 372, + "endColumn": 13, + "path": "src\\supervision\\draw\\color.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "Color.GREEN", + "line": 372, + "column": 4, + "endLine": 372, + "endColumn": 13, + "path": "src\\supervision\\draw\\color.py", + "symbol": "invalid-name", + "message": "Method name \"GREEN\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "error", + "module": "supervision.draw.color", + "obj": "Color.GREEN", + "line": 372, + "column": 4, + "endLine": 372, + "endColumn": 13, + "path": "src\\supervision\\draw\\color.py", + "symbol": "no-self-argument", + "message": "Method 'GREEN' should have \"self\" as first argument", + "message-id": "E0213" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "Color.BLUE", + "line": 376, + "column": 4, + "endLine": 376, + "endColumn": 12, + "path": "src\\supervision\\draw\\color.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "Color.BLUE", + "line": 376, + "column": 4, + "endLine": 376, + "endColumn": 12, + "path": "src\\supervision\\draw\\color.py", + "symbol": "invalid-name", + "message": "Method name \"BLUE\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "error", + "module": "supervision.draw.color", + "obj": "Color.BLUE", + "line": 376, + "column": 4, + "endLine": 376, + "endColumn": 12, + "path": "src\\supervision\\draw\\color.py", + "symbol": "no-self-argument", + "message": "Method 'BLUE' should have \"self\" as first argument", + "message-id": "E0213" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "Color.YELLOW", + "line": 380, + "column": 4, + "endLine": 380, + "endColumn": 14, + "path": "src\\supervision\\draw\\color.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "Color.YELLOW", + "line": 380, + "column": 4, + "endLine": 380, + "endColumn": 14, + "path": "src\\supervision\\draw\\color.py", + "symbol": "invalid-name", + "message": "Method name \"YELLOW\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "error", + "module": "supervision.draw.color", + "obj": "Color.YELLOW", + "line": 380, + "column": 4, + "endLine": 380, + "endColumn": 14, + "path": "src\\supervision\\draw\\color.py", + "symbol": "no-self-argument", + "message": "Method 'YELLOW' should have \"self\" as first argument", + "message-id": "E0213" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "Color.ROBOFLOW", + "line": 384, + "column": 4, + "endLine": 384, + "endColumn": 16, + "path": "src\\supervision\\draw\\color.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "Color.ROBOFLOW", + "line": 384, + "column": 4, + "endLine": 384, + "endColumn": 16, + "path": "src\\supervision\\draw\\color.py", + "symbol": "invalid-name", + "message": "Method name \"ROBOFLOW\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "error", + "module": "supervision.draw.color", + "obj": "Color.ROBOFLOW", + "line": 384, + "column": 4, + "endLine": 384, + "endColumn": 16, + "path": "src\\supervision\\draw\\color.py", + "symbol": "no-self-argument", + "message": "Method 'ROBOFLOW' should have \"self\" as first argument", + "message-id": "E0213" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "ColorPalette", + "line": 406, + "column": 0, + "endLine": 406, + "endColumn": 18, + "path": "src\\supervision\\draw\\color.py", + "symbol": "missing-class-docstring", + "message": "Missing class docstring", + "message-id": "C0115" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "ColorPalette.DEFAULT", + "line": 410, + "column": 4, + "endLine": 410, + "endColumn": 15, + "path": "src\\supervision\\draw\\color.py", + "symbol": "invalid-name", + "message": "Method name \"DEFAULT\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "error", + "module": "supervision.draw.color", + "obj": "ColorPalette.DEFAULT", + "line": 410, + "column": 4, + "endLine": 410, + "endColumn": 15, + "path": "src\\supervision\\draw\\color.py", + "symbol": "no-self-argument", + "message": "Method 'DEFAULT' should have \"self\" as first argument", + "message-id": "E0213" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "ColorPalette.ROBOFLOW", + "line": 431, + "column": 4, + "endLine": 431, + "endColumn": 16, + "path": "src\\supervision\\draw\\color.py", + "symbol": "invalid-name", + "message": "Method name \"ROBOFLOW\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "error", + "module": "supervision.draw.color", + "obj": "ColorPalette.ROBOFLOW", + "line": 431, + "column": 4, + "endLine": 431, + "endColumn": 16, + "path": "src\\supervision\\draw\\color.py", + "symbol": "no-self-argument", + "message": "Method 'ROBOFLOW' should have \"self\" as first argument", + "message-id": "E0213" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "ColorPalette.LEGACY", + "line": 452, + "column": 4, + "endLine": 452, + "endColumn": 14, + "path": "src\\supervision\\draw\\color.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "ColorPalette.LEGACY", + "line": 452, + "column": 4, + "endLine": 452, + "endColumn": 14, + "path": "src\\supervision\\draw\\color.py", + "symbol": "invalid-name", + "message": "Method name \"LEGACY\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "error", + "module": "supervision.draw.color", + "obj": "ColorPalette.LEGACY", + "line": 452, + "column": 4, + "endLine": 452, + "endColumn": 14, + "path": "src\\supervision\\draw\\color.py", + "symbol": "no-self-argument", + "message": "Method 'LEGACY' should have \"self\" as first argument", + "message-id": "E0213" + }, + { + "type": "convention", + "module": "supervision.draw.utils", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "error", + "module": "supervision.draw.utils", + "obj": "draw_line", + "line": 34, + "column": 4, + "endLine": 34, + "endColumn": 12, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'line' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.draw.utils", + "obj": "draw_rectangle", + "line": 62, + "column": 4, + "endLine": 62, + "endColumn": 17, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'rectangle' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.draw.utils", + "obj": "draw_filled_rectangle", + "line": 91, + "column": 8, + "endLine": 91, + "endColumn": 21, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'rectangle' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.draw.utils", + "obj": "draw_filled_rectangle", + "line": 100, + "column": 8, + "endLine": 100, + "endColumn": 21, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'rectangle' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.draw.utils", + "obj": "draw_filled_rectangle", + "line": 107, + "column": 8, + "endLine": 107, + "endColumn": 23, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'addWeighted' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.draw.utils", + "obj": "draw_rounded_rectangle", + "line": 148, + "column": 8, + "endLine": 148, + "endColumn": 21, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'rectangle' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.draw.utils", + "obj": "draw_rounded_rectangle", + "line": 156, + "column": 8, + "endLine": 156, + "endColumn": 18, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'circle' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.draw.utils", + "obj": "draw_polygon", + "line": 183, + "column": 4, + "endLine": 183, + "endColumn": 17, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'polylines' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.draw.utils", + "obj": "draw_filled_polygon", + "line": 207, + "column": 8, + "endLine": 207, + "endColumn": 20, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'fillPoly' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.draw.utils", + "obj": "draw_filled_polygon", + "line": 210, + "column": 8, + "endLine": 210, + "endColumn": 20, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'fillPoly' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.draw.utils", + "obj": "draw_filled_polygon", + "line": 211, + "column": 8, + "endLine": 211, + "endColumn": 23, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'addWeighted' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.draw.utils", + "obj": "draw_text", + "line": 218, + "column": 0, + "endLine": 218, + "endColumn": 13, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (9/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.draw.utils", + "obj": "draw_text", + "line": 218, + "column": 0, + "endLine": 218, + "endColumn": 13, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (9/5)", + "message-id": "R0917" + }, + { + "type": "error", + "module": "supervision.draw.utils", + "obj": "draw_text", + "line": 226, + "column": 21, + "endLine": 226, + "endColumn": 45, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'FONT_HERSHEY_SIMPLEX' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.draw.utils", + "obj": "draw_text", + "line": 267, + "column": 30, + "endLine": 267, + "endColumn": 45, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'getTextSize' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.draw.utils", + "obj": "draw_text", + "line": 288, + "column": 4, + "endLine": 288, + "endColumn": 15, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'putText' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.draw.utils", + "obj": "draw_text", + "line": 296, + "column": 17, + "endLine": 296, + "endColumn": 28, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'LINE_AA' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.draw.utils", + "obj": "draw_image", + "line": 328, + "column": 16, + "endLine": 328, + "endColumn": 26, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'imread' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.draw.utils", + "obj": "draw_image", + "line": 328, + "column": 34, + "endLine": 328, + "endColumn": 54, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'IMREAD_UNCHANGED' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.draw.utils", + "obj": "draw_image", + "line": 348, + "column": 12, + "endLine": 348, + "endColumn": 22, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'resize' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.draw.utils", + "obj": "draw_image", + "line": 355, + "column": 19, + "endLine": 355, + "endColumn": 38, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'convertScaleAbs' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.draw.utils", + "obj": "draw_image", + "line": 360, + "column": 18, + "endLine": 360, + "endColumn": 37, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'convertScaleAbs' member", + "message-id": "E1101" + }, + { + "type": "convention", + "module": "supervision.geometry.core", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\geometry\\core.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.geometry.core", + "obj": "Position.list", + "line": 25, + "column": 4, + "endLine": 25, + "endColumn": 12, + "path": "src\\supervision\\geometry\\core.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.geometry.core", + "obj": "Rect.from_xyxy", + "line": 176, + "column": 4, + "endLine": 176, + "endColumn": 17, + "path": "src\\supervision\\geometry\\core.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.geometry.core", + "obj": "Rect.top_left", + "line": 181, + "column": 4, + "endLine": 181, + "endColumn": 16, + "path": "src\\supervision\\geometry\\core.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.geometry.core", + "obj": "Rect.bottom_right", + "line": 185, + "column": 4, + "endLine": 185, + "endColumn": 20, + "path": "src\\supervision\\geometry\\core.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.geometry.core", + "obj": "Rect.pad", + "line": 188, + "column": 4, + "endLine": 188, + "endColumn": 11, + "path": "src\\supervision\\geometry\\core.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.geometry.core", + "obj": "Rect.as_xyxy_int_tuple", + "line": 196, + "column": 4, + "endLine": 196, + "endColumn": 25, + "path": "src\\supervision\\geometry\\core.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.geometry.utils", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\geometry\\utils.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.keypoint.annotators", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\keypoint\\annotators.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.keypoint.annotators", + "obj": "", + "line": 8, + "column": 0, + "endLine": 13, + "endColumn": 1, + "path": "src\\supervision\\keypoint\\annotators.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.key_points.annotators import BaseKeyPointAnnotator, EdgeAnnotator, VertexAnnotator, VertexLabelAnnotator\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "warning", + "module": "supervision.keypoint.annotators", + "obj": "", + "line": 8, + "column": 0, + "endLine": 13, + "endColumn": 1, + "path": "src\\supervision\\keypoint\\annotators.py", + "symbol": "unused-import", + "message": "Unused BaseKeyPointAnnotator imported from supervision.key_points.annotators", + "message-id": "W0611" + }, + { + "type": "warning", + "module": "supervision.keypoint.annotators", + "obj": "", + "line": 8, + "column": 0, + "endLine": 13, + "endColumn": 1, + "path": "src\\supervision\\keypoint\\annotators.py", + "symbol": "unused-import", + "message": "Unused EdgeAnnotator imported from supervision.key_points.annotators", + "message-id": "W0611" + }, + { + "type": "warning", + "module": "supervision.keypoint.annotators", + "obj": "", + "line": 8, + "column": 0, + "endLine": 13, + "endColumn": 1, + "path": "src\\supervision\\keypoint\\annotators.py", + "symbol": "unused-import", + "message": "Unused VertexAnnotator imported from supervision.key_points.annotators", + "message-id": "W0611" + }, + { + "type": "warning", + "module": "supervision.keypoint.annotators", + "obj": "", + "line": 8, + "column": 0, + "endLine": 13, + "endColumn": 1, + "path": "src\\supervision\\keypoint\\annotators.py", + "symbol": "unused-import", + "message": "Unused VertexLabelAnnotator imported from supervision.key_points.annotators", + "message-id": "W0611" + }, + { + "type": "convention", + "module": "supervision.keypoint.core", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\keypoint\\core.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.keypoint.core", + "obj": "", + "line": 8, + "column": 0, + "endLine": 8, + "endColumn": 49, + "path": "src\\supervision\\keypoint\\core.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.key_points.core import KeyPoints\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "warning", + "module": "supervision.keypoint.core", + "obj": "", + "line": 8, + "column": 0, + "endLine": 8, + "endColumn": 49, + "path": "src\\supervision\\keypoint\\core.py", + "symbol": "unused-import", + "message": "Unused KeyPoints imported from supervision.key_points.core", + "message-id": "W0611" + }, + { + "type": "convention", + "module": "supervision.keypoint", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\keypoint\\__init__.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.keypoint", + "obj": "", + "line": 8, + "column": 0, + "endLine": 12, + "endColumn": 1, + "path": "src\\supervision\\keypoint\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.key_points.annotators import EdgeAnnotator, VertexAnnotator, VertexLabelAnnotator\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision.keypoint", + "obj": "", + "line": 13, + "column": 0, + "endLine": 13, + "endColumn": 49, + "path": "src\\supervision\\keypoint\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.key_points.core import KeyPoints\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision.key_points.annotators", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.key_points.annotators", + "obj": "BaseKeyPointAnnotator", + "line": 24, + "column": 0, + "endLine": 24, + "endColumn": 27, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "missing-class-docstring", + "message": "Missing class docstring", + "message-id": "C0115" + }, + { + "type": "convention", + "module": "supervision.key_points.annotators", + "obj": "BaseKeyPointAnnotator.annotate", + "line": 26, + "column": 4, + "endLine": 26, + "endColumn": 16, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "refactor", + "module": "supervision.key_points.annotators", + "obj": "BaseKeyPointAnnotator", + "line": 24, + "column": 0, + "endLine": 24, + "endColumn": 27, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "error", + "module": "supervision.key_points.annotators", + "obj": "VertexAnnotator.annotate", + "line": 100, + "column": 16, + "endLine": 100, + "endColumn": 26, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'circle' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.key_points.annotators", + "obj": "VertexAnnotator", + "line": 30, + "column": 0, + "endLine": 30, + "endColumn": 21, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "error", + "module": "supervision.key_points.annotators", + "obj": "EdgeAnnotator.annotate", + "line": 250, + "column": 16, + "endLine": 250, + "endColumn": 24, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'line' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.key_points.annotators", + "obj": "EdgeAnnotator", + "line": 111, + "column": 0, + "endLine": 111, + "endColumn": 19, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.key_points.annotators", + "obj": "_BaseVertexEllipseAnnotator._iter_ellipse_params", + "line": 330, + "column": 4, + "endLine": 330, + "endColumn": 28, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "too-many-locals", + "message": "Too many local variables (20/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.key_points.annotators", + "obj": "_BaseVertexEllipseAnnotator", + "line": 261, + "column": 0, + "endLine": 261, + "endColumn": 33, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "error", + "module": "supervision.key_points.annotators", + "obj": "VertexEllipseAreaAnnotator.annotate", + "line": 455, + "column": 16, + "endLine": 455, + "endColumn": 27, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'ellipse' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.key_points.annotators", + "obj": "VertexEllipseAreaAnnotator.annotate", + "line": 464, + "column": 29, + "endLine": 464, + "endColumn": 40, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'LINE_AA' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.key_points.annotators", + "obj": "VertexEllipseAreaAnnotator.annotate", + "line": 467, + "column": 8, + "endLine": 467, + "endColumn": 23, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'addWeighted' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.key_points.annotators", + "obj": "VertexEllipseAreaAnnotator", + "line": 370, + "column": 0, + "endLine": 370, + "endColumn": 32, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "error", + "module": "supervision.key_points.annotators", + "obj": "VertexEllipseOutlineAnnotator.annotate", + "line": 553, + "column": 16, + "endLine": 553, + "endColumn": 27, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'ellipse' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.key_points.annotators", + "obj": "VertexEllipseOutlineAnnotator.annotate", + "line": 562, + "column": 29, + "endLine": 562, + "endColumn": 40, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'LINE_AA' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.key_points.annotators", + "obj": "VertexEllipseOutlineAnnotator", + "line": 471, + "column": 0, + "endLine": 471, + "endColumn": 35, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.key_points.annotators", + "obj": "VertexEllipseHaloAnnotator.annotate", + "line": 606, + "column": 4, + "endLine": 606, + "endColumn": 16, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "too-many-locals", + "message": "Too many local variables (39/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.key_points.annotators", + "obj": "VertexEllipseHaloAnnotator", + "line": 568, + "column": 0, + "endLine": 568, + "endColumn": 32, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.key_points.annotators", + "obj": "VertexLabelAnnotator.__init__", + "line": 709, + "column": 4, + "endLine": 709, + "endColumn": 16, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (7/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.key_points.annotators", + "obj": "VertexLabelAnnotator.__init__", + "line": 709, + "column": 4, + "endLine": 709, + "endColumn": 16, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (7/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.key_points.annotators", + "obj": "VertexLabelAnnotator.annotate", + "line": 740, + "column": 4, + "endLine": 740, + "endColumn": 16, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "too-many-locals", + "message": "Too many local variables (26/15)", + "message-id": "R0914" + }, + { + "type": "error", + "module": "supervision.key_points.annotators", + "obj": "VertexLabelAnnotator.annotate", + "line": 828, + "column": 15, + "endLine": 828, + "endColumn": 39, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'FONT_HERSHEY_SIMPLEX' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.key_points.annotators", + "obj": "VertexLabelAnnotator.annotate", + "line": 894, + "column": 12, + "endLine": 894, + "endColumn": 23, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'putText' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.key_points.annotators", + "obj": "VertexLabelAnnotator.annotate", + "line": 902, + "column": 25, + "endLine": 902, + "endColumn": 36, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'LINE_AA' member", + "message-id": "E1101" + }, + { + "type": "convention", + "module": "supervision.key_points.annotators", + "obj": "VertexLabelAnnotator.get_text_bounding_box", + "line": 908, + "column": 4, + "endLine": 908, + "endColumn": 29, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "error", + "module": "supervision.key_points.annotators", + "obj": "VertexLabelAnnotator.get_text_bounding_box", + "line": 915, + "column": 25, + "endLine": 915, + "endColumn": 40, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'getTextSize' member", + "message-id": "E1101" + }, + { + "type": "convention", + "module": "supervision.key_points.core", + "obj": "", + "line": 101, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "line-too-long", + "message": "Line too long (124/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.key_points.core", + "obj": "", + "line": 102, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "line-too-long", + "message": "Line too long (148/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.key_points.core", + "obj": "", + "line": 119, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "line-too-long", + "message": "Line too long (120/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.key_points.core", + "obj": "", + "line": 136, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "line-too-long", + "message": "Line too long (120/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.key_points.core", + "obj": "", + "line": 169, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "line-too-long", + "message": "Line too long (126/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.key_points.core", + "obj": "", + "line": 170, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "line-too-long", + "message": "Line too long (110/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.key_points.core", + "obj": "", + "line": 189, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "line-too-long", + "message": "Line too long (105/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.key_points.core", + "obj": "", + "line": 493, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "line-too-long", + "message": "Line too long (116/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.key_points.core", + "obj": "", + "line": 639, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "line-too-long", + "message": "Line too long (130/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.key_points.core", + "obj": "", + "line": 777, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "line-too-long", + "message": "Line too long (109/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.key_points.core", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "too-many-lines", + "message": "Too many lines in module (1294/1000)", + "message-id": "C0302" + }, + { + "type": "convention", + "module": "supervision.key_points.core", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.key_points.core", + "obj": "", + "line": 23, + "column": 0, + "endLine": 23, + "endColumn": 7, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "invalid-name", + "message": "Type alias name \"Index1D\" doesn't conform to predefined naming style", + "message-id": "C0103" + }, + { + "type": "refactor", + "module": "supervision.key_points.core", + "obj": "KeyPoints.__init__", + "line": 245, + "column": 4, + "endLine": 245, + "endColumn": 16, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (7/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.key_points.core", + "obj": "KeyPoints.__init__", + "line": 245, + "column": 4, + "endLine": 245, + "endColumn": 16, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (6/5)", + "message-id": "R0917" + }, + { + "type": "convention", + "module": "supervision.key_points.core", + "obj": "KeyPoints.__iter__", + "line": 359, + "column": 8, + "endLine": 367, + "endColumn": 13, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "consider-using-enumerate", + "message": "Consider using enumerate instead of iterating with range and len", + "message-id": "C0200" + }, + { + "type": "refactor", + "module": "supervision.key_points.core", + "obj": "KeyPoints.from_mediapipe", + "line": 557, + "column": 24, + "endLine": 560, + "endColumn": 25, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "unnecessary-comprehension", + "message": "Unnecessary use of a comprehension, use list(mediapipe_results.pose_landmarks.landmark) instead.", + "message-id": "R1721" + }, + { + "type": "error", + "module": "supervision.key_points.core", + "obj": "KeyPoints.from_mediapipe", + "line": 573, + "column": 15, + "endLine": 573, + "endColumn": 22, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "possibly-used-before-assignment", + "message": "Possibly using variable 'results' before assignment", + "message-id": "E0606" + }, + { + "type": "refactor", + "module": "supervision.key_points.core", + "obj": "KeyPoints.from_detectron2", + "line": 727, + "column": 8, + "endLine": 743, + "endColumn": 30, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "no-else-return", + "message": "Unnecessary \"else\" after \"return\", remove the \"else\" and de-indent the code inside it", + "message-id": "R1705" + }, + { + "type": "refactor", + "module": "supervision.key_points.core", + "obj": "KeyPoints.from_transformers", + "line": 808, + "column": 8, + "endLine": 828, + "endColumn": 30, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "no-else-return", + "message": "Unnecessary \"else\" after \"return\", remove the \"else\" and de-indent the code inside it", + "message-id": "R1705" + }, + { + "type": "warning", + "module": "supervision.key_points.core", + "obj": "KeyPoints.__getitem__", + "line": 999, + "column": 12, + "endLine": 999, + "endColumn": 59, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "unbalanced-tuple-unpacking", + "message": "Possible unbalanced tuple unpacking with sequence defined at line 104 of numpy.lib._index_tricks_impl: left side has 2 labels, right side has 0 values", + "message-id": "W0632" + }, + { + "type": "refactor", + "module": "supervision.key_points.core", + "obj": "KeyPoints.__getitem__", + "line": 925, + "column": 4, + "endLine": 925, + "endColumn": 19, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "too-many-branches", + "message": "Too many branches (22/12)", + "message-id": "R0912" + }, + { + "type": "refactor", + "module": "supervision.key_points.core", + "obj": "KeyPoints.__getitem__", + "line": 925, + "column": 4, + "endLine": 925, + "endColumn": 19, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "too-many-statements", + "message": "Too many statements (53/50)", + "message-id": "R0915" + }, + { + "type": "refactor", + "module": "supervision.key_points.core", + "obj": "KeyPoints.as_detections", + "line": 1224, + "column": 4, + "endLine": 1224, + "endColumn": 21, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "too-many-locals", + "message": "Too many local variables (16/15)", + "message-id": "R0914" + }, + { + "type": "convention", + "module": "supervision.key_points.skeletons", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\key_points\\skeletons.py", + "symbol": "too-many-lines", + "message": "Too many lines in module (2646/1000)", + "message-id": "C0302" + }, + { + "type": "convention", + "module": "supervision.key_points.skeletons", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\key_points\\skeletons.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.key_points.skeletons", + "obj": "Skeleton", + "line": 6, + "column": 0, + "endLine": 6, + "endColumn": 14, + "path": "src\\supervision\\key_points\\skeletons.py", + "symbol": "missing-class-docstring", + "message": "Missing class docstring", + "message-id": "C0115" + }, + { + "type": "convention", + "module": "supervision.metrics.core", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\metrics\\core.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.metrics.detection", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\metrics\\detection.py", + "symbol": "too-many-lines", + "message": "Too many lines in module (1120/1000)", + "message-id": "C0302" + }, + { + "type": "convention", + "module": "supervision.metrics.detection", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\metrics\\detection.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.metrics.detection", + "obj": "validate_input_tensors", + "line": 192, + "column": 0, + "endLine": 192, + "endColumn": 26, + "path": "src\\supervision\\metrics\\detection.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "refactor", + "module": "supervision.metrics.detection", + "obj": "ConfusionMatrix.from_detections", + "line": 238, + "column": 4, + "endLine": 238, + "endColumn": 23, + "path": "src\\supervision\\metrics\\detection.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (6/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.metrics.detection", + "obj": "ConfusionMatrix.from_detections", + "line": 238, + "column": 4, + "endLine": 238, + "endColumn": 23, + "path": "src\\supervision\\metrics\\detection.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (6/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.metrics.detection", + "obj": "ConfusionMatrix.from_tensors", + "line": 322, + "column": 4, + "endLine": 322, + "endColumn": 20, + "path": "src\\supervision\\metrics\\detection.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (6/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.metrics.detection", + "obj": "ConfusionMatrix.from_tensors", + "line": 322, + "column": 4, + "endLine": 322, + "endColumn": 20, + "path": "src\\supervision\\metrics\\detection.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (6/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.metrics.detection", + "obj": "ConfusionMatrix.evaluate_detection_batch", + "line": 414, + "column": 4, + "endLine": 414, + "endColumn": 32, + "path": "src\\supervision\\metrics\\detection.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (6/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.metrics.detection", + "obj": "ConfusionMatrix.evaluate_detection_batch", + "line": 414, + "column": 4, + "endLine": 414, + "endColumn": 32, + "path": "src\\supervision\\metrics\\detection.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (6/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.metrics.detection", + "obj": "ConfusionMatrix.evaluate_detection_batch", + "line": 414, + "column": 4, + "endLine": 414, + "endColumn": 32, + "path": "src\\supervision\\metrics\\detection.py", + "symbol": "too-many-locals", + "message": "Too many local variables (36/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.metrics.detection", + "obj": "ConfusionMatrix.evaluate_detection_batch", + "line": 414, + "column": 4, + "endLine": 414, + "endColumn": 32, + "path": "src\\supervision\\metrics\\detection.py", + "symbol": "too-many-branches", + "message": "Too many branches (16/12)", + "message-id": "R0912" + }, + { + "type": "refactor", + "module": "supervision.metrics.detection", + "obj": "ConfusionMatrix.evaluate_detection_batch", + "line": 414, + "column": 4, + "endLine": 414, + "endColumn": 32, + "path": "src\\supervision\\metrics\\detection.py", + "symbol": "too-many-statements", + "message": "Too many statements (51/50)", + "message-id": "R0915" + }, + { + "type": "warning", + "module": "supervision.metrics.detection", + "obj": "ConfusionMatrix.evaluate_detection_batch", + "line": 553, + "column": 29, + "endLine": 553, + "endColumn": 32, + "path": "src\\supervision\\metrics\\detection.py", + "symbol": "unused-variable", + "message": "Unused variable 'iou'", + "message-id": "W0612" + }, + { + "type": "warning", + "module": "supervision.metrics.detection", + "obj": "ConfusionMatrix.evaluate_detection_batch", + "line": 553, + "column": 34, + "endLine": 553, + "endColumn": 45, + "path": "src\\supervision\\metrics\\detection.py", + "symbol": "unused-variable", + "message": "Unused variable 'class_match'", + "message-id": "W0612" + }, + { + "type": "refactor", + "module": "supervision.metrics.detection", + "obj": "ConfusionMatrix.plot", + "line": 660, + "column": 4, + "endLine": 660, + "endColumn": 12, + "path": "src\\supervision\\metrics\\detection.py", + "symbol": "too-many-locals", + "message": "Too many local variables (22/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.metrics.detection", + "obj": "MeanAveragePrecision._average_precisions_per_class", + "line": 1067, + "column": 4, + "endLine": 1067, + "endColumn": 37, + "path": "src\\supervision\\metrics\\detection.py", + "symbol": "too-many-locals", + "message": "Too many local variables (21/15)", + "message-id": "R0914" + }, + { + "type": "convention", + "module": "supervision.metrics.f1_score", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\metrics\\f1_score.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "warning", + "module": "supervision.metrics.f1_score", + "obj": "F1Score.update", + "line": 92, + "column": 4, + "endLine": 92, + "endColumn": 14, + "path": "src\\supervision\\metrics\\f1_score.py", + "symbol": "arguments-differ", + "message": "Number of parameters was 3 in 'Metric.update' and is now 3 in overriding 'F1Score.update' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.metrics.f1_score", + "obj": "F1Score.update", + "line": 92, + "column": 4, + "endLine": 92, + "endColumn": 14, + "path": "src\\supervision\\metrics\\f1_score.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'F1Score.update' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.metrics.f1_score", + "obj": "F1Score.compute", + "line": 123, + "column": 4, + "endLine": 123, + "endColumn": 15, + "path": "src\\supervision\\metrics\\f1_score.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'F1Score.compute' method", + "message-id": "W0221" + }, + { + "type": "error", + "module": "supervision.metrics.f1_score", + "obj": "F1Score._compute_f1_for_classes", + "line": 312, + "column": 15, + "endLine": 312, + "endColumn": 24, + "path": "src\\supervision\\metrics\\f1_score.py", + "symbol": "possibly-used-before-assignment", + "message": "Possibly using variable 'f1_scores' before assignment", + "message-id": "E0606" + }, + { + "type": "refactor", + "module": "supervision.metrics.f1_score", + "obj": "F1Score._compute_confusion_matrix", + "line": 347, + "column": 4, + "endLine": 347, + "endColumn": 33, + "path": "src\\supervision\\metrics\\f1_score.py", + "symbol": "too-many-locals", + "message": "Too many local variables (16/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.metrics.f1_score", + "obj": "F1ScoreResult", + "line": 512, + "column": 0, + "endLine": 512, + "endColumn": 19, + "path": "src\\supervision\\metrics\\f1_score.py", + "symbol": "too-many-instance-attributes", + "message": "Too many instance attributes (9/7)", + "message-id": "R0902" + }, + { + "type": "convention", + "module": "supervision.metrics.f1_score", + "obj": "F1ScoreResult.f1_50", + "line": 546, + "column": 4, + "endLine": 546, + "endColumn": 13, + "path": "src\\supervision\\metrics\\f1_score.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.metrics.f1_score", + "obj": "F1ScoreResult.f1_75", + "line": 550, + "column": 4, + "endLine": 550, + "endColumn": 13, + "path": "src\\supervision\\metrics\\f1_score.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.metrics.f1_score", + "obj": "F1ScoreResult.to_pandas", + "line": 638, + "column": 8, + "endLine": 638, + "endColumn": 27, + "path": "src\\supervision\\metrics\\f1_score.py", + "symbol": "import-outside-toplevel", + "message": "Import outside toplevel (pandas)", + "message-id": "C0415" + }, + { + "type": "convention", + "module": "supervision.metrics.f1_score", + "obj": "F1ScoreResult.plot", + "line": 709, + "column": 12, + "endLine": 709, + "endColumn": 15, + "path": "src\\supervision\\metrics\\f1_score.py", + "symbol": "disallowed-name", + "message": "Disallowed name \"bar\"", + "message-id": "C0104" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_precision", + "obj": "", + "line": 731, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "superfluous-parens", + "message": "Unnecessary parens after 'not' keyword", + "message-id": "C0325" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_precision", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "too-many-lines", + "message": "Too many lines in module (1520/1000)", + "message-id": "C0302" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_precision", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_precision", + "obj": "MeanAveragePrecisionResult", + "line": 78, + "column": 4, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "invalid-name", + "message": "Attribute name \"mAP_scores\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_precision", + "obj": "MeanAveragePrecisionResult", + "line": 30, + "column": 0, + "endLine": 30, + "endColumn": 32, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "too-many-instance-attributes", + "message": "Too many instance attributes (9/7)", + "message-id": "R0902" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_precision", + "obj": "MeanAveragePrecisionResult.map50_95", + "line": 63, + "column": 8, + "endLine": 66, + "endColumn": 21, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "no-else-return", + "message": "Unnecessary \"else\" after \"return\", remove the \"else\" and de-indent the code inside it", + "message-id": "R1705" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_precision", + "obj": "MeanAveragePrecisionResult.to_pandas", + "line": 153, + "column": 8, + "endLine": 153, + "endColumn": 27, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "import-outside-toplevel", + "message": "Import outside toplevel (pandas)", + "message-id": "C0415" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_precision", + "obj": "MeanAveragePrecisionResult.plot", + "line": 233, + "column": 12, + "endLine": 233, + "endColumn": 15, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "disallowed-name", + "message": "Disallowed name \"bar\"", + "message-id": "C0104" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_precision", + "obj": "EvaluationDataset.__init__", + "line": 266, + "column": 39, + "endLine": 266, + "endColumn": 45, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "use-dict-literal", + "message": "Consider using '{}' instead of a call to 'dict'.", + "message-id": "R1735" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_precision", + "obj": "EvaluationDataset.__init__", + "line": 267, + "column": 36, + "endLine": 267, + "endColumn": 42, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "use-dict-literal", + "message": "Consider using '{}' instead of a call to 'dict'.", + "message-id": "R1735" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_precision", + "obj": "EvaluationDataset.__init__", + "line": 268, + "column": 36, + "endLine": 268, + "endColumn": 42, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "use-dict-literal", + "message": "Consider using '{}' instead of a call to 'dict'.", + "message-id": "R1735" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_precision", + "obj": "EvaluationDataset.__init__", + "line": 269, + "column": 36, + "endLine": 269, + "endColumn": 42, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "use-dict-literal", + "message": "Consider using '{}' instead of a call to 'dict'.", + "message-id": "R1735" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_precision", + "obj": "EvaluationDataset.empty", + "line": 281, + "column": 4, + "endLine": 281, + "endColumn": 13, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_precision", + "obj": "EvaluationDataset.load_predictions", + "line": 471, + "column": 48, + "endLine": 471, + "endColumn": 87, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "unnecessary-comprehension", + "message": "Unnecessary use of a comprehension, use list(self.dataset['images']) instead.", + "message-id": "R1721" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_precision", + "obj": "EvaluationDataset.load_predictions", + "line": 489, + "column": 8, + "endLine": 520, + "endColumn": 35, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "no-else-raise", + "message": "Unnecessary \"elif\" after \"raise\", remove the leading \"el\" from \"elif\"", + "message-id": "R1720" + }, + { + "type": "error", + "module": "supervision.metrics.mean_average_precision", + "obj": "", + "line": 532, + "column": 6, + "endLine": 532, + "endColumn": 30, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "no-member", + "message": "Instance of 'finfo' has no 'eps' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluatorParameters", + "line": 546, + "column": 0, + "endLine": 546, + "endColumn": 29, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (0/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluator", + "line": 584, + "column": 0, + "endLine": 584, + "endColumn": 19, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "too-many-instance-attributes", + "message": "Too many instance attributes (9/7)", + "message-id": "R0902" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluator._evaluate_image", + "line": 700, + "column": 4, + "endLine": 700, + "endColumn": 23, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "too-many-locals", + "message": "Too many local variables (29/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluator._accumulate", + "line": 825, + "column": 4, + "endLine": 825, + "endColumn": 19, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "too-many-locals", + "message": "Too many local variables (70/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluator._accumulate", + "line": 895, + "column": 8, + "endLine": 992, + "endColumn": 25, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "too-many-nested-blocks", + "message": "Too many nested blocks (6/5)", + "message-id": "R1702" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluator._accumulate", + "line": 895, + "column": 8, + "endLine": 992, + "endColumn": 25, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "too-many-nested-blocks", + "message": "Too many nested blocks (6/5)", + "message-id": "R1702" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluator._accumulate.compute_average_precision", + "line": 1030, + "column": 12, + "endLine": 1030, + "endColumn": 22, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "invalid-name", + "message": "Variable name \"mAP_scores\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluator._accumulate", + "line": 1043, + "column": 8, + "endLine": 1043, + "endColumn": 28, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "invalid-name", + "message": "Variable name \"mAP_scores_all_sizes\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluator._accumulate", + "line": 1052, + "column": 8, + "endLine": 1052, + "endColumn": 24, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "invalid-name", + "message": "Variable name \"mAP_scores_small\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluator._accumulate", + "line": 1061, + "column": 8, + "endLine": 1061, + "endColumn": 25, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "invalid-name", + "message": "Variable name \"mAP_scores_medium\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluator._accumulate", + "line": 1070, + "column": 8, + "endLine": 1070, + "endColumn": 24, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "invalid-name", + "message": "Variable name \"mAP_scores_large\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluator._accumulate", + "line": 825, + "column": 4, + "endLine": 825, + "endColumn": 19, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "too-many-statements", + "message": "Too many statements (77/50)", + "message-id": "R0915" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluator._pycocotools_summarize._summarize", + "line": 1108, + "column": 12, + "endLine": 1108, + "endColumn": 16, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "invalid-name", + "message": "Variable name \"iStr\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluator._pycocotools_summarize._summarize", + "line": 1109, + "column": 12, + "endLine": 1109, + "endColumn": 20, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "invalid-name", + "message": "Variable name \"titleStr\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluator._pycocotools_summarize._summarize", + "line": 1110, + "column": 12, + "endLine": 1110, + "endColumn": 19, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "invalid-name", + "message": "Variable name \"typeStr\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluator", + "line": 584, + "column": 0, + "endLine": 584, + "endColumn": 19, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "warning", + "module": "supervision.metrics.mean_average_precision", + "obj": "MeanAveragePrecision.update", + "line": 1295, + "column": 4, + "endLine": 1295, + "endColumn": 14, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "arguments-differ", + "message": "Number of parameters was 3 in 'Metric.update' and is now 3 in overriding 'MeanAveragePrecision.update' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.metrics.mean_average_precision", + "obj": "MeanAveragePrecision.update", + "line": 1295, + "column": 4, + "endLine": 1295, + "endColumn": 14, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'MeanAveragePrecision.update' method", + "message-id": "W0221" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_precision", + "obj": "MeanAveragePrecision._prepare_targets", + "line": 1337, + "column": 4, + "endLine": 1337, + "endColumn": 24, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "too-many-locals", + "message": "Too many local variables (16/15)", + "message-id": "R0914" + }, + { + "type": "warning", + "module": "supervision.metrics.mean_average_precision", + "obj": "MeanAveragePrecision.compute", + "line": 1450, + "column": 4, + "endLine": 1450, + "endColumn": 15, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'MeanAveragePrecision.compute' method", + "message-id": "W0221" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_precision", + "obj": "MeanAveragePrecision.compute", + "line": 1475, + "column": 8, + "endLine": 1475, + "endColumn": 16, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "invalid-name", + "message": "Variable name \"cocoEval\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_precision", + "obj": "MeanAveragePrecision.compute", + "line": 1481, + "column": 8, + "endLine": 1481, + "endColumn": 17, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "invalid-name", + "message": "Variable name \"mAP_small\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_precision", + "obj": "MeanAveragePrecision.compute", + "line": 1490, + "column": 8, + "endLine": 1490, + "endColumn": 18, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "invalid-name", + "message": "Variable name \"mAP_medium\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_precision", + "obj": "MeanAveragePrecision.compute", + "line": 1499, + "column": 8, + "endLine": 1499, + "endColumn": 17, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "invalid-name", + "message": "Variable name \"mAP_large\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_precision", + "obj": "MeanAveragePrecision.compute", + "line": 1509, + "column": 8, + "endLine": 1509, + "endColumn": 18, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "invalid-name", + "message": "Variable name \"mAP_result\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_recall", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\metrics\\mean_average_recall.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_recall", + "obj": "MeanAverageRecallResult", + "line": 31, + "column": 0, + "endLine": 31, + "endColumn": 29, + "path": "src\\supervision\\metrics\\mean_average_recall.py", + "symbol": "too-many-instance-attributes", + "message": "Too many instance attributes (9/7)", + "message-id": "R0902" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_recall", + "obj": "MeanAverageRecallResult.mAR_at_1", + "line": 64, + "column": 4, + "endLine": 64, + "endColumn": 16, + "path": "src\\supervision\\metrics\\mean_average_recall.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_recall", + "obj": "MeanAverageRecallResult.mAR_at_1", + "line": 64, + "column": 4, + "endLine": 64, + "endColumn": 16, + "path": "src\\supervision\\metrics\\mean_average_recall.py", + "symbol": "invalid-name", + "message": "Attribute name \"mAR_at_1\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_recall", + "obj": "MeanAverageRecallResult.mAR_at_10", + "line": 68, + "column": 4, + "endLine": 68, + "endColumn": 17, + "path": "src\\supervision\\metrics\\mean_average_recall.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_recall", + "obj": "MeanAverageRecallResult.mAR_at_10", + "line": 68, + "column": 4, + "endLine": 68, + "endColumn": 17, + "path": "src\\supervision\\metrics\\mean_average_recall.py", + "symbol": "invalid-name", + "message": "Attribute name \"mAR_at_10\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_recall", + "obj": "MeanAverageRecallResult.mAR_at_100", + "line": 72, + "column": 4, + "endLine": 72, + "endColumn": 18, + "path": "src\\supervision\\metrics\\mean_average_recall.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_recall", + "obj": "MeanAverageRecallResult.mAR_at_100", + "line": 72, + "column": 4, + "endLine": 72, + "endColumn": 18, + "path": "src\\supervision\\metrics\\mean_average_recall.py", + "symbol": "invalid-name", + "message": "Attribute name \"mAR_at_100\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_recall", + "obj": "MeanAverageRecallResult.to_pandas", + "line": 162, + "column": 8, + "endLine": 162, + "endColumn": 27, + "path": "src\\supervision\\metrics\\mean_average_recall.py", + "symbol": "import-outside-toplevel", + "message": "Import outside toplevel (pandas)", + "message-id": "C0415" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_recall", + "obj": "MeanAverageRecallResult.plot", + "line": 243, + "column": 12, + "endLine": 243, + "endColumn": 15, + "path": "src\\supervision\\metrics\\mean_average_recall.py", + "symbol": "disallowed-name", + "message": "Disallowed name \"bar\"", + "message-id": "C0104" + }, + { + "type": "warning", + "module": "supervision.metrics.mean_average_recall", + "obj": "MeanAverageRecall.update", + "line": 321, + "column": 4, + "endLine": 321, + "endColumn": 14, + "path": "src\\supervision\\metrics\\mean_average_recall.py", + "symbol": "arguments-differ", + "message": "Number of parameters was 3 in 'Metric.update' and is now 3 in overriding 'MeanAverageRecall.update' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.metrics.mean_average_recall", + "obj": "MeanAverageRecall.update", + "line": 321, + "column": 4, + "endLine": 321, + "endColumn": 14, + "path": "src\\supervision\\metrics\\mean_average_recall.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'MeanAverageRecall.update' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.metrics.mean_average_recall", + "obj": "MeanAverageRecall.compute", + "line": 352, + "column": 4, + "endLine": 352, + "endColumn": 15, + "path": "src\\supervision\\metrics\\mean_average_recall.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'MeanAverageRecall.compute' method", + "message-id": "W0221" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_recall", + "obj": "MeanAverageRecall._compute", + "line": 381, + "column": 4, + "endLine": 381, + "endColumn": 16, + "path": "src\\supervision\\metrics\\mean_average_recall.py", + "symbol": "too-many-locals", + "message": "Too many local variables (16/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_recall", + "obj": "MeanAverageRecall._compute_confusion_matrix", + "line": 539, + "column": 4, + "endLine": 539, + "endColumn": 33, + "path": "src\\supervision\\metrics\\mean_average_recall.py", + "symbol": "too-many-locals", + "message": "Too many local variables (17/15)", + "message-id": "R0914" + }, + { + "type": "convention", + "module": "supervision.metrics.precision", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\metrics\\precision.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "warning", + "module": "supervision.metrics.precision", + "obj": "Precision.update", + "line": 95, + "column": 4, + "endLine": 95, + "endColumn": 14, + "path": "src\\supervision\\metrics\\precision.py", + "symbol": "arguments-differ", + "message": "Number of parameters was 3 in 'Metric.update' and is now 3 in overriding 'Precision.update' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.metrics.precision", + "obj": "Precision.update", + "line": 95, + "column": 4, + "endLine": 95, + "endColumn": 14, + "path": "src\\supervision\\metrics\\precision.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'Precision.update' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.metrics.precision", + "obj": "Precision.compute", + "line": 126, + "column": 4, + "endLine": 126, + "endColumn": 15, + "path": "src\\supervision\\metrics\\precision.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'Precision.compute' method", + "message-id": "W0221" + }, + { + "type": "error", + "module": "supervision.metrics.precision", + "obj": "Precision._compute_precision_for_classes", + "line": 317, + "column": 15, + "endLine": 317, + "endColumn": 31, + "path": "src\\supervision\\metrics\\precision.py", + "symbol": "possibly-used-before-assignment", + "message": "Possibly using variable 'precision_scores' before assignment", + "message-id": "E0606" + }, + { + "type": "refactor", + "module": "supervision.metrics.precision", + "obj": "Precision._compute_confusion_matrix", + "line": 351, + "column": 4, + "endLine": 351, + "endColumn": 33, + "path": "src\\supervision\\metrics\\precision.py", + "symbol": "too-many-locals", + "message": "Too many local variables (16/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.metrics.precision", + "obj": "PrecisionResult", + "line": 521, + "column": 0, + "endLine": 521, + "endColumn": 21, + "path": "src\\supervision\\metrics\\precision.py", + "symbol": "too-many-instance-attributes", + "message": "Too many instance attributes (9/7)", + "message-id": "R0902" + }, + { + "type": "convention", + "module": "supervision.metrics.precision", + "obj": "PrecisionResult.precision_at_50", + "line": 555, + "column": 4, + "endLine": 555, + "endColumn": 23, + "path": "src\\supervision\\metrics\\precision.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.metrics.precision", + "obj": "PrecisionResult.precision_at_75", + "line": 559, + "column": 4, + "endLine": 559, + "endColumn": 23, + "path": "src\\supervision\\metrics\\precision.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.metrics.precision", + "obj": "PrecisionResult.to_pandas", + "line": 651, + "column": 8, + "endLine": 651, + "endColumn": 27, + "path": "src\\supervision\\metrics\\precision.py", + "symbol": "import-outside-toplevel", + "message": "Import outside toplevel (pandas)", + "message-id": "C0415" + }, + { + "type": "convention", + "module": "supervision.metrics.precision", + "obj": "PrecisionResult.plot", + "line": 722, + "column": 12, + "endLine": 722, + "endColumn": 15, + "path": "src\\supervision\\metrics\\precision.py", + "symbol": "disallowed-name", + "message": "Disallowed name \"bar\"", + "message-id": "C0104" + }, + { + "type": "convention", + "module": "supervision.metrics.recall", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "warning", + "module": "supervision.metrics.recall", + "obj": "Recall.update", + "line": 95, + "column": 4, + "endLine": 95, + "endColumn": 14, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "arguments-differ", + "message": "Number of parameters was 3 in 'Metric.update' and is now 3 in overriding 'Recall.update' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.metrics.recall", + "obj": "Recall.update", + "line": 95, + "column": 4, + "endLine": 95, + "endColumn": 14, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'Recall.update' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.metrics.recall", + "obj": "Recall.compute", + "line": 126, + "column": 4, + "endLine": 126, + "endColumn": 15, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'Recall.compute' method", + "message-id": "W0221" + }, + { + "type": "error", + "module": "supervision.metrics.recall", + "obj": "Recall._compute_recall_for_classes", + "line": 273, + "column": 15, + "endLine": 273, + "endColumn": 28, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "possibly-used-before-assignment", + "message": "Possibly using variable 'recall_scores' before assignment", + "message-id": "E0606" + }, + { + "type": "refactor", + "module": "supervision.metrics.recall", + "obj": "Recall._compute_confusion_matrix", + "line": 307, + "column": 4, + "endLine": 307, + "endColumn": 33, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "too-many-locals", + "message": "Too many local variables (16/15)", + "message-id": "R0914" + }, + { + "type": "warning", + "module": "supervision.metrics.recall", + "obj": "Recall._make_empty_content", + "line": 429, + "column": 8, + "endLine": 429, + "endColumn": 73, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "unreachable", + "message": "Unreachable code", + "message-id": "W0101" + }, + { + "type": "refactor", + "module": "supervision.metrics.recall", + "obj": "RecallResult", + "line": 479, + "column": 0, + "endLine": 479, + "endColumn": 18, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "too-many-instance-attributes", + "message": "Too many instance attributes (9/7)", + "message-id": "R0902" + }, + { + "type": "convention", + "module": "supervision.metrics.recall", + "obj": "RecallResult.recall_at_50", + "line": 511, + "column": 4, + "endLine": 511, + "endColumn": 20, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.metrics.recall", + "obj": "RecallResult.recall_at_75", + "line": 515, + "column": 4, + "endLine": 515, + "endColumn": 20, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.metrics.recall", + "obj": "RecallResult.to_pandas", + "line": 605, + "column": 8, + "endLine": 605, + "endColumn": 27, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "import-outside-toplevel", + "message": "Import outside toplevel (pandas)", + "message-id": "C0415" + }, + { + "type": "convention", + "module": "supervision.metrics.recall", + "obj": "RecallResult.plot", + "line": 676, + "column": 12, + "endLine": 676, + "endColumn": 15, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "disallowed-name", + "message": "Disallowed name \"bar\"", + "message-id": "C0104" + }, + { + "type": "convention", + "module": "supervision.metrics", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\metrics\\__init__.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.metrics.utils.object_size", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\metrics\\utils\\object_size.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.metrics.utils.object_size", + "obj": "get_bbox_size_category", + "line": 119, + "column": 4, + "endLine": 119, + "endColumn": 6, + "path": "src\\supervision\\metrics\\utils\\object_size.py", + "symbol": "invalid-name", + "message": "Variable name \"SM\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.utils.object_size", + "obj": "get_bbox_size_category", + "line": 119, + "column": 8, + "endLine": 119, + "endColumn": 10, + "path": "src\\supervision\\metrics\\utils\\object_size.py", + "symbol": "invalid-name", + "message": "Variable name \"LG\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.utils.object_size", + "obj": "get_mask_size_category", + "line": 161, + "column": 4, + "endLine": 161, + "endColumn": 6, + "path": "src\\supervision\\metrics\\utils\\object_size.py", + "symbol": "invalid-name", + "message": "Variable name \"SM\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.utils.object_size", + "obj": "get_mask_size_category", + "line": 161, + "column": 8, + "endLine": 161, + "endColumn": 10, + "path": "src\\supervision\\metrics\\utils\\object_size.py", + "symbol": "invalid-name", + "message": "Variable name \"LG\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.utils.object_size", + "obj": "get_obb_size_category", + "line": 207, + "column": 4, + "endLine": 207, + "endColumn": 6, + "path": "src\\supervision\\metrics\\utils\\object_size.py", + "symbol": "invalid-name", + "message": "Variable name \"SM\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.utils.object_size", + "obj": "get_obb_size_category", + "line": 207, + "column": 8, + "endLine": 207, + "endColumn": 10, + "path": "src\\supervision\\metrics\\utils\\object_size.py", + "symbol": "invalid-name", + "message": "Variable name \"LG\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.utils.utils", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\metrics\\utils\\utils.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.metrics.utils.utils", + "obj": "ensure_pandas_installed", + "line": 1, + "column": 0, + "endLine": 1, + "endColumn": 27, + "path": "src\\supervision\\metrics\\utils\\utils.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.metrics.utils.utils", + "obj": "ensure_pandas_installed", + "line": 3, + "column": 8, + "endLine": 3, + "endColumn": 21, + "path": "src\\supervision\\metrics\\utils\\utils.py", + "symbol": "import-outside-toplevel", + "message": "Import outside toplevel (pandas)", + "message-id": "C0415" + }, + { + "type": "warning", + "module": "supervision.metrics.utils.utils", + "obj": "ensure_pandas_installed", + "line": 5, + "column": 8, + "endLine": 9, + "endColumn": 9, + "path": "src\\supervision\\metrics\\utils\\utils.py", + "symbol": "raise-missing-from", + "message": "Consider explicitly re-raising using 'except ImportError as exc' and 'raise ImportError(\"`metrics` extra is required to run the function. Run `uv pip install 'supervision[metrics]'` or `uv add supervision --extra metrics`.\") from exc'", + "message-id": "W0707" + }, + { + "type": "warning", + "module": "supervision.metrics.utils.utils", + "obj": "ensure_pandas_installed", + "line": 3, + "column": 8, + "endLine": 3, + "endColumn": 21, + "path": "src\\supervision\\metrics\\utils\\utils.py", + "symbol": "unused-import", + "message": "Unused import pandas", + "message-id": "W0611" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.core", + "obj": "", + "line": 33, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "line-too-long", + "message": "Line too long (145/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.core", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "refactor", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack", + "line": 22, + "column": 0, + "endLine": 22, + "endColumn": 15, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "too-many-instance-attributes", + "message": "Too many instance attributes (13/7)", + "message-id": "R0902" + }, + { + "type": "refactor", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack.update_with_detections", + "line": 133, + "column": 8, + "endLine": 155, + "endColumn": 29, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "no-else-return", + "message": "Unnecessary \"else\" after \"return\", remove the \"else\" and de-indent the code inside it", + "message-id": "R1705" + }, + { + "type": "refactor", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack.update_with_tensors", + "line": 173, + "column": 4, + "endLine": 173, + "endColumn": 27, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "too-many-locals", + "message": "Too many local variables (35/15)", + "message-id": "R0914" + }, + { + "type": "warning", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack.update_with_tensors", + "line": 203, + "column": 12, + "endLine": 203, + "endColumn": 28, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "pointless-string-statement", + "message": "String statement has no effect", + "message-id": "W0105" + }, + { + "type": "warning", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack.update_with_tensors", + "line": 218, + "column": 8, + "endLine": 218, + "endColumn": 62, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "pointless-string-statement", + "message": "String statement has no effect", + "message-id": "W0105" + }, + { + "type": "warning", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack.update_with_tensors", + "line": 228, + "column": 8, + "endLine": 228, + "endColumn": 73, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "pointless-string-statement", + "message": "String statement has no effect", + "message-id": "W0105" + }, + { + "type": "warning", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack.update_with_tensors", + "line": 249, + "column": 8, + "endLine": 249, + "endColumn": 73, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "pointless-string-statement", + "message": "String statement has no effect", + "message-id": "W0105" + }, + { + "type": "warning", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack.update_with_tensors", + "line": 252, + "column": 12, + "endLine": 252, + "endColumn": 28, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "pointless-string-statement", + "message": "String statement has no effect", + "message-id": "W0105" + }, + { + "type": "warning", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack.update_with_tensors", + "line": 291, + "column": 8, + "endLine": 291, + "endColumn": 88, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "pointless-string-statement", + "message": "String statement has no effect", + "message-id": "W0105" + }, + { + "type": "warning", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack.update_with_tensors", + "line": 307, + "column": 8, + "endLine": 307, + "endColumn": 39, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "pointless-string-statement", + "message": "String statement has no effect", + "message-id": "W0105" + }, + { + "type": "warning", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack.update_with_tensors", + "line": 314, + "column": 8, + "endLine": 314, + "endColumn": 35, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "pointless-string-statement", + "message": "String statement has no effect", + "message-id": "W0105" + }, + { + "type": "refactor", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack.update_with_tensors", + "line": 173, + "column": 4, + "endLine": 173, + "endColumn": 27, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "too-many-branches", + "message": "Too many branches (21/12)", + "message-id": "R0912" + }, + { + "type": "refactor", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack.update_with_tensors", + "line": 173, + "column": 4, + "endLine": 173, + "endColumn": 27, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "too-many-statements", + "message": "Too many statements (92/50)", + "message-id": "R0915" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.core", + "obj": "remove_duplicate_tracks", + "line": 383, + "column": 0, + "endLine": 383, + "endColumn": 27, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.kalman_filter", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\tracker\\byte_tracker\\kalman_filter.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.matching", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\tracker\\byte_tracker\\matching.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.matching", + "obj": "indices_to_matches", + "line": 15, + "column": 0, + "endLine": 15, + "endColumn": 22, + "path": "src\\supervision\\tracker\\byte_tracker\\matching.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.matching", + "obj": "linear_assignment", + "line": 27, + "column": 0, + "endLine": 27, + "endColumn": 21, + "path": "src\\supervision\\tracker\\byte_tracker\\matching.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.matching", + "obj": "iou_distance", + "line": 44, + "column": 0, + "endLine": 44, + "endColumn": 16, + "path": "src\\supervision\\tracker\\byte_tracker\\matching.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.matching", + "obj": "fuse_score", + "line": 65, + "column": 0, + "endLine": 65, + "endColumn": 14, + "path": "src\\supervision\\tracker\\byte_tracker\\matching.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "TrackState", + "line": 12, + "column": 0, + "endLine": 12, + "endColumn": 16, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "missing-class-docstring", + "message": "Missing class docstring", + "message-id": "C0115" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "TrackState", + "line": 13, + "column": 4, + "endLine": 13, + "endColumn": 7, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "invalid-name", + "message": "Class constant name \"New\" doesn't conform to UPPER_CASE naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "TrackState", + "line": 14, + "column": 4, + "endLine": 14, + "endColumn": 11, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "invalid-name", + "message": "Class constant name \"Tracked\" doesn't conform to UPPER_CASE naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "TrackState", + "line": 15, + "column": 4, + "endLine": 15, + "endColumn": 8, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "invalid-name", + "message": "Class constant name \"Lost\" doesn't conform to UPPER_CASE naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "TrackState", + "line": 16, + "column": 4, + "endLine": 16, + "endColumn": 11, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "invalid-name", + "message": "Class constant name \"Removed\" doesn't conform to UPPER_CASE naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "STrack", + "line": 19, + "column": 0, + "endLine": 19, + "endColumn": 12, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "missing-class-docstring", + "message": "Missing class docstring", + "message-id": "C0115" + }, + { + "type": "refactor", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "STrack", + "line": 19, + "column": 0, + "endLine": 19, + "endColumn": 12, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "too-many-instance-attributes", + "message": "Too many instance attributes (16/7)", + "message-id": "R0902" + }, + { + "type": "refactor", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "STrack.__init__", + "line": 20, + "column": 4, + "endLine": 20, + "endColumn": 16, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (6/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "STrack.__init__", + "line": 20, + "column": 4, + "endLine": 20, + "endColumn": 16, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (6/5)", + "message-id": "R0917" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "STrack.predict", + "line": 51, + "column": 4, + "endLine": 51, + "endColumn": 15, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "STrack.multi_predict", + "line": 63, + "column": 4, + "endLine": 63, + "endColumn": 21, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "STrack.re_activate", + "line": 100, + "column": 4, + "endLine": 100, + "endColumn": 19, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "STrack.to_xyah", + "line": 170, + "column": 4, + "endLine": 170, + "endColumn": 15, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "STrack.tlbr_to_tlwh", + "line": 174, + "column": 4, + "endLine": 174, + "endColumn": 20, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "STrack.tlwh_to_tlbr", + "line": 180, + "column": 4, + "endLine": 180, + "endColumn": 20, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.utils", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\tracker\\byte_tracker\\utils.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.utils", + "obj": "IdCounter", + "line": 4, + "column": 0, + "endLine": 4, + "endColumn": 15, + "path": "src\\supervision\\tracker\\byte_tracker\\utils.py", + "symbol": "missing-class-docstring", + "message": "Missing class docstring", + "message-id": "C0115" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.utils", + "obj": "IdCounter.NO_ID", + "line": 36, + "column": 4, + "endLine": 36, + "endColumn": 13, + "path": "src\\supervision\\tracker\\byte_tracker\\utils.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.utils", + "obj": "IdCounter.NO_ID", + "line": 36, + "column": 4, + "endLine": 36, + "endColumn": 13, + "path": "src\\supervision\\tracker\\byte_tracker\\utils.py", + "symbol": "invalid-name", + "message": "Attribute name \"NO_ID\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.utils.conversion", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\utils\\conversion.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.utils.conversion", + "obj": "ensure_cv2_image_for_annotation", + "line": 48, + "column": 0, + "endLine": 48, + "endColumn": 35, + "path": "src\\supervision\\utils\\conversion.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.utils.conversion", + "obj": "ensure_pil_image_for_annotation", + "line": 110, + "column": 0, + "endLine": 110, + "endColumn": 35, + "path": "src\\supervision\\utils\\conversion.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.utils.conversion", + "obj": "ensure_cv2_image_for_processing", + "line": 121, + "column": 0, + "endLine": 121, + "endColumn": 35, + "path": "src\\supervision\\utils\\conversion.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "error", + "module": "supervision.utils.conversion", + "obj": "pillow_to_cv2", + "line": 160, + "column": 12, + "endLine": 160, + "endColumn": 24, + "path": "src\\supervision\\utils\\conversion.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'cvtColor' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.conversion", + "obj": "pillow_to_cv2", + "line": 160, + "column": 32, + "endLine": 160, + "endColumn": 49, + "path": "src\\supervision\\utils\\conversion.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'COLOR_RGB2BGR' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.conversion", + "obj": "cv2_to_pillow", + "line": 177, + "column": 12, + "endLine": 177, + "endColumn": 24, + "path": "src\\supervision\\utils\\conversion.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'cvtColor' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.conversion", + "obj": "cv2_to_pillow", + "line": 177, + "column": 32, + "endLine": 177, + "endColumn": 49, + "path": "src\\supervision\\utils\\conversion.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'COLOR_BGR2RGB' member", + "message-id": "E1101" + }, + { + "type": "convention", + "module": "supervision.utils.file", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\utils\\file.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.utils.file", + "obj": "NumpyJsonEncoder", + "line": 11, + "column": 0, + "endLine": 11, + "endColumn": 22, + "path": "src\\supervision\\utils\\file.py", + "symbol": "missing-class-docstring", + "message": "Missing class docstring", + "message-id": "C0115" + }, + { + "type": "warning", + "module": "supervision.utils.file", + "obj": "NumpyJsonEncoder.default", + "line": 12, + "column": 4, + "endLine": 12, + "endColumn": 15, + "path": "src\\supervision\\utils\\file.py", + "symbol": "arguments-renamed", + "message": "Parameter 'o' has been renamed to 'obj' in overriding 'NumpyJsonEncoder.default' method", + "message-id": "W0237" + }, + { + "type": "warning", + "module": "supervision.utils.file", + "obj": "read_txt_file", + "line": 120, + "column": 9, + "endLine": 120, + "endColumn": 29, + "path": "src\\supervision\\utils\\file.py", + "symbol": "unspecified-encoding", + "message": "Using open without explicitly specifying an encoding", + "message-id": "W1514" + }, + { + "type": "warning", + "module": "supervision.utils.file", + "obj": "save_text_file", + "line": 137, + "column": 9, + "endLine": 137, + "endColumn": 34, + "path": "src\\supervision\\utils\\file.py", + "symbol": "unspecified-encoding", + "message": "Using open without explicitly specifying an encoding", + "message-id": "W1514" + }, + { + "type": "warning", + "module": "supervision.utils.file", + "obj": "read_json_file", + "line": 166, + "column": 9, + "endLine": 166, + "endColumn": 29, + "path": "src\\supervision\\utils\\file.py", + "symbol": "unspecified-encoding", + "message": "Using open without explicitly specifying an encoding", + "message-id": "W1514" + }, + { + "type": "warning", + "module": "supervision.utils.file", + "obj": "save_json_file", + "line": 182, + "column": 9, + "endLine": 182, + "endColumn": 34, + "path": "src\\supervision\\utils\\file.py", + "symbol": "unspecified-encoding", + "message": "Using open without explicitly specifying an encoding", + "message-id": "W1514" + }, + { + "type": "warning", + "module": "supervision.utils.file", + "obj": "read_yaml_file", + "line": 196, + "column": 9, + "endLine": 196, + "endColumn": 29, + "path": "src\\supervision\\utils\\file.py", + "symbol": "unspecified-encoding", + "message": "Using open without explicitly specifying an encoding", + "message-id": "W1514" + }, + { + "type": "warning", + "module": "supervision.utils.file", + "obj": "save_yaml_file", + "line": 210, + "column": 9, + "endLine": 210, + "endColumn": 34, + "path": "src\\supervision\\utils\\file.py", + "symbol": "unspecified-encoding", + "message": "Using open without explicitly specifying an encoding", + "message-id": "W1514" + }, + { + "type": "convention", + "module": "supervision.utils.image", + "obj": "", + "line": 75, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\utils\\image.py", + "symbol": "line-too-long", + "message": "Line too long (125/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.utils.image", + "obj": "", + "line": 133, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\utils\\image.py", + "symbol": "line-too-long", + "message": "Line too long (127/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.utils.image", + "obj": "", + "line": 191, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\utils\\image.py", + "symbol": "line-too-long", + "message": "Line too long (129/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.utils.image", + "obj": "", + "line": 253, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\utils\\image.py", + "symbol": "line-too-long", + "message": "Line too long (135/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.utils.image", + "obj": "", + "line": 390, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\utils\\image.py", + "symbol": "line-too-long", + "message": "Line too long (125/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.utils.image", + "obj": "", + "line": 428, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\utils\\image.py", + "symbol": "line-too-long", + "message": "Line too long (135/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.utils.image", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\utils\\image.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "error", + "module": "supervision.utils.image", + "obj": "scale_image", + "line": 142, + "column": 11, + "endLine": 142, + "endColumn": 21, + "path": "src\\supervision\\utils\\image.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'resize' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.image", + "obj": "scale_image", + "line": 142, + "column": 68, + "endLine": 142, + "endColumn": 84, + "path": "src\\supervision\\utils\\image.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'INTER_LINEAR' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.image", + "obj": "resize_image", + "line": 206, + "column": 11, + "endLine": 206, + "endColumn": 21, + "path": "src\\supervision\\utils\\image.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'resize' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.image", + "obj": "resize_image", + "line": 206, + "column": 68, + "endLine": 206, + "endColumn": 84, + "path": "src\\supervision\\utils\\image.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'INTER_LINEAR' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.image", + "obj": "letterbox_image", + "line": 265, + "column": 25, + "endLine": 265, + "endColumn": 43, + "path": "src\\supervision\\utils\\image.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'copyMakeBorder' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.image", + "obj": "letterbox_image", + "line": 271, + "column": 8, + "endLine": 271, + "endColumn": 27, + "path": "src\\supervision\\utils\\image.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'BORDER_CONSTANT' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.utils.image", + "obj": "overlay_image", + "line": 283, + "column": 0, + "endLine": 283, + "endColumn": 17, + "path": "src\\supervision\\utils\\image.py", + "symbol": "too-many-locals", + "message": "Too many local variables (25/15)", + "message-id": "R0914" + }, + { + "type": "error", + "module": "supervision.utils.image", + "obj": "overlay_image", + "line": 317, + "column": 32, + "endLine": 317, + "endColumn": 43, + "path": "src\\supervision\\utils\\image.py", + "symbol": "no-member", + "message": "Module 'supervision.utils.image' has no 'shape' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.image", + "obj": "overlay_image", + "line": 338, + "column": 25, + "endLine": 338, + "endColumn": 34, + "path": "src\\supervision\\utils\\image.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'split' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.image", + "obj": "overlay_image", + "line": 342, + "column": 24, + "endLine": 342, + "endColumn": 33, + "path": "src\\supervision\\utils\\image.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'merge' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.image", + "obj": "overlay_image", + "line": 344, + "column": 14, + "endLine": 344, + "endColumn": 19, + "path": "src\\supervision\\utils\\image.py", + "symbol": "unsubscriptable-object", + "message": "Value 'image' is unsubscriptable", + "message-id": "E1136" + }, + { + "type": "error", + "module": "supervision.utils.image", + "obj": "overlay_image", + "line": 346, + "column": 8, + "endLine": 346, + "endColumn": 13, + "path": "src\\supervision\\utils\\image.py", + "symbol": "unsupported-assignment-operation", + "message": "'image' does not support item assignment", + "message-id": "E1137" + }, + { + "type": "error", + "module": "supervision.utils.image", + "obj": "overlay_image", + "line": 348, + "column": 8, + "endLine": 348, + "endColumn": 13, + "path": "src\\supervision\\utils\\image.py", + "symbol": "unsupported-assignment-operation", + "message": "'image' does not support item assignment", + "message-id": "E1137" + }, + { + "type": "error", + "module": "supervision.utils.image", + "obj": "tint_image", + "line": 397, + "column": 4, + "endLine": 397, + "endColumn": 19, + "path": "src\\supervision\\utils\\image.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'addWeighted' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.image", + "obj": "grayscale_image", + "line": 430, + "column": 17, + "endLine": 430, + "endColumn": 29, + "path": "src\\supervision\\utils\\image.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'cvtColor' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.image", + "obj": "grayscale_image", + "line": 430, + "column": 37, + "endLine": 430, + "endColumn": 55, + "path": "src\\supervision\\utils\\image.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'COLOR_BGR2GRAY' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.image", + "obj": "grayscale_image", + "line": 431, + "column": 11, + "endLine": 431, + "endColumn": 23, + "path": "src\\supervision\\utils\\image.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'cvtColor' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.image", + "obj": "grayscale_image", + "line": 431, + "column": 36, + "endLine": 431, + "endColumn": 54, + "path": "src\\supervision\\utils\\image.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'COLOR_GRAY2BGR' member", + "message-id": "E1101" + }, + { + "type": "convention", + "module": "supervision.utils.image", + "obj": "ImageSink", + "line": 481, + "column": 0, + "endLine": 481, + "endColumn": 15, + "path": "src\\supervision\\utils\\image.py", + "symbol": "missing-class-docstring", + "message": "Missing class docstring", + "message-id": "C0115" + }, + { + "type": "error", + "module": "supervision.utils.image", + "obj": "ImageSink.save_image", + "line": 548, + "column": 8, + "endLine": 548, + "endColumn": 19, + "path": "src\\supervision\\utils\\image.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'imwrite' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.utils.image", + "obj": "create_tiles", + "line": 565, + "column": 0, + "endLine": 565, + "endColumn": 16, + "path": "src\\supervision\\utils\\image.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (16/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.utils.image", + "obj": "create_tiles", + "line": 565, + "column": 0, + "endLine": 565, + "endColumn": 16, + "path": "src\\supervision\\utils\\image.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (16/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.utils.image", + "obj": "create_tiles", + "line": 565, + "column": 0, + "endLine": 565, + "endColumn": 16, + "path": "src\\supervision\\utils\\image.py", + "symbol": "too-many-locals", + "message": "Too many local variables (20/15)", + "message-id": "R0914" + }, + { + "type": "error", + "module": "supervision.utils.image", + "obj": "create_tiles", + "line": 580, + "column": 28, + "endLine": 580, + "endColumn": 52, + "path": "src\\supervision\\utils\\image.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'FONT_HERSHEY_SIMPLEX' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.utils.image", + "obj": "_generate_tiles", + "line": 767, + "column": 0, + "endLine": 767, + "endColumn": 19, + "path": "src\\supervision\\utils\\image.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (15/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.utils.image", + "obj": "_generate_tiles", + "line": 767, + "column": 0, + "endLine": 767, + "endColumn": 19, + "path": "src\\supervision\\utils\\image.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (15/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.utils.image", + "obj": "_generate_tiles", + "line": 767, + "column": 0, + "endLine": 767, + "endColumn": 19, + "path": "src\\supervision\\utils\\image.py", + "symbol": "too-many-locals", + "message": "Too many local variables (18/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.utils.image", + "obj": "_draw_texts", + "line": 816, + "column": 0, + "endLine": 816, + "endColumn": 15, + "path": "src\\supervision\\utils\\image.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (10/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.utils.image", + "obj": "_draw_texts", + "line": 816, + "column": 0, + "endLine": 816, + "endColumn": 15, + "path": "src\\supervision\\utils\\image.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (10/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.utils.image", + "obj": "_draw_texts", + "line": 816, + "column": 0, + "endLine": 816, + "endColumn": 15, + "path": "src\\supervision\\utils\\image.py", + "symbol": "too-many-locals", + "message": "Too many local variables (18/15)", + "message-id": "R0914" + }, + { + "type": "convention", + "module": "supervision.utils.internal", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\utils\\internal.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "warning", + "module": "supervision.utils.internal", + "obj": "SupervisionWarnings", + "line": 18, + "column": 4, + "endLine": 18, + "endColumn": 8, + "path": "src\\supervision\\utils\\internal.py", + "symbol": "unnecessary-pass", + "message": "Unnecessary pass statement", + "message-id": "W0107" + }, + { + "type": "warning", + "module": "supervision.utils.internal", + "obj": "format_warning", + "line": 24, + "column": 4, + "endLine": 24, + "endColumn": 17, + "path": "src\\supervision\\utils\\internal.py", + "symbol": "unused-argument", + "message": "Unused argument 'filename'", + "message-id": "W0613" + }, + { + "type": "warning", + "module": "supervision.utils.internal", + "obj": "format_warning", + "line": 25, + "column": 4, + "endLine": 25, + "endColumn": 15, + "path": "src\\supervision\\utils\\internal.py", + "symbol": "unused-argument", + "message": "Unused argument 'lineno'", + "message-id": "W0613" + }, + { + "type": "warning", + "module": "supervision.utils.internal", + "obj": "format_warning", + "line": 26, + "column": 4, + "endLine": 26, + "endColumn": 20, + "path": "src\\supervision\\utils\\internal.py", + "symbol": "unused-argument", + "message": "Unused argument 'line'", + "message-id": "W0613" + }, + { + "type": "convention", + "module": "supervision.utils.internal", + "obj": "classproperty", + "line": 133, + "column": 0, + "endLine": 133, + "endColumn": 19, + "path": "src\\supervision\\utils\\internal.py", + "symbol": "invalid-name", + "message": "Class name \"classproperty\" doesn't conform to PascalCase naming style", + "message-id": "C0103" + }, + { + "type": "refactor", + "module": "supervision.utils.internal", + "obj": "classproperty", + "line": 133, + "column": 0, + "endLine": 133, + "endColumn": 19, + "path": "src\\supervision\\utils\\internal.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "convention", + "module": "supervision.utils.iterables", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\utils\\iterables.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.utils.logger", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\utils\\logger.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.utils.notebook", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\utils\\notebook.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "error", + "module": "supervision.utils.notebook", + "obj": "plot_image", + "line": 44, + "column": 19, + "endLine": 44, + "endColumn": 31, + "path": "src\\supervision\\utils\\notebook.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'cvtColor' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.notebook", + "obj": "plot_image", + "line": 44, + "column": 39, + "endLine": 44, + "endColumn": 56, + "path": "src\\supervision\\utils\\notebook.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'COLOR_BGR2RGB' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.notebook", + "obj": "plot_images_grid", + "line": 111, + "column": 26, + "endLine": 111, + "endColumn": 38, + "path": "src\\supervision\\utils\\notebook.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'cvtColor' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.notebook", + "obj": "plot_images_grid", + "line": 111, + "column": 52, + "endLine": 111, + "endColumn": 69, + "path": "src\\supervision\\utils\\notebook.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'COLOR_BGR2RGB' member", + "message-id": "E1101" + }, + { + "type": "convention", + "module": "supervision.utils.video", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\utils\\video.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.utils.video", + "obj": "VideoInfo.from_video_path", + "line": 59, + "column": 4, + "endLine": 59, + "endColumn": 23, + "path": "src\\supervision\\utils\\video.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "error", + "module": "supervision.utils.video", + "obj": "VideoInfo.from_video_path", + "line": 60, + "column": 16, + "endLine": 60, + "endColumn": 32, + "path": "src\\supervision\\utils\\video.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'VideoCapture' member", + "message-id": "E1101" + }, + { + "type": "warning", + "module": "supervision.utils.video", + "obj": "VideoInfo.from_video_path", + "line": 62, + "column": 12, + "endLine": 62, + "endColumn": 68, + "path": "src\\supervision\\utils\\video.py", + "symbol": "broad-exception-raised", + "message": "Raising too general exception: Exception", + "message-id": "W0719" + }, + { + "type": "error", + "module": "supervision.utils.video", + "obj": "VideoInfo.from_video_path", + "line": 64, + "column": 30, + "endLine": 64, + "endColumn": 54, + "path": "src\\supervision\\utils\\video.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'CAP_PROP_FRAME_WIDTH' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.video", + "obj": "VideoInfo.from_video_path", + "line": 65, + "column": 31, + "endLine": 65, + "endColumn": 56, + "path": "src\\supervision\\utils\\video.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'CAP_PROP_FRAME_HEIGHT' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.video", + "obj": "VideoInfo.from_video_path", + "line": 66, + "column": 30, + "endLine": 66, + "endColumn": 46, + "path": "src\\supervision\\utils\\video.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'CAP_PROP_FPS' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.video", + "obj": "VideoInfo.from_video_path", + "line": 67, + "column": 37, + "endLine": 67, + "endColumn": 61, + "path": "src\\supervision\\utils\\video.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'CAP_PROP_FRAME_COUNT' member", + "message-id": "E1101" + }, + { + "type": "convention", + "module": "supervision.utils.video", + "obj": "VideoInfo.resolution_wh", + "line": 72, + "column": 4, + "endLine": 72, + "endColumn": 21, + "path": "src\\supervision\\utils\\video.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "error", + "module": "supervision.utils.video", + "obj": "VideoSink.__enter__", + "line": 107, + "column": 28, + "endLine": 107, + "endColumn": 50, + "path": "src\\supervision\\utils\\video.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'VideoWriter_fourcc' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.video", + "obj": "VideoSink.__enter__", + "line": 110, + "column": 28, + "endLine": 110, + "endColumn": 50, + "path": "src\\supervision\\utils\\video.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'VideoWriter_fourcc' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.video", + "obj": "VideoSink.__enter__", + "line": 111, + "column": 24, + "endLine": 111, + "endColumn": 39, + "path": "src\\supervision\\utils\\video.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'VideoWriter' member", + "message-id": "E1101" + }, + { + "type": "warning", + "module": "supervision.utils.video", + "obj": "VideoSink.__enter__", + "line": 107, + "column": 12, + "endLine": 107, + "endColumn": 25, + "path": "src\\supervision\\utils\\video.py", + "symbol": "attribute-defined-outside-init", + "message": "Attribute '__fourcc' defined outside __init__", + "message-id": "W0201" + }, + { + "type": "warning", + "module": "supervision.utils.video", + "obj": "VideoSink.__enter__", + "line": 110, + "column": 12, + "endLine": 110, + "endColumn": 25, + "path": "src\\supervision\\utils\\video.py", + "symbol": "attribute-defined-outside-init", + "message": "Attribute '__fourcc' defined outside __init__", + "message-id": "W0201" + }, + { + "type": "warning", + "module": "supervision.utils.video", + "obj": "_mux_audio", + "line": 198, + "column": 11, + "endLine": 198, + "endColumn": 20, + "path": "src\\supervision\\utils\\video.py", + "symbol": "broad-exception-caught", + "message": "Catching too general exception Exception", + "message-id": "W0718" + }, + { + "type": "warning", + "module": "supervision.utils.video", + "obj": "_mux_audio", + "line": 162, + "column": 17, + "endLine": 187, + "endColumn": 9, + "path": "src\\supervision\\utils\\video.py", + "symbol": "subprocess-run-check", + "message": "'subprocess.run' used without explicitly defining the value for 'check'.", + "message-id": "W1510" + }, + { + "type": "error", + "module": "supervision.utils.video", + "obj": "_validate_and_setup_video", + "line": 210, + "column": 12, + "endLine": 210, + "endColumn": 28, + "path": "src\\supervision\\utils\\video.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'VideoCapture' member", + "message-id": "E1101" + }, + { + "type": "warning", + "module": "supervision.utils.video", + "obj": "_validate_and_setup_video", + "line": 212, + "column": 8, + "endLine": 212, + "endColumn": 65, + "path": "src\\supervision\\utils\\video.py", + "symbol": "broad-exception-raised", + "message": "Raising too general exception: Exception", + "message-id": "W0719" + }, + { + "type": "error", + "module": "supervision.utils.video", + "obj": "_validate_and_setup_video", + "line": 213, + "column": 33, + "endLine": 213, + "endColumn": 57, + "path": "src\\supervision\\utils\\video.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'CAP_PROP_FRAME_COUNT' member", + "message-id": "E1101" + }, + { + "type": "warning", + "module": "supervision.utils.video", + "obj": "_validate_and_setup_video", + "line": 215, + "column": 8, + "endLine": 215, + "endColumn": 56, + "path": "src\\supervision\\utils\\video.py", + "symbol": "broad-exception-raised", + "message": "Raising too general exception: Exception", + "message-id": "W0719" + }, + { + "type": "error", + "module": "supervision.utils.video", + "obj": "_validate_and_setup_video", + "line": 226, + "column": 18, + "endLine": 226, + "endColumn": 41, + "path": "src\\supervision\\utils\\video.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'CAP_PROP_POS_FRAMES' member", + "message-id": "E1101" + }, + { + "type": "refactor", + "module": "supervision.utils.video", + "obj": "process_video", + "line": 283, + "column": 0, + "endLine": 283, + "endColumn": 17, + "path": "src\\supervision\\utils\\video.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (9/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.utils.video", + "obj": "process_video", + "line": 283, + "column": 0, + "endLine": 283, + "endColumn": 17, + "path": "src\\supervision\\utils\\video.py", + "symbol": "too-many-locals", + "message": "Too many local variables (26/15)", + "message-id": "R0914" + }, + { + "type": "warning", + "module": "supervision.utils.video", + "obj": "process_video", + "line": 417, + "column": 23, + "endLine": 417, + "endColumn": 32, + "path": "src\\supervision\\utils\\video.py", + "symbol": "broad-exception-caught", + "message": "Catching too general exception Exception", + "message-id": "W0718" + }, + { + "type": "refactor", + "module": "supervision.utils.video", + "obj": "process_video", + "line": 283, + "column": 0, + "endLine": 283, + "endColumn": 17, + "path": "src\\supervision\\utils\\video.py", + "symbol": "too-many-branches", + "message": "Too many branches (14/12)", + "message-id": "R0912" + }, + { + "type": "refactor", + "module": "supervision.utils.video", + "obj": "process_video", + "line": 283, + "column": 0, + "endLine": 283, + "endColumn": 17, + "path": "src\\supervision\\utils\\video.py", + "symbol": "too-many-statements", + "message": "Too many statements (56/50)", + "message-id": "R0915" + }, + { + "type": "convention", + "module": "supervision.validators", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.validators", + "obj": "validate_xyxy", + "line": 33, + "column": 0, + "endLine": 33, + "endColumn": 17, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.validators", + "obj": "validate_mask", + "line": 80, + "column": 0, + "endLine": 80, + "endColumn": 17, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.validators", + "obj": "validate_class_id", + "line": 102, + "column": 0, + "endLine": 102, + "endColumn": 21, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.validators", + "obj": "validate_confidence", + "line": 125, + "column": 0, + "endLine": 125, + "endColumn": 23, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.validators", + "obj": "validate_key_point_confidence", + "line": 156, + "column": 0, + "endLine": 156, + "endColumn": 33, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.validators", + "obj": "validate_keypoint_confidence", + "line": 165, + "column": 0, + "endLine": 165, + "endColumn": 32, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.validators", + "obj": "validate_tracker_id", + "line": 187, + "column": 0, + "endLine": 187, + "endColumn": 23, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "refactor", + "module": "supervision.validators", + "obj": "_validate_data", + "line": 197, + "column": 12, + "endLine": 202, + "endColumn": 17, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "no-else-raise", + "message": "Unnecessary \"elif\" after \"raise\", remove the leading \"el\" from \"elif\"", + "message-id": "R1720" + }, + { + "type": "convention", + "module": "supervision.validators", + "obj": "validate_data", + "line": 212, + "column": 0, + "endLine": 212, + "endColumn": 17, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.validators", + "obj": "validate_xy", + "line": 232, + "column": 0, + "endLine": 232, + "endColumn": 15, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "refactor", + "module": "supervision.validators", + "obj": "_validate_detections_fields", + "line": 259, + "column": 0, + "endLine": 259, + "endColumn": 31, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (6/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.validators", + "obj": "_validate_detections_fields", + "line": 259, + "column": 0, + "endLine": 259, + "endColumn": 31, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (6/5)", + "message-id": "R0917" + }, + { + "type": "convention", + "module": "supervision.validators", + "obj": "validate_detections_fields", + "line": 281, + "column": 0, + "endLine": 281, + "endColumn": 30, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "refactor", + "module": "supervision.validators", + "obj": "_validate_keypoints_fields", + "line": 292, + "column": 0, + "endLine": 292, + "endColumn": 30, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (6/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.validators", + "obj": "_validate_keypoints_fields", + "line": 292, + "column": 0, + "endLine": 292, + "endColumn": 30, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (6/5)", + "message-id": "R0917" + }, + { + "type": "convention", + "module": "supervision.validators", + "obj": "validate_key_points_fields", + "line": 317, + "column": 0, + "endLine": 317, + "endColumn": 30, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.validators", + "obj": "validate_keypoints_fields", + "line": 328, + "column": 0, + "endLine": 328, + "endColumn": 29, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.validators", + "obj": "validate_resolution", + "line": 362, + "column": 0, + "endLine": 362, + "endColumn": 23, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[78:229]\n==supervision.metrics.precision:[81:232]\n self._metric_target = metric_target\n self.averaging_method = averaging_method\n\n self._predictions_list: list[Detections] = []\n self._targets_list: list[Detections] = []\n\n def reset(self) -> None:\n \"\"\"\n Reset the metric to its initial state, clearing all stored data.\n \"\"\"\n self._predictions_list = []\n self._targets_list = []\n\n def update(\n self,\n predictions: Detections | list[Detections],\n targets: Detections | list[Detections],\n ) -> Precision:\n \"\"\"\n Add new predictions and targets to the metric, but do not compute the result.\n\n Args:\n predictions: The predicted detections.\n targets: The target detections.\n\n Returns:\n The updated metric instance.\n \"\"\"\n if not isinstance(predictions, list):\n predictions = [predictions]\n if not isinstance(targets, list):\n targets = [targets]\n\n if len(predictions) != len(targets):\n raise ValueError(\n f\"The number of predictions ({len(predictions)}) and\"\n f\" targets ({len(targets)}) during the update must be the same.\"\n )\n\n self._predictions_list.extend(predictions)\n self._targets_list.extend(targets)\n\n return self\n\n def compute(self) -> PrecisionResult:\n \"\"\"\n Calculate the precision metric based on the stored predictions and ground-truth\n data, at different IoU thresholds.\n\n Returns:\n The precision metric result.\n \"\"\"\n result = self._compute(self._predictions_list, self._targets_list)\n\n small_predictions, small_targets = self._filter_predictions_and_targets_by_size(\n self._predictions_list, self._targets_list, ObjectSizeCategory.SMALL\n )\n result.small_objects = self._compute(small_predictions, small_targets)\n\n medium_predictions, medium_targets = (\n self._filter_predictions_and_targets_by_size(\n self._predictions_list, self._targets_list, ObjectSizeCategory.MEDIUM\n )\n )\n result.medium_objects = self._compute(medium_predictions, medium_targets)\n\n large_predictions, large_targets = self._filter_predictions_and_targets_by_size(\n self._predictions_list, self._targets_list, ObjectSizeCategory.LARGE\n )\n result.large_objects = self._compute(large_predictions, large_targets)\n\n return result\n\n def _compute(\n self, predictions_list: list[Detections], targets_list: list[Detections]\n ) -> PrecisionResult:\n \"\"\"Build per-image stats tuples and delegate to class-level computation.\n\n Each stats tuple is ``(matches, confidence, class_ids, true_class_ids)``:\n - Both empty: skip (no information).\n - Targets empty, predictions present: all predictions are FPs; true_class_ids\n is ``zeros((0,))``.\n - Targets present: IoU matching produces ``matches`` array.\n \"\"\"\n iou_thresholds = np.linspace(0.5, 0.95, 10)\n stats: list[Any] = []\n\n for predictions, targets in zip(predictions_list, targets_list):\n prediction_contents = self._detections_content(predictions)\n target_contents = self._detections_content(targets)\n\n if len(targets) == 0 and len(predictions) > 0:\n # Only predictions are present (e.g. a background image); every\n # prediction is a false positive.\n if predictions.class_id is None or predictions.confidence is None:\n continue\n stats.append(\n (\n np.zeros(\n (len(predictions), iou_thresholds.size), dtype=np.bool_\n ),\n predictions.confidence,\n predictions.class_id,\n np.zeros((0,), dtype=np.int32),\n )\n )\n elif len(targets) > 0:\n if len(predictions) == 0:\n stats.append(\n (\n np.zeros((0, iou_thresholds.size), dtype=bool),\n np.zeros((0,), dtype=np.float32),\n np.zeros((0,), dtype=int),\n targets.class_id,\n )\n )\n\n else:\n if self._metric_target == MetricTarget.BOXES:\n iou = box_iou_batch(target_contents, prediction_contents)\n elif self._metric_target == MetricTarget.MASKS:\n iou = mask_iou_batch(target_contents, prediction_contents)\n elif self._metric_target == MetricTarget.ORIENTED_BOUNDING_BOXES:\n iou = oriented_box_iou_batch(\n target_contents, prediction_contents\n )\n else:\n raise ValueError(\n \"Unsupported metric target for IoU calculation\"\n )\n\n matches = self._match_detection_batch(\n predictions.class_id\n if predictions.class_id is not None\n else np.array([]),\n targets.class_id\n if targets.class_id is not None\n else np.array([]),\n iou,\n iou_thresholds,\n )\n stats.append(\n (\n matches,\n predictions.confidence,\n predictions.class_id,\n targets.class_id,\n )\n )\n\n if not stats:", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[435:511]\n==supervision.metrics.precision:[441:520]\n if self._metric_target == MetricTarget.BOXES:\n result_boxes: npt.NDArray[np.float32] = detections.xyxy\n return result_boxes\n if self._metric_target == MetricTarget.MASKS:\n if detections.mask is not None:\n result_masks: npt.NDArray[np.bool_] = detections.mask\n return result_masks\n return self._make_empty_content()\n if self._metric_target == MetricTarget.ORIENTED_BOUNDING_BOXES:\n obb = detections.data.get(ORIENTED_BOX_COORDINATES)\n if obb is not None and len(obb) > 0:\n result_obb: npt.NDArray[np.float32] = np.array(obb, dtype=np.float32)\n return result_obb\n return self._make_empty_content()\n raise ValueError(f\"Invalid metric target: {self._metric_target}\")\n\n def _make_empty_content(self) -> npt.NDArray[Any]:\n if self._metric_target == MetricTarget.BOXES:\n empty_boxes: npt.NDArray[np.float32] = np.empty((0, 4), dtype=np.float32)\n return empty_boxes\n if self._metric_target == MetricTarget.MASKS:\n empty_masks: npt.NDArray[np.bool_] = np.empty((0, 0, 0), dtype=bool)\n return empty_masks\n if self._metric_target == MetricTarget.ORIENTED_BOUNDING_BOXES:\n empty_obb: npt.NDArray[np.float32] = np.empty((0, 4, 2), dtype=np.float32)\n return empty_obb\n raise ValueError(f\"Invalid metric target: {self._metric_target}\")\n\n def _filter_detections_by_size(\n self, detections: Detections, size_category: ObjectSizeCategory\n ) -> Detections:\n \"\"\"Return a copy of detections with contents filtered by object size.\"\"\"\n new_detections = deepcopy(detections)\n if detections.is_empty() or size_category == ObjectSizeCategory.ANY:\n return new_detections\n\n sizes = get_detection_size_category(new_detections, self._metric_target)\n size_mask = sizes == size_category.value\n\n new_detections.xyxy = new_detections.xyxy[size_mask]\n if new_detections.mask is not None:\n new_detections.mask = new_detections.mask[size_mask]\n if new_detections.class_id is not None:\n new_detections.class_id = new_detections.class_id[size_mask]\n if new_detections.confidence is not None:\n new_detections.confidence = new_detections.confidence[size_mask]\n if new_detections.tracker_id is not None:\n new_detections.tracker_id = new_detections.tracker_id[size_mask]\n if new_detections.data is not None:\n for key, value in new_detections.data.items():\n new_detections.data[key] = np.array(value)[size_mask]\n\n return new_detections\n\n def _filter_predictions_and_targets_by_size(\n self,\n predictions_list: list[Detections],\n targets_list: list[Detections],\n size_category: ObjectSizeCategory,\n ) -> tuple[list[Detections], list[Detections]]:\n \"\"\"\n Filter predictions and targets by object size category.\n \"\"\"\n new_predictions_list = []\n new_targets_list = []\n for predictions, targets in zip(predictions_list, targets_list):\n new_predictions_list.append(\n self._filter_detections_by_size(predictions, size_category)\n )\n new_targets_list.append(\n self._filter_detections_by_size(targets, size_category)\n )\n return new_predictions_list, new_targets_list\n\n\n@dataclass", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[435:510]\n==supervision.metrics.mean_average_recall:[630:706]\n if self._metric_target == MetricTarget.BOXES:\n result_boxes: npt.NDArray[np.float32] = detections.xyxy\n return result_boxes\n if self._metric_target == MetricTarget.MASKS:\n if detections.mask is not None:\n result_masks: npt.NDArray[np.bool_] = detections.mask\n return result_masks\n return self._make_empty_content()\n if self._metric_target == MetricTarget.ORIENTED_BOUNDING_BOXES:\n obb = detections.data.get(ORIENTED_BOX_COORDINATES)\n if obb is not None and len(obb) > 0:\n result_obb: npt.NDArray[np.float32] = np.array(obb, dtype=np.float32)\n return result_obb\n return self._make_empty_content()\n raise ValueError(f\"Invalid metric target: {self._metric_target}\")\n\n def _make_empty_content(self) -> npt.NDArray[Any]:\n if self._metric_target == MetricTarget.BOXES:\n empty_boxes: npt.NDArray[np.float32] = np.empty((0, 4), dtype=np.float32)\n return empty_boxes\n if self._metric_target == MetricTarget.MASKS:\n empty_masks: npt.NDArray[np.bool_] = np.empty((0, 0, 0), dtype=bool)\n return empty_masks\n if self._metric_target == MetricTarget.ORIENTED_BOUNDING_BOXES:\n empty_obb: npt.NDArray[np.float32] = np.empty((0, 4, 2), dtype=np.float32)\n return empty_obb\n raise ValueError(f\"Invalid metric target: {self._metric_target}\")\n\n def _filter_detections_by_size(\n self, detections: Detections, size_category: ObjectSizeCategory\n ) -> Detections:\n \"\"\"Return a copy of detections with contents filtered by object size.\"\"\"\n new_detections = deepcopy(detections)\n if detections.is_empty() or size_category == ObjectSizeCategory.ANY:\n return new_detections\n\n sizes = get_detection_size_category(new_detections, self._metric_target)\n size_mask = sizes == size_category.value\n\n new_detections.xyxy = new_detections.xyxy[size_mask]\n if new_detections.mask is not None:\n new_detections.mask = new_detections.mask[size_mask]\n if new_detections.class_id is not None:\n new_detections.class_id = new_detections.class_id[size_mask]\n if new_detections.confidence is not None:\n new_detections.confidence = new_detections.confidence[size_mask]\n if new_detections.tracker_id is not None:\n new_detections.tracker_id = new_detections.tracker_id[size_mask]\n if new_detections.data is not None:\n for key, value in new_detections.data.items():\n new_detections.data[key] = np.array(value)[size_mask]\n\n return new_detections\n\n def _filter_predictions_and_targets_by_size(\n self,\n predictions_list: list[Detections],\n targets_list: list[Detections],\n size_category: ObjectSizeCategory,\n ) -> tuple[list[Detections], list[Detections]]:\n \"\"\"\n Filter predictions and targets by object size category.\n \"\"\"\n new_predictions_list = []\n new_targets_list = []\n for predictions, targets in zip(predictions_list, targets_list):\n new_predictions_list.append(\n self._filter_detections_by_size(predictions, size_category)\n )\n new_targets_list.append(\n self._filter_detections_by_size(targets, size_category)\n )\n return new_predictions_list, new_targets_list\n\n", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[320:400]\n==supervision.metrics.precision:[325:403]\n num_predictions, num_iou_levels = (\n predictions_classes.shape[0],\n iou_thresholds.shape[0],\n )\n correct = np.zeros((num_predictions, num_iou_levels), dtype=bool)\n correct_class = target_classes[:, None] == predictions_classes\n\n for i, iou_level in enumerate(iou_thresholds):\n matched_indices = np.where((iou >= iou_level) & correct_class)\n\n if matched_indices[0].shape[0]:\n combined_indices = np.stack(matched_indices, axis=1)\n iou_values = iou[matched_indices][:, None]\n matches = np.hstack([combined_indices, iou_values])\n\n if matched_indices[0].shape[0] > 1:\n matches = matches[matches[:, 2].argsort()[::-1]]\n matches = matches[np.unique(matches[:, 1], return_index=True)[1]]\n matches = matches[np.unique(matches[:, 0], return_index=True)[1]]\n\n correct[matches[:, 1].astype(int), i] = True\n result_correct: npt.NDArray[np.bool_] = correct\n return result_correct\n\n @staticmethod\n def _compute_confusion_matrix(\n sorted_matches: npt.NDArray[np.bool_],\n sorted_prediction_class_ids: npt.NDArray[np.int32],\n unique_classes: npt.NDArray[np.int32],\n class_counts: npt.NDArray[np.int32],\n ) -> npt.NDArray[np.float64]:\n \"\"\"\n Compute the confusion matrix for each class and IoU threshold.\n\n Assumes the matches and prediction_class_ids are sorted by confidence\n in descending order.\n\n Args:\n sorted_matches: shape (P, Th), that is True\n if the prediction is a true positive at the given IoU threshold.\n sorted_prediction_class_ids: shape (P,), containing\n the class id for each prediction.\n unique_classes: shape (C,), containing the unique\n class ids.\n class_counts: shape (C,), containing the number\n of true instances for each class.\n\n Returns:\n shape (C, Th, 3), containing the true positives, false\n positives, and false negatives for each class and IoU threshold.\n \"\"\"\n\n num_thresholds = sorted_matches.shape[1]\n num_classes = unique_classes.shape[0]\n\n confusion_matrix: npt.NDArray[np.float64] = np.zeros(\n (num_classes, num_thresholds, 3), dtype=np.float64\n )\n for class_idx, class_id in enumerate(unique_classes):\n is_class = sorted_prediction_class_ids == class_id\n num_true = class_counts[class_idx]\n num_predictions = is_class.sum()\n\n if num_predictions == 0:\n true_positives = np.zeros(num_thresholds)\n false_positives = np.zeros(num_thresholds)\n false_negatives = np.full(num_thresholds, num_true)\n elif num_true == 0:\n true_positives = np.zeros(num_thresholds)\n false_positives = np.full(num_thresholds, num_predictions)\n false_negatives = np.zeros(num_thresholds)\n else:\n true_positives = sorted_matches[is_class].sum(0)\n false_positives = (1 - sorted_matches[is_class]).sum(0)\n false_negatives = num_true - true_positives\n confusion_matrix[class_idx] = np.stack(\n [true_positives, false_positives, false_negatives], axis=1\n )", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[185:229]\n==supervision.metrics.recall:[165:209]\n if len(predictions) == 0:\n stats.append(\n (\n np.zeros((0, iou_thresholds.size), dtype=bool),\n np.zeros((0,), dtype=np.float32),\n np.zeros((0,), dtype=int),\n targets.class_id,\n )\n )\n\n else:\n if self._metric_target == MetricTarget.BOXES:\n iou = box_iou_batch(target_contents, prediction_contents)\n elif self._metric_target == MetricTarget.MASKS:\n iou = mask_iou_batch(target_contents, prediction_contents)\n elif self._metric_target == MetricTarget.ORIENTED_BOUNDING_BOXES:\n iou = oriented_box_iou_batch(\n target_contents, prediction_contents\n )\n else:\n raise ValueError(\n \"Unsupported metric target for IoU calculation\"\n )\n\n matches = self._match_detection_batch(\n predictions.class_id\n if predictions.class_id is not None\n else np.array([]),\n targets.class_id\n if targets.class_id is not None\n else np.array([]),\n iou,\n iou_thresholds,\n )\n stats.append(\n (\n matches,\n predictions.confidence,\n predictions.class_id,\n targets.class_id,\n )\n )\n\n if not stats:", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.mean_average_recall:[317:395]\n==supervision.metrics.recall:[91:169]\n self._predictions_list = []\n self._targets_list = []\n\n def update(\n self,\n predictions: Detections | list[Detections],\n targets: Detections | list[Detections],\n ) -> MeanAverageRecall:\n \"\"\"\n Add new predictions and targets to the metric, but do not compute the result.\n\n Args:\n predictions: The predicted detections.\n targets: The target detections.\n\n Returns:\n The updated metric instance.\n \"\"\"\n if not isinstance(predictions, list):\n predictions = [predictions]\n if not isinstance(targets, list):\n targets = [targets]\n\n if len(predictions) != len(targets):\n raise ValueError(\n f\"The number of predictions ({len(predictions)}) and\"\n f\" targets ({len(targets)}) during the update must be the same.\"\n )\n\n self._predictions_list.extend(predictions)\n self._targets_list.extend(targets)\n\n return self\n\n def compute(self) -> MeanAverageRecallResult:\n \"\"\"\n Calculate the Mean Average Recall metric based on the stored predictions\n and ground-truth, at different IoU thresholds and maximum detection counts.\n\n Returns:\n The Mean Average Recall metric result.\n \"\"\"\n result = self._compute(self._predictions_list, self._targets_list)\n\n small_predictions, small_targets = self._filter_predictions_and_targets_by_size(\n self._predictions_list, self._targets_list, ObjectSizeCategory.SMALL\n )\n result.small_objects = self._compute(small_predictions, small_targets)\n\n medium_predictions, medium_targets = (\n self._filter_predictions_and_targets_by_size(\n self._predictions_list, self._targets_list, ObjectSizeCategory.MEDIUM\n )\n )\n result.medium_objects = self._compute(medium_predictions, medium_targets)\n\n large_predictions, large_targets = self._filter_predictions_and_targets_by_size(\n self._predictions_list, self._targets_list, ObjectSizeCategory.LARGE\n )\n result.large_objects = self._compute(large_predictions, large_targets)\n\n return result\n\n def _compute(\n self, predictions_list: list[Detections], targets_list: list[Detections]\n ) -> MeanAverageRecallResult:\n iou_thresholds = np.linspace(0.5, 0.95, 10)\n stats: list[Any] = []\n\n for predictions, targets in zip(predictions_list, targets_list):\n prediction_contents = self._detections_content(predictions)\n target_contents = self._detections_content(targets)\n\n if len(targets) > 0:\n if len(predictions) == 0:\n stats.append(\n (\n np.zeros((0, iou_thresholds.size), dtype=bool),", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[78:169]\n==supervision.metrics.recall:[81:164]\n self._metric_target = metric_target\n self.averaging_method = averaging_method\n\n self._predictions_list: list[Detections] = []\n self._targets_list: list[Detections] = []\n\n def reset(self) -> None:\n \"\"\"\n Reset the metric to its initial state, clearing all stored data.\n \"\"\"\n self._predictions_list = []\n self._targets_list = []\n\n def update(\n self,\n predictions: Detections | list[Detections],\n targets: Detections | list[Detections],\n ) -> Recall:\n \"\"\"\n Add new predictions and targets to the metric, but do not compute the result.\n\n Args:\n predictions: The predicted detections.\n targets: The target detections.\n\n Returns:\n The updated metric instance.\n \"\"\"\n if not isinstance(predictions, list):\n predictions = [predictions]\n if not isinstance(targets, list):\n targets = [targets]\n\n if len(predictions) != len(targets):\n raise ValueError(\n f\"The number of predictions ({len(predictions)}) and\"\n f\" targets ({len(targets)}) during the update must be the same.\"\n )\n\n self._predictions_list.extend(predictions)\n self._targets_list.extend(targets)\n\n return self\n\n def compute(self) -> RecallResult:\n \"\"\"\n Calculate the recall metric based on the stored predictions and ground-truth\n data, at different IoU thresholds.\n\n Returns:\n The recall metric result.\n \"\"\"\n result = self._compute(self._predictions_list, self._targets_list)\n\n small_predictions, small_targets = self._filter_predictions_and_targets_by_size(\n self._predictions_list, self._targets_list, ObjectSizeCategory.SMALL\n )\n result.small_objects = self._compute(small_predictions, small_targets)\n\n medium_predictions, medium_targets = (\n self._filter_predictions_and_targets_by_size(\n self._predictions_list, self._targets_list, ObjectSizeCategory.MEDIUM\n )\n )\n result.medium_objects = self._compute(medium_predictions, medium_targets)\n\n large_predictions, large_targets = self._filter_predictions_and_targets_by_size(\n self._predictions_list, self._targets_list, ObjectSizeCategory.LARGE\n )\n result.large_objects = self._compute(large_predictions, large_targets)\n\n return result\n\n def _compute(\n self, predictions_list: list[Detections], targets_list: list[Detections]\n ) -> RecallResult:\n iou_thresholds = np.linspace(0.5, 0.95, 10)\n stats: list[Any] = []\n\n for predictions, targets in zip(predictions_list, targets_list):\n prediction_contents = self._detections_content(predictions)\n target_contents = self._detections_content(targets)\n", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.mean_average_recall:[504:587]\n==supervision.metrics.recall:[272:353]\n return recall_scores, recall_per_class, unique_classes\n\n @staticmethod\n def _match_detection_batch(\n predictions_classes: npt.NDArray[np.int32],\n target_classes: npt.NDArray[np.int32],\n iou: npt.NDArray[np.float32],\n iou_thresholds: npt.NDArray[np.float32],\n ) -> npt.NDArray[np.bool_]:\n num_predictions, num_iou_levels = (\n predictions_classes.shape[0],\n iou_thresholds.shape[0],\n )\n correct = np.zeros((num_predictions, num_iou_levels), dtype=bool)\n correct_class = target_classes[:, None] == predictions_classes\n\n for i, iou_level in enumerate(iou_thresholds):\n matched_indices = np.where((iou >= iou_level) & correct_class)\n\n if matched_indices[0].shape[0]:\n combined_indices = np.stack(matched_indices, axis=1)\n iou_values = iou[matched_indices][:, None]\n matches = np.hstack([combined_indices, iou_values])\n\n if matched_indices[0].shape[0] > 1:\n matches = matches[matches[:, 2].argsort()[::-1]]\n matches = matches[np.unique(matches[:, 1], return_index=True)[1]]\n matches = matches[np.unique(matches[:, 0], return_index=True)[1]]\n\n correct[matches[:, 1].astype(int), i] = True\n result_correct: npt.NDArray[np.bool_] = correct\n return result_correct\n\n @staticmethod\n def _compute_confusion_matrix(\n sorted_matches: npt.NDArray[np.bool_],\n sorted_prediction_class_ids: npt.NDArray[np.int32],\n unique_classes: npt.NDArray[np.int32],\n class_counts: npt.NDArray[np.int32],\n ) -> npt.NDArray[np.float64]:\n \"\"\"\n Compute the confusion matrix for each class and IoU threshold.\n\n Assumes the matches and prediction_class_ids are sorted by confidence\n in descending order.\n\n Args:\n sorted_matches: shape (P, Th), that is True\n if the prediction is a true positive at the given IoU threshold.\n sorted_prediction_class_ids: shape (P,), containing\n the class id for each prediction.\n unique_classes: shape (C,), containing the unique\n class ids.\n class_counts: shape (C,), containing the number\n of true instances for each class.\n max_detections: The maximum number of detections to\n consider for each class. Extra detections are considered false\n positives. By default, all detections are considered.\n\n Returns:\n shape (C, Th, 3), containing the true positives, false\n positives, and false negatives for each class and IoU threshold.\n \"\"\"\n num_thresholds = sorted_matches.shape[1]\n num_classes = unique_classes.shape[0]\n\n confusion_matrix: npt.NDArray[np.float64] = np.zeros(\n (num_classes, num_thresholds, 3), dtype=np.float64\n )\n for class_idx, class_id in enumerate(unique_classes):\n is_class = sorted_prediction_class_ids == class_id\n num_true = class_counts[class_idx]\n num_predictions = is_class.sum()\n\n if num_predictions == 0:\n true_positives = np.zeros(num_thresholds)\n false_positives = np.zeros(num_thresholds)\n false_negatives = np.full(num_thresholds, num_true)\n elif num_true == 0:\n true_positives = np.zeros(num_thresholds)\n false_positives = np.full(num_thresholds, num_predictions)\n false_negatives = np.zeros(num_thresholds)\n else:", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[320:393]\n==supervision.metrics.mean_average_recall:[513:587]\n num_predictions, num_iou_levels = (\n predictions_classes.shape[0],\n iou_thresholds.shape[0],\n )\n correct = np.zeros((num_predictions, num_iou_levels), dtype=bool)\n correct_class = target_classes[:, None] == predictions_classes\n\n for i, iou_level in enumerate(iou_thresholds):\n matched_indices = np.where((iou >= iou_level) & correct_class)\n\n if matched_indices[0].shape[0]:\n combined_indices = np.stack(matched_indices, axis=1)\n iou_values = iou[matched_indices][:, None]\n matches = np.hstack([combined_indices, iou_values])\n\n if matched_indices[0].shape[0] > 1:\n matches = matches[matches[:, 2].argsort()[::-1]]\n matches = matches[np.unique(matches[:, 1], return_index=True)[1]]\n matches = matches[np.unique(matches[:, 0], return_index=True)[1]]\n\n correct[matches[:, 1].astype(int), i] = True\n result_correct: npt.NDArray[np.bool_] = correct\n return result_correct\n\n @staticmethod\n def _compute_confusion_matrix(\n sorted_matches: npt.NDArray[np.bool_],\n sorted_prediction_class_ids: npt.NDArray[np.int32],\n unique_classes: npt.NDArray[np.int32],\n class_counts: npt.NDArray[np.int32],\n ) -> npt.NDArray[np.float64]:\n \"\"\"\n Compute the confusion matrix for each class and IoU threshold.\n\n Assumes the matches and prediction_class_ids are sorted by confidence\n in descending order.\n\n Args:\n sorted_matches: shape (P, Th), that is True\n if the prediction is a true positive at the given IoU threshold.\n sorted_prediction_class_ids: shape (P,), containing\n the class id for each prediction.\n unique_classes: shape (C,), containing the unique\n class ids.\n class_counts: shape (C,), containing the number\n of true instances for each class.\n max_detections: The maximum number of detections to\n consider for each class. Extra detections are considered false\n positives. By default, all detections are considered.\n\n Returns:\n shape (C, Th, 3), containing the true positives, false\n positives, and false negatives for each class and IoU threshold.\n \"\"\"\n num_thresholds = sorted_matches.shape[1]\n num_classes = unique_classes.shape[0]\n\n confusion_matrix: npt.NDArray[np.float64] = np.zeros(\n (num_classes, num_thresholds, 3), dtype=np.float64\n )\n for class_idx, class_id in enumerate(unique_classes):\n is_class = sorted_prediction_class_ids == class_id\n num_true = class_counts[class_idx]\n num_predictions = is_class.sum()\n\n if num_predictions == 0:\n true_positives = np.zeros(num_thresholds)\n false_positives = np.zeros(num_thresholds)\n false_negatives = np.full(num_thresholds, num_true)\n elif num_true == 0:\n true_positives = np.zeros(num_thresholds)\n false_positives = np.full(num_thresholds, num_predictions)\n false_negatives = np.zeros(num_thresholds)\n else:", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[88:169]\n==supervision.metrics.mean_average_recall:[317:390]\n self._predictions_list = []\n self._targets_list = []\n\n def update(\n self,\n predictions: Detections | list[Detections],\n targets: Detections | list[Detections],\n ) -> MeanAverageRecall:\n \"\"\"\n Add new predictions and targets to the metric, but do not compute the result.\n\n Args:\n predictions: The predicted detections.\n targets: The target detections.\n\n Returns:\n The updated metric instance.\n \"\"\"\n if not isinstance(predictions, list):\n predictions = [predictions]\n if not isinstance(targets, list):\n targets = [targets]\n\n if len(predictions) != len(targets):\n raise ValueError(\n f\"The number of predictions ({len(predictions)}) and\"\n f\" targets ({len(targets)}) during the update must be the same.\"\n )\n\n self._predictions_list.extend(predictions)\n self._targets_list.extend(targets)\n\n return self\n\n def compute(self) -> MeanAverageRecallResult:\n \"\"\"\n Calculate the Mean Average Recall metric based on the stored predictions\n and ground-truth, at different IoU thresholds and maximum detection counts.\n\n Returns:\n The Mean Average Recall metric result.\n \"\"\"\n result = self._compute(self._predictions_list, self._targets_list)\n\n small_predictions, small_targets = self._filter_predictions_and_targets_by_size(\n self._predictions_list, self._targets_list, ObjectSizeCategory.SMALL\n )\n result.small_objects = self._compute(small_predictions, small_targets)\n\n medium_predictions, medium_targets = (\n self._filter_predictions_and_targets_by_size(\n self._predictions_list, self._targets_list, ObjectSizeCategory.MEDIUM\n )\n )\n result.medium_objects = self._compute(medium_predictions, medium_targets)\n\n large_predictions, large_targets = self._filter_predictions_and_targets_by_size(\n self._predictions_list, self._targets_list, ObjectSizeCategory.LARGE\n )\n result.large_objects = self._compute(large_predictions, large_targets)\n\n return result\n\n def _compute(\n self, predictions_list: list[Detections], targets_list: list[Detections]\n ) -> MeanAverageRecallResult:\n iou_thresholds = np.linspace(0.5, 0.95, 10)\n stats: list[Any] = []\n\n for predictions, targets in zip(predictions_list, targets_list):\n prediction_contents = self._detections_content(predictions)\n target_contents = self._detections_content(targets)\n", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[461:511]\n==supervision.metrics.recall:[428:478]\n raise ValueError(f\"Invalid metric target: {self._metric_target}\")\n\n def _filter_detections_by_size(\n self, detections: Detections, size_category: ObjectSizeCategory\n ) -> Detections:\n \"\"\"Return a copy of detections with contents filtered by object size.\"\"\"\n new_detections = deepcopy(detections)\n if detections.is_empty() or size_category == ObjectSizeCategory.ANY:\n return new_detections\n\n sizes = get_detection_size_category(new_detections, self._metric_target)\n size_mask = sizes == size_category.value\n\n new_detections.xyxy = new_detections.xyxy[size_mask]\n if new_detections.mask is not None:\n new_detections.mask = new_detections.mask[size_mask]\n if new_detections.class_id is not None:\n new_detections.class_id = new_detections.class_id[size_mask]\n if new_detections.confidence is not None:\n new_detections.confidence = new_detections.confidence[size_mask]\n if new_detections.tracker_id is not None:\n new_detections.tracker_id = new_detections.tracker_id[size_mask]\n if new_detections.data is not None:\n for key, value in new_detections.data.items():\n new_detections.data[key] = np.array(value)[size_mask]\n\n return new_detections\n\n def _filter_predictions_and_targets_by_size(\n self,\n predictions_list: list[Detections],\n targets_list: list[Detections],\n size_category: ObjectSizeCategory,\n ) -> tuple[list[Detections], list[Detections]]:\n \"\"\"\n Filter predictions and targets by object size category.\n \"\"\"\n new_predictions_list = []\n new_targets_list = []\n for predictions, targets in zip(predictions_list, targets_list):\n new_predictions_list.append(\n self._filter_detections_by_size(predictions, size_category)\n )\n new_targets_list.append(\n self._filter_detections_by_size(targets, size_category)\n )\n return new_predictions_list, new_targets_list\n\n\n@dataclass", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.mean_average_recall:[659:706]\n==supervision.metrics.recall:[428:477]\n raise ValueError(f\"Invalid metric target: {self._metric_target}\")\n\n def _filter_detections_by_size(\n self, detections: Detections, size_category: ObjectSizeCategory\n ) -> Detections:\n \"\"\"Return a copy of detections with contents filtered by object size.\"\"\"\n new_detections = deepcopy(detections)\n if detections.is_empty() or size_category == ObjectSizeCategory.ANY:\n return new_detections\n\n sizes = get_detection_size_category(new_detections, self._metric_target)\n size_mask = sizes == size_category.value\n\n new_detections.xyxy = new_detections.xyxy[size_mask]\n if new_detections.mask is not None:\n new_detections.mask = new_detections.mask[size_mask]\n if new_detections.class_id is not None:\n new_detections.class_id = new_detections.class_id[size_mask]\n if new_detections.confidence is not None:\n new_detections.confidence = new_detections.confidence[size_mask]\n if new_detections.tracker_id is not None:\n new_detections.tracker_id = new_detections.tracker_id[size_mask]\n if new_detections.data is not None:\n for key, value in new_detections.data.items():\n new_detections.data[key] = np.array(value)[size_mask]\n\n return new_detections\n\n def _filter_predictions_and_targets_by_size(\n self,\n predictions_list: list[Detections],\n targets_list: list[Detections],\n size_category: ObjectSizeCategory,\n ) -> tuple[list[Detections], list[Detections]]:\n \"\"\"\n Filter predictions and targets by object size category.\n \"\"\"\n new_predictions_list = []\n new_targets_list = []\n for predictions, targets in zip(predictions_list, targets_list):\n new_predictions_list.append(\n self._filter_detections_by_size(predictions, size_category)\n )\n new_targets_list.append(\n self._filter_detections_by_size(targets, size_category)\n )\n return new_predictions_list, new_targets_list\n\n", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[190:219]\n==supervision.metrics.mean_average_recall:[396:426]\n np.zeros((0,), dtype=int),\n targets.class_id,\n )\n )\n\n else:\n if self._metric_target == MetricTarget.BOXES:\n iou = box_iou_batch(target_contents, prediction_contents)\n elif self._metric_target == MetricTarget.MASKS:\n iou = mask_iou_batch(target_contents, prediction_contents)\n elif self._metric_target == MetricTarget.ORIENTED_BOUNDING_BOXES:\n iou = oriented_box_iou_batch(\n target_contents, prediction_contents\n )\n else:\n raise ValueError(\n \"Unsupported metric target for IoU calculation\"\n )\n\n matches = self._match_detection_batch(\n predictions.class_id\n if predictions.class_id is not None\n else np.array([]),\n targets.class_id\n if targets.class_id is not None\n else np.array([]),\n iou,\n iou_thresholds,\n )", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.mean_average_recall:[625:665]\n==supervision.metrics.recall:[392:428]\n result_recall: npt.NDArray[np.float64] = recall\n return result_recall\n\n def _detections_content(self, detections: Detections) -> npt.NDArray[Any]:\n \"\"\"Return boxes, masks or oriented bounding boxes from detections.\"\"\"\n if self._metric_target == MetricTarget.BOXES:\n result_boxes: npt.NDArray[np.float32] = detections.xyxy\n return result_boxes\n if self._metric_target == MetricTarget.MASKS:\n if detections.mask is not None:\n result_masks: npt.NDArray[np.bool_] = detections.mask\n return result_masks\n return self._make_empty_content()\n if self._metric_target == MetricTarget.ORIENTED_BOUNDING_BOXES:\n obb = detections.data.get(ORIENTED_BOX_COORDINATES)\n if obb is not None and len(obb) > 0:\n result_obb: npt.NDArray[np.float32] = np.array(obb, dtype=np.float32)\n return result_obb\n return self._make_empty_content()\n raise ValueError(f\"Invalid metric target: {self._metric_target}\")\n\n def _make_empty_content(self) -> npt.NDArray[Any]:\n if self._metric_target == MetricTarget.BOXES:\n empty_boxes: npt.NDArray[np.float32] = np.empty((0, 4), dtype=np.float32)\n return empty_boxes\n\n if self._metric_target == MetricTarget.MASKS:\n empty_masks: npt.NDArray[np.bool_] = np.empty((0, 0, 0), dtype=bool)\n return empty_masks\n\n if self._metric_target == MetricTarget.ORIENTED_BOUNDING_BOXES:\n empty_obb: npt.NDArray[np.float32] = np.empty((0, 4, 2), dtype=np.float32)\n return empty_obb\n\n raise ValueError(f\"Invalid metric target: {self._metric_target}\")\n\n def _filter_detections_by_size(\n self, detections: Detections, size_category: ObjectSizeCategory\n ) -> Detections:\n \"\"\"Return a copy of detections with contents filtered by object size.\"\"\"", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[435:467]\n==supervision.metrics.recall:[397:428]\n if self._metric_target == MetricTarget.BOXES:\n result_boxes: npt.NDArray[np.float32] = detections.xyxy\n return result_boxes\n if self._metric_target == MetricTarget.MASKS:\n if detections.mask is not None:\n result_masks: npt.NDArray[np.bool_] = detections.mask\n return result_masks\n return self._make_empty_content()\n if self._metric_target == MetricTarget.ORIENTED_BOUNDING_BOXES:\n obb = detections.data.get(ORIENTED_BOX_COORDINATES)\n if obb is not None and len(obb) > 0:\n result_obb: npt.NDArray[np.float32] = np.array(obb, dtype=np.float32)\n return result_obb\n return self._make_empty_content()\n raise ValueError(f\"Invalid metric target: {self._metric_target}\")\n\n def _make_empty_content(self) -> npt.NDArray[Any]:\n if self._metric_target == MetricTarget.BOXES:\n empty_boxes: npt.NDArray[np.float32] = np.empty((0, 4), dtype=np.float32)\n return empty_boxes\n\n if self._metric_target == MetricTarget.MASKS:\n empty_masks: npt.NDArray[np.bool_] = np.empty((0, 0, 0), dtype=bool)\n return empty_masks\n\n if self._metric_target == MetricTarget.ORIENTED_BOUNDING_BOXES:\n empty_obb: npt.NDArray[np.float32] = np.empty((0, 4, 2), dtype=np.float32)\n return empty_obb\n\n raise ValueError(f\"Invalid metric target: {self._metric_target}\")\n", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[697:722]\n==supervision.metrics.precision:[710:735]\n f\"\\n(target: {self.metric_target.value},\"\n f\" averaging: {self.averaging_method.value})\"\n )\n ax.set_title(title, fontweight=\"bold\")\n\n x_positions = range(len(labels))\n bars = ax.bar(x_positions, values, color=colors, align=\"center\")\n\n ax.set_xticks(x_positions)\n ax.set_xticklabels(labels, rotation=45, ha=\"right\")\n\n for bar in bars:\n y_value = bar.get_height()\n ax.text(\n bar.get_x() + bar.get_width() / 2,\n y_value + 0.02,\n f\"{y_value:.2f}\",\n ha=\"center\",\n va=\"bottom\",\n )\n\n plt.rcParams[\"font.family\"] = \"sans-serif\"\n\n plt.tight_layout()\n plt.show()", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.mean_average_recall:[132:164]\n==supervision.metrics.recall:[575:607]\n )\n if self.recall_per_class.size == 0:\n out_str += \" No results\\n\"\n for class_id, recall_of_class in zip(\n self.matched_classes, self.recall_per_class\n ):\n out_str += f\" {class_id}: {recall_of_class}\\n\"\n\n indent = \" \"\n if self.small_objects is not None:\n indented = indent + str(self.small_objects).replace(\"\\n\", f\"\\n{indent}\")\n out_str += f\"\\nSmall objects:\\n{indented}\"\n if self.medium_objects is not None:\n indented = indent + str(self.medium_objects).replace(\"\\n\", f\"\\n{indent}\")\n out_str += f\"\\nMedium objects:\\n{indented}\"\n if self.large_objects is not None:\n indented = indent + str(self.large_objects).replace(\"\\n\", f\"\\n{indent}\")\n out_str += f\"\\nLarge objects:\\n{indented}\"\n\n return out_str\n\n def to_pandas(self) -> pd.DataFrame:\n \"\"\"\n Convert the result to a pandas DataFrame.\n\n Returns:\n The result as a DataFrame.\n \"\"\"\n ensure_pandas_installed()\n import pandas as pd\n\n pandas_data = {", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[699:722]\n==supervision.metrics.mean_average_recall:[233:258]\n )\n ax.set_title(title, fontweight=\"bold\")\n\n x_positions = range(len(labels))\n bars = ax.bar(x_positions, values, color=colors, align=\"center\")\n\n ax.set_xticks(x_positions)\n ax.set_xticklabels(labels, rotation=45, ha=\"right\")\n\n for bar in bars:\n y_value = bar.get_height()\n ax.text(\n bar.get_x() + bar.get_width() / 2,\n y_value + 0.02,\n f\"{y_value:.2f}\",\n ha=\"center\",\n va=\"bottom\",\n )\n\n plt.rcParams[\"font.family\"] = \"sans-serif\"\n\n plt.tight_layout()\n plt.show()", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.annotators.core:[1479:1497]\n==supervision.draw.utils:[133:151]\n border_radius = min(border_radius, min(width, height) // 2)\n\n rectangle_coordinates = [\n ((x1 + border_radius, y1), (x2 - border_radius, y2)),\n ((x1, y1 + border_radius), (x2, y2 - border_radius)),\n ]\n circle_centers = [\n (x1 + border_radius, y1 + border_radius),\n (x2 - border_radius, y1 + border_radius),\n (x1 + border_radius, y2 - border_radius),\n (x2 - border_radius, y2 - border_radius),\n ]\n\n for coordinates in rectangle_coordinates:\n cv2.rectangle(\n img=scene,\n pt1=coordinates[0],\n pt2=coordinates[1],", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[702:722]\n==supervision.metrics.mean_average_precision:[226:248]\n x_positions = range(len(labels))\n bars = ax.bar(x_positions, values, color=colors, align=\"center\")\n\n ax.set_xticks(x_positions)\n ax.set_xticklabels(labels, rotation=45, ha=\"right\")\n\n for bar in bars:\n y_value = bar.get_height()\n ax.text(\n bar.get_x() + bar.get_width() / 2,\n y_value + 0.02,\n f\"{y_value:.2f}\",\n ha=\"center\",\n va=\"bottom\",\n )\n\n plt.rcParams[\"font.family\"] = \"sans-serif\"\n\n plt.tight_layout()\n plt.show()", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[642:668]\n==supervision.metrics.mean_average_recall:[167:192]\n }\n\n if self.small_objects is not None:\n small_objects_df = self.small_objects.to_pandas()\n for key, value in small_objects_df.items():\n pandas_data[f\"small_objects_{key}\"] = value\n if self.medium_objects is not None:\n medium_objects_df = self.medium_objects.to_pandas()\n for key, value in medium_objects_df.items():\n pandas_data[f\"medium_objects_{key}\"] = value\n if self.large_objects is not None:\n large_objects_df = self.large_objects.to_pandas()\n for key, value in large_objects_df.items():\n pandas_data[f\"large_objects_{key}\"] = value\n\n return pd.DataFrame(pandas_data, index=[0])\n\n def plot(self) -> None:\n \"\"\"\n Plot the F1 results.\n\n ![example_plot](\n https://media.roboflow.com/supervision-docs/metrics/f1_plot_example.png\n ){ align=center width=\"800\" }\n \"\"\"\n", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.precision:[655:681]\n==supervision.metrics.recall:[609:635]\n }\n\n if self.small_objects is not None:\n small_objects_df = self.small_objects.to_pandas()\n for key, value in small_objects_df.items():\n pandas_data[f\"small_objects_{key}\"] = value\n if self.medium_objects is not None:\n medium_objects_df = self.medium_objects.to_pandas()\n for key, value in medium_objects_df.items():\n pandas_data[f\"medium_objects_{key}\"] = value\n if self.large_objects is not None:\n large_objects_df = self.large_objects.to_pandas()\n for key, value in large_objects_df.items():\n pandas_data[f\"large_objects_{key}\"] = value\n\n return pd.DataFrame(pandas_data, index=[0])\n\n def plot(self) -> None:\n \"\"\"\n Plot the recall results.\n\n ![example_plot](\n https://media.roboflow.com/supervision-docs/metrics/recall_plot_example.png\n ){ align=center width=\"800\" }\n \"\"\"\n", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[642:657]\n==supervision.metrics.mean_average_precision:[158:174]\n }\n\n if self.small_objects is not None:\n small_objects_df = self.small_objects.to_pandas()\n for key, value in small_objects_df.items():\n pandas_data[f\"small_objects_{key}\"] = value\n if self.medium_objects is not None:\n medium_objects_df = self.medium_objects.to_pandas()\n for key, value in medium_objects_df.items():\n pandas_data[f\"medium_objects_{key}\"] = value\n if self.large_objects is not None:\n large_objects_df = self.large_objects.to_pandas()\n for key, value in large_objects_df.items():\n pandas_data[f\"large_objects_{key}\"] = value\n", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[616:640]\n==supervision.metrics.mean_average_recall:[140:164]\n indent = \" \"\n if self.small_objects is not None:\n indented = indent + str(self.small_objects).replace(\"\\n\", f\"\\n{indent}\")\n out_str += f\"\\nSmall objects:\\n{indented}\"\n if self.medium_objects is not None:\n indented = indent + str(self.medium_objects).replace(\"\\n\", f\"\\n{indent}\")\n out_str += f\"\\nMedium objects:\\n{indented}\"\n if self.large_objects is not None:\n indented = indent + str(self.large_objects).replace(\"\\n\", f\"\\n{indent}\")\n out_str += f\"\\nLarge objects:\\n{indented}\"\n\n return out_str\n\n def to_pandas(self) -> pd.DataFrame:\n \"\"\"\n Convert the result to a pandas DataFrame.\n\n Returns:\n The result as a DataFrame.\n \"\"\"\n ensure_pandas_installed()\n import pandas as pd\n\n pandas_data = {", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.precision:[629:653]\n==supervision.metrics.recall:[583:607]\n indent = \" \"\n if self.small_objects is not None:\n indented = indent + str(self.small_objects).replace(\"\\n\", f\"\\n{indent}\")\n out_str += f\"\\nSmall objects:\\n{indented}\"\n if self.medium_objects is not None:\n indented = indent + str(self.medium_objects).replace(\"\\n\", f\"\\n{indent}\")\n out_str += f\"\\nMedium objects:\\n{indented}\"\n if self.large_objects is not None:\n indented = indent + str(self.large_objects).replace(\"\\n\", f\"\\n{indent}\")\n out_str += f\"\\nLarge objects:\\n{indented}\"\n\n return out_str\n\n def to_pandas(self) -> pd.DataFrame:\n \"\"\"\n Convert the result to a pandas DataFrame.\n\n Returns:\n The result as a DataFrame.\n \"\"\"\n ensure_pandas_installed()\n import pandas as pd\n\n pandas_data = {", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.detection.utils.iou_and_nms:[39:53]\n==supervision.detection.vlm:[58:72]\n if isinstance(value, cls):\n return value\n if isinstance(value, str):\n value = value.lower()\n try:\n return cls(value)\n except ValueError:\n raise ValueError(f\"Invalid value: {value}. Must be one of {cls.list()}\")\n raise ValueError(\n f\"Invalid value type: {type(value)}. Must be an instance of \"\n f\"{cls.__name__} or str.\"\n )\n\n", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[395:423]\n==supervision.metrics.mean_average_recall:[591:620]\n false_negatives = num_true - true_positives\n\n confusion_matrix[class_idx] = np.stack(\n [true_positives, false_positives, false_negatives], axis=1\n )\n\n result_confusion_matrix: npt.NDArray[np.float64] = confusion_matrix\n return result_confusion_matrix\n\n @staticmethod\n def _compute_recall(\n confusion_matrix: npt.NDArray[np.float64],\n ) -> npt.NDArray[np.float64]:\n \"\"\"\n Broadcastable function, computing the recall from the confusion matrix.\n\n Args:\n confusion_matrix: shape (N, ..., 3), where the last dimension\n contains the true positives, false positives, and false negatives.\n\n Returns:\n shape (N, ...), containing the recall for each element.\n \"\"\"\n if not confusion_matrix.shape[-1] == 3:\n raise ValueError(\n f\"Confusion matrix must have shape (..., 3), got \"\n f\"{confusion_matrix.shape}\"\n )\n true_positives = confusion_matrix[..., 0]", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.detection:[1048:1062]\n==supervision.metrics.f1_score:[327:342]\n for i, iou_level in enumerate(iou_thresholds):\n matched_indices = np.where((iou >= iou_level) & correct_class)\n\n if matched_indices[0].shape[0]:\n combined_indices = np.stack(matched_indices, axis=1)\n iou_values = iou[matched_indices][:, None]\n matches = np.hstack([combined_indices, iou_values])\n\n if matched_indices[0].shape[0] > 1:\n matches = matches[matches[:, 2].argsort()[::-1]]\n matches = matches[np.unique(matches[:, 1], return_index=True)[1]]\n matches = matches[np.unique(matches[:, 0], return_index=True)[1]]\n\n correct[matches[:, 1].astype(int), i] = True\n", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[88:117]\n==supervision.metrics.mean_average_precision:[1291:1320]\n self._predictions_list = []\n self._targets_list = []\n\n def update(\n self,\n predictions: Detections | list[Detections],\n targets: Detections | list[Detections],\n ) -> F1Score:\n \"\"\"\n Add new predictions and targets to the metric, but do not compute the result.\n\n Args:\n predictions: The predicted detections.\n targets: The target detections.\n\n Returns:\n The updated metric instance.\n \"\"\"\n if not isinstance(predictions, list):\n predictions = [predictions]\n if not isinstance(targets, list):\n targets = [targets]\n\n if len(predictions) != len(targets):\n raise ValueError(\n f\"The number of predictions ({len(predictions)}) and\"\n f\" targets ({len(targets)}) during the update must be the same.\"\n )\n", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.detection.tools.csv_sink:[115:169]\n==supervision.detection.tools.json_sink:[118:172]\n self.file.close()\n\n @staticmethod\n def _slice_value(value: Any, i: int, n: int) -> Any:\n \"\"\"\n Return the i-th element when the value stores per-detection data.\n\n Dispatch rules:\n - np.ndarray with ndim == 0: return as-is for broadcasting\n - np.ndarray with ndim >= 1: return value[i]\n - list or tuple with len equal to n: return value[i]\n - any other type: return as-is for broadcasting\n\n Args:\n value: Custom-data field value.\n i: Zero-based detection index.\n n: Total number of detections.\n\n Returns:\n Element at position i if value is a per-detection sequence,\n otherwise value unchanged.\n \"\"\"\n if isinstance(value, np.ndarray):\n return value if value.ndim == 0 else value[i]\n if isinstance(value, (list, tuple)) and len(value) == n:\n return value[i]\n return value\n\n @staticmethod\n def parse_detection_data(\n detections: Detections, custom_data: dict[str, Any] | None = None\n ) -> list[dict[str, Any]]:\n \"\"\"\n Convert detections and optional custom data into per-detection rows.\n\n Builds one dictionary per detection containing bounding box coordinates,\n detection attributes, and any values from ``detections.data`` or\n ``custom_data``. List and tuple values in ``custom_data`` with length\n equal to ``len(detections.xyxy)`` are sliced one element per row; all\n other values are broadcast to every row.\n\n Args:\n detections: Detection data to serialize into row dictionaries.\n custom_data: Optional extra fields to include in each row.\n\n Returns:\n A list of dictionaries, one per detection, containing ``xyxy``\n coordinates, ``class_id``, ``confidence``, ``tracker_id``, and any\n values from ``detections.data`` or ``custom_data``.\n \"\"\"\n parsed_rows = []\n n = len(detections.xyxy)\n for i in range(n):\n row = {", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.dataset.formats.pascal_voc:[158:167]\n==supervision.dataset.formats.yolo:[397:406]\n if mask is not None:\n polygons = approximate_mask_with_polygons(\n mask=mask,\n min_image_area_percentage=min_image_area_percentage,\n max_image_area_percentage=max_image_area_percentage,\n approximation_percentage=approximation_percentage,\n )\n for polygon in polygons:\n xyxy = polygon_to_xyxy(polygon=polygon)", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.detection.utils.iou_and_nms:[79:128]\n==supervision.detection.vlm:[62:72]\n try:\n return cls(value)\n except ValueError:\n raise ValueError(f\"Invalid value: {value}. Must be one of {cls.list()}\")\n raise ValueError(\n f\"Invalid value type: {type(value)}. Must be an instance of \"\n f\"{cls.__name__} or str.\"\n )\n\n\ndef box_iou(\n box_true: list[float] | npt.NDArray[np.floating],\n box_detection: list[float] | npt.NDArray[np.floating],\n overlap_metric: OverlapMetric | str = OverlapMetric.IOU,\n) -> float:\n \"\"\"\n Compute overlap metric between two bounding boxes.\n\n Supports standard IOU (intersection-over-union) and IOS\n (intersection-over-smaller-area) metrics. Returns the overlap value in range\n `[0, 1]`.\n\n Args:\n box_true: Ground truth box in format\n `(x_min, y_min, x_max, y_max)`.\n box_detection: Detected box in format\n `(x_min, y_min, x_max, y_max)`.\n overlap_metric: Overlap type.\n Use `OverlapMetric.IOU` for IOU or\n `OverlapMetric.IOS` for IOS. Defaults to `OverlapMetric.IOU`.\n\n Returns:\n Overlap value between boxes in `[0, 1]`.\n\n Raises:\n ValueError: If `overlap_metric` is not IOU or IOS.\n\n Examples:\n ```pycon\n >>> import supervision as sv\n >>> box_true = [100, 100, 200, 200]\n >>> box_detection = [150, 150, 250, 250]\n >>> sv.box_iou(box_true, box_detection, overlap_metric=sv.OverlapMetric.IOU)\n 0.142857...\n >>> sv.box_iou(box_true, box_detection, overlap_metric=sv.OverlapMetric.IOS)\n 0.25\n\n ```\n \"\"\"", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.mean_average_recall:[614:623]\n==supervision.metrics.recall:[376:385]\n if not confusion_matrix.shape[-1] == 3:\n raise ValueError(\n f\"Confusion matrix must have shape (..., 3), got \"\n f\"{confusion_matrix.shape}\"\n )\n true_positives = confusion_matrix[..., 0]\n false_negatives = confusion_matrix[..., 2]\n\n denominator = true_positives + false_negatives", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.annotators.core:[1498:1505]\n==supervision.draw.utils:[152:159]\n thickness=-1,\n )\n for center in circle_centers:\n cv2.circle(\n img=scene,\n center=center,\n radius=border_radius,", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[234:242]\n==supervision.metrics.mean_average_recall:[446:454]\n iou_thresholds=iou_thresholds,\n matched_classes=np.array([], dtype=int),\n small_objects=None,\n medium_objects=None,\n large_objects=None,\n )\n\n concatenated_stats = [np.concatenate(items, 0) for items in zip(*stats)]", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[417:424]\n==supervision.metrics.precision:[420:428]\n if not confusion_matrix.shape[-1] == 3:\n raise ValueError(\n f\"Confusion matrix must have shape (..., 3), got \"\n f\"{confusion_matrix.shape}\"\n )\n true_positives = confusion_matrix[..., 0]\n false_positives = confusion_matrix[..., 1]", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.precision:[237:245]\n==supervision.metrics.recall:[214:222]\n iou_thresholds=iou_thresholds,\n matched_classes=np.array([], dtype=int),\n small_objects=None,\n medium_objects=None,\n large_objects=None,\n )\n\n concatenated_stats = [np.concatenate(items, 0) for items in zip(*stats)]", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.annotators.utils:[99:105]\n==supervision.key_points.annotators:[921:935]\n return (\n center_x - text_w // 2,\n center_y - text_h // 2,\n center_x + text_w // 2,\n center_y + text_h // 2,\n )", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[251:274]\n==supervision.metrics.mean_average_recall:[463:481]\n iou_thresholds=iou_thresholds,\n matched_classes=unique_classes,\n small_objects=None,\n medium_objects=None,\n large_objects=None,\n )\n\n def _compute_f1_for_classes(\n self,\n matches: npt.NDArray[np.bool_],\n prediction_confidence: npt.NDArray[np.float32],\n prediction_class_ids: npt.NDArray[np.int32],\n true_class_ids: npt.NDArray[np.int32],\n ) -> tuple[\n npt.NDArray[np.float64],\n npt.NDArray[np.float64],\n npt.NDArray[np.int32],\n ]:\n \"\"\"Compute F1 scores from concatenated stats across all images.\n\n ``unique_classes`` is the union of GT and predicted classes so that\n predictions of classes absent from GT still count as false positives.\n \"\"\"", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[251:293]\n==supervision.metrics.precision:[254:296]\n iou_thresholds=iou_thresholds,\n matched_classes=unique_classes,\n small_objects=None,\n medium_objects=None,\n large_objects=None,\n )\n\n def _compute_precision_for_classes(\n self,\n matches: npt.NDArray[np.bool_],\n prediction_confidence: npt.NDArray[np.float32],\n prediction_class_ids: npt.NDArray[np.int32],\n true_class_ids: npt.NDArray[np.int32],\n ) -> tuple[\n npt.NDArray[np.float64],\n npt.NDArray[np.float64],\n npt.NDArray[np.int32],\n ]:\n \"\"\"Compute precision scores from concatenated stats across all images.\n\n ``unique_classes`` is the union of GT and predicted classes so that\n predictions of classes absent from GT still count as false positives.\n \"\"\"\n sorted_indices = np.argsort(-prediction_confidence)\n matches = matches[sorted_indices]\n prediction_class_ids = prediction_class_ids[sorted_indices]\n # Predictions whose class never appears in the ground truth are still\n # false positives, so include those classes in the confusion matrix\n # (their true-instance count is zero).\n unique_classes = np.unique(\n np.concatenate((true_class_ids, prediction_class_ids))\n )\n true_classes, true_counts = np.unique(true_class_ids, return_counts=True)\n class_counts = np.zeros(unique_classes.shape[0], dtype=int)\n class_counts[np.searchsorted(unique_classes, true_classes)] = true_counts\n\n # Shape: PxTh,P,C,C -> CxThx3\n confusion_matrix = self._compute_confusion_matrix(\n matches, prediction_class_ids, unique_classes, class_counts\n )\n\n # Shape: CxThx3 -> CxTh", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[688:696]\n==supervision.metrics.precision:[701:709]\n colors += [LEGACY_COLOR_PALETTE[4]] * 2\n\n plt.rcParams[\"font.family\"] = \"monospace\"\n\n _, ax = plt.subplots(figsize=(10, 6))\n ax.set_ylim(0, 1)\n ax.set_ylabel(\"Value\", fontweight=\"bold\")\n title = (", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[251:280]\n==supervision.metrics.recall:[231:252]\n iou_thresholds=iou_thresholds,\n matched_classes=unique_classes,\n small_objects=None,\n medium_objects=None,\n large_objects=None,\n )\n\n def _compute_f1_for_classes(\n self,\n matches: npt.NDArray[np.bool_],\n prediction_confidence: npt.NDArray[np.float32],\n prediction_class_ids: npt.NDArray[np.int32],\n true_class_ids: npt.NDArray[np.int32],\n ) -> tuple[\n npt.NDArray[np.float64],\n npt.NDArray[np.float64],\n npt.NDArray[np.int32],\n ]:\n \"\"\"Compute F1 scores from concatenated stats across all images.\n\n ``unique_classes`` is the union of GT and predicted classes so that\n predictions of classes absent from GT still count as false positives.\n \"\"\"\n sorted_indices = np.argsort(-prediction_confidence)\n matches = matches[sorted_indices]\n prediction_class_ids = prediction_class_ids[sorted_indices]\n # Predictions whose class never appears in the ground truth are still\n # false positives, so include those classes in the confusion matrix\n # (their true-instance count is zero).", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[417:423]\n==supervision.metrics.recall:[376:382]\n if not confusion_matrix.shape[-1] == 3:\n raise ValueError(\n f\"Confusion matrix must have shape (..., 3), got \"\n f\"{confusion_matrix.shape}\"\n )\n true_positives = confusion_matrix[..., 0]", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.mean_average_precision:[216:224]\n==supervision.metrics.mean_average_recall:[223:231]\n ]\n colors += [LEGACY_COLOR_PALETTE[4]] * 3\n\n plt.rcParams[\"font.family\"] = \"monospace\"\n\n _, ax = plt.subplots(figsize=(10, 6))\n ax.set_ylim(0, 1)\n ax.set_ylabel(\"Value\", fontweight=\"bold\")", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.mean_average_recall:[614:620]\n==supervision.metrics.precision:[420:426]\n if not confusion_matrix.shape[-1] == 3:\n raise ValueError(\n f\"Confusion matrix must have shape (..., 3), got \"\n f\"{confusion_matrix.shape}\"\n )\n true_positives = confusion_matrix[..., 0]", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[690:696]\n==supervision.metrics.mean_average_recall:[226:232]\n plt.rcParams[\"font.family\"] = \"monospace\"\n\n _, ax = plt.subplots(figsize=(10, 6))\n ax.set_ylim(0, 1)\n ax.set_ylabel(\"Value\", fontweight=\"bold\")\n title = (", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "cyclic-import", + "message": "Cyclic import (supervision -> supervision.detection.tools.polygon_zone)", + "message-id": "R0401" + } +] diff --git a/metrics-before-pylint/pylint_arquivos_criticos_antes.json b/metrics-before-pylint/pylint_arquivos_criticos_antes.json new file mode 100644 index 0000000000..f2440c76af --- /dev/null +++ b/metrics-before-pylint/pylint_arquivos_criticos_antes.json @@ -0,0 +1,421 @@ +[ + { + "arquivo": "src\\supervision\\annotators\\core.py", + "convention": 6, + "total": 135, + "error": 50, + "refactor": 57, + "warning": 22 + }, + { + "arquivo": "src\\supervision\\validators\\__init__.py", + "convention": 14, + "total": 66, + "refactor": 52 + }, + { + "arquivo": "src\\supervision\\detection\\core.py", + "convention": 39, + "total": 61, + "refactor": 9, + "warning": 1, + "error": 12 + }, + { + "arquivo": "src\\supervision\\detection\\line_zone.py", + "convention": 8, + "total": 45, + "refactor": 14, + "error": 23 + }, + { + "arquivo": "src\\supervision\\metrics\\mean_average_precision.py", + "convention": 20, + "total": 41, + "refactor": 17, + "error": 1, + "warning": 3 + }, + { + "arquivo": "src\\supervision\\utils\\image.py", + "convention": 8, + "total": 37, + "error": 19, + "refactor": 10 + }, + { + "arquivo": "src\\supervision\\__init__.py", + "convention": 34, + "total": 34 + }, + { + "arquivo": "src\\supervision\\draw\\color.py", + "convention": 22, + "total": 34, + "refactor": 1, + "error": 11 + }, + { + "arquivo": "src\\supervision\\detection\\vlm.py", + "convention": 9, + "total": 27, + "warning": 5, + "refactor": 9, + "error": 4 + }, + { + "arquivo": "src\\supervision\\key_points\\annotators.py", + "convention": 4, + "total": 27, + "refactor": 12, + "error": 11 + }, + { + "arquivo": "src\\supervision\\utils\\video.py", + "convention": 3, + "total": 26, + "error": 11, + "warning": 8, + "refactor": 4 + }, + { + "arquivo": "src\\supervision\\key_points\\core.py", + "convention": 14, + "total": 24, + "refactor": 8, + "error": 1, + "warning": 1 + }, + { + "arquivo": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "convention": 10, + "total": 23, + "warning": 3, + "refactor": 9, + "error": 1 + }, + { + "arquivo": "src\\supervision\\draw\\utils.py", + "convention": 1, + "total": 23, + "error": 20, + "refactor": 2 + }, + { + "arquivo": "src\\supervision\\assets\\list.py", + "convention": 19, + "total": 19 + }, + { + "arquivo": "src\\supervision\\dataset\\core.py", + "convention": 4, + "total": 17, + "error": 3, + "warning": 4, + "refactor": 6 + }, + { + "arquivo": "src\\supervision\\dataset\\formats\\yolo.py", + "convention": 5, + "total": 17, + "refactor": 10, + "warning": 1, + "error": 1 + }, + { + "arquivo": "src\\supervision\\annotators\\utils.py", + "convention": 11, + "total": 16, + "refactor": 5 + }, + { + "arquivo": "src\\supervision\\metrics\\detection.py", + "convention": 3, + "total": 16, + "refactor": 11, + "warning": 2 + }, + { + "arquivo": "src\\supervision\\tracker\\byte_tracker\\core.py", + "convention": 3, + "total": 16, + "refactor": 5, + "warning": 8 + }, + { + "arquivo": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "convention": 13, + "total": 16, + "refactor": 3 + }, + { + "arquivo": "src\\supervision\\detection\\compact_mask.py", + "convention": 3, + "total": 15, + "error": 2, + "refactor": 4, + "warning": 6 + }, + { + "arquivo": "src\\supervision\\detection\\utils\\masks.py", + "convention": 3, + "total": 15, + "refactor": 4, + "error": 8 + }, + { + "arquivo": "src\\supervision\\metrics\\mean_average_recall.py", + "convention": 9, + "total": 15, + "refactor": 3, + "warning": 3 + }, + { + "arquivo": "src\\supervision\\dataset\\formats\\coco.py", + "convention": 5, + "total": 14, + "refactor": 9 + }, + { + "arquivo": "src\\supervision\\metrics\\recall.py", + "convention": 5, + "total": 12, + "warning": 4, + "error": 1, + "refactor": 2 + }, + { + "arquivo": "src\\supervision\\metrics\\f1_score.py", + "convention": 5, + "total": 11, + "warning": 3, + "error": 1, + "refactor": 2 + }, + { + "arquivo": "src\\supervision\\metrics\\precision.py", + "convention": 5, + "total": 11, + "warning": 3, + "error": 1, + "refactor": 2 + }, + { + "arquivo": "src\\supervision\\dataset\\utils.py", + "convention": 7, + "total": 10, + "warning": 2, + "error": 1 + }, + { + "arquivo": "src\\supervision\\detection\\tools\\inference_slicer.py", + "convention": 1, + "total": 9, + "refactor": 8 + }, + { + "arquivo": "src\\supervision\\utils\\file.py", + "convention": 2, + "total": 9, + "warning": 7 + }, + { + "arquivo": "src\\supervision\\dataset\\formats\\pascal_voc.py", + "convention": 2, + "total": 8, + "refactor": 5, + "error": 1 + }, + { + "arquivo": "src\\supervision\\detection\\tools\\csv_sink.py", + "convention": 4, + "total": 8, + "refactor": 2, + "warning": 2 + }, + { + "arquivo": "src\\supervision\\detection\\utils\\internal.py", + "convention": 2, + "total": 8, + "error": 3, + "refactor": 3 + }, + { + "arquivo": "src\\supervision\\utils\\conversion.py", + "convention": 4, + "total": 8, + "error": 4 + }, + { + "arquivo": "src\\supervision\\detection\\tools\\polygon_zone.py", + "convention": 1, + "total": 7, + "refactor": 5, + "error": 1 + }, + { + "arquivo": "src\\supervision\\detection\\tools\\transformers.py", + "convention": 1, + "total": 7, + "refactor": 6 + }, + { + "arquivo": "src\\supervision\\geometry\\core.py", + "convention": 7, + "total": 7 + }, + { + "arquivo": "src\\supervision\\metrics\\utils\\object_size.py", + "convention": 7, + "total": 7 + }, + { + "arquivo": "src\\supervision\\utils\\internal.py", + "convention": 2, + "total": 7, + "warning": 4, + "refactor": 1 + }, + { + "arquivo": "src\\supervision\\keypoint\\annotators.py", + "convention": 2, + "total": 6, + "warning": 4 + }, + { + "arquivo": "src\\supervision\\detection\\tools\\smoother.py", + "convention": 4, + "total": 5, + "refactor": 1 + }, + { + "arquivo": "src\\supervision\\detection\\utils\\converters.py", + "convention": 1, + "total": 5, + "error": 4 + }, + { + "arquivo": "src\\supervision\\metrics\\utils\\utils.py", + "convention": 3, + "total": 5, + "warning": 2 + }, + { + "arquivo": "src\\supervision\\tracker\\byte_tracker\\matching.py", + "convention": 5, + "total": 5 + }, + { + "arquivo": "src\\supervision\\utils\\notebook.py", + "convention": 1, + "total": 5, + "error": 4 + }, + { + "arquivo": "src\\supervision\\annotators\\base.py", + "convention": 3, + "total": 4, + "refactor": 1 + }, + { + "arquivo": "src\\supervision\\tracker\\byte_tracker\\utils.py", + "convention": 4, + "total": 4 + }, + { + "arquivo": "src\\supervision\\detection\\tools\\json_sink.py", + "convention": 1, + "total": 3, + "warning": 1, + "refactor": 1 + }, + { + "arquivo": "src\\supervision\\detection\\utils\\boxes.py", + "convention": 1, + "total": 3, + "error": 1, + "warning": 1 + }, + { + "arquivo": "src\\supervision\\detection\\utils\\polygons.py", + "convention": 1, + "total": 3, + "error": 2 + }, + { + "arquivo": "src\\supervision\\keypoint\\core.py", + "convention": 2, + "total": 3, + "warning": 1 + }, + { + "arquivo": "src\\supervision\\keypoint\\__init__.py", + "convention": 3, + "total": 3 + }, + { + "arquivo": "src\\supervision\\key_points\\skeletons.py", + "convention": 3, + "total": 3 + }, + { + "arquivo": "src\\supervision\\classification\\core.py", + "convention": 2, + "total": 2 + }, + { + "arquivo": "src\\supervision\\draw\\base.py", + "convention": 2, + "total": 2 + }, + { + "arquivo": "src\\supervision\\config.py", + "convention": 1, + "total": 1 + }, + { + "arquivo": "src\\supervision\\assets\\downloader.py", + "convention": 1, + "total": 1 + }, + { + "arquivo": "src\\supervision\\assets\\__init__.py", + "convention": 1, + "total": 1 + }, + { + "arquivo": "src\\supervision\\detection\\utils\\vlms.py", + "convention": 1, + "total": 1 + }, + { + "arquivo": "src\\supervision\\geometry\\utils.py", + "convention": 1, + "total": 1 + }, + { + "arquivo": "src\\supervision\\metrics\\core.py", + "convention": 1, + "total": 1 + }, + { + "arquivo": "src\\supervision\\metrics\\__init__.py", + "convention": 1, + "total": 1 + }, + { + "arquivo": "src\\supervision\\tracker\\byte_tracker\\kalman_filter.py", + "convention": 1, + "total": 1 + }, + { + "arquivo": "src\\supervision\\utils\\iterables.py", + "convention": 1, + "total": 1 + }, + { + "arquivo": "src\\supervision\\utils\\logger.py", + "convention": 1, + "total": 1 + } +] \ No newline at end of file diff --git a/metrics-before-pylint/pylint_convention_antes.json b/metrics-before-pylint/pylint_convention_antes.json new file mode 100644 index 0000000000..af3fa60460 --- /dev/null +++ b/metrics-before-pylint/pylint_convention_antes.json @@ -0,0 +1,4851 @@ +[ + { + "type": "convention", + "module": "supervision.config", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\config.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\__init__.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 9, + "column": 0, + "endLine": 33, + "endColumn": 1, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.annotators.core import BackgroundOverlayAnnotator, BlurAnnotator, BoxAnnotator, BoxCornerAnnotator, CircleAnnotator, ColorAnnotator, ComparisonAnnotator, CropAnnotator, DotAnnotator, EllipseAnnotator, HaloAnnotator, HeatMapAnnotator, IconAnnotator, LabelAnnotator, MaskAnnotator, OrientedBoxAnnotator, PercentageBarAnnotator, PixelateAnnotator, PolygonAnnotator, RichLabelAnnotator, RoundBoxAnnotator, TraceAnnotator, TriangleAnnotator\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 34, + "column": 0, + "endLine": 39, + "endColumn": 1, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.annotators.utils import ColorLookup, hex_to_rgba, is_valid_hex, rgba_to_hex\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 40, + "column": 0, + "endLine": 40, + "endColumn": 59, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.classification.core import Classifications\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 41, + "column": 0, + "endLine": 45, + "endColumn": 1, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.dataset.core import BaseDataset, ClassificationDataset, DetectionDataset\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 46, + "column": 0, + "endLine": 46, + "endColumn": 73, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.dataset.formats.coco import get_coco_class_index_mapping\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 47, + "column": 0, + "endLine": 47, + "endColumn": 58, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.detection.compact_mask import CompactMask\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 48, + "column": 0, + "endLine": 48, + "endColumn": 49, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.detection.core import Detections\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 49, + "column": 0, + "endLine": 53, + "endColumn": 1, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.detection.line_zone import LineZone, LineZoneAnnotator, LineZoneAnnotatorMulticlass\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 54, + "column": 0, + "endLine": 54, + "endColumn": 56, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.detection.tools.csv_sink import CSVSink\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 55, + "column": 0, + "endLine": 55, + "endColumn": 72, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.detection.tools.inference_slicer import InferenceSlicer\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 56, + "column": 0, + "endLine": 56, + "endColumn": 58, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.detection.tools.json_sink import JSONSink\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 57, + "column": 0, + "endLine": 57, + "endColumn": 86, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.detection.tools.polygon_zone import PolygonZone, PolygonZoneAnnotator\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 58, + "column": 0, + "endLine": 58, + "endColumn": 67, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.detection.tools.smoother import DetectionsSmoother\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 59, + "column": 0, + "endLine": 66, + "endColumn": 1, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.detection.utils.boxes import clip_boxes, denormalize_boxes, move_boxes, pad_boxes, scale_boxes, xyxyxyxy_to_xyxy\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 67, + "column": 0, + "endLine": 81, + "endColumn": 1, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.detection.utils.converters import is_compressed_rle, mask_to_polygons, mask_to_rle, mask_to_xyxy, polygon_to_mask, polygon_to_xyxy, rle_to_mask, xcycwh_to_xyxy, xywh_to_xyxy, xyxy_to_mask, xyxy_to_polygons, xyxy_to_xcycarh, xyxy_to_xywh\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 82, + "column": 0, + "endLine": 96, + "endColumn": 1, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.detection.utils.iou_and_nms import OverlapFilter, OverlapMetric, box_iou, box_iou_batch, box_iou_batch_with_jaccard, box_non_max_merge, box_non_max_suppression, mask_iou_batch, mask_non_max_merge, mask_non_max_suppression, oriented_box_iou_batch, oriented_box_non_max_merge, oriented_box_non_max_suppression\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 97, + "column": 0, + "endLine": 103, + "endColumn": 1, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.detection.utils.masks import calculate_masks_centroids, contains_holes, contains_multiple_segments, filter_segments_by_distance, move_masks\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 104, + "column": 0, + "endLine": 107, + "endColumn": 1, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.detection.utils.polygons import approximate_polygon, filter_polygons_by_area\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 108, + "column": 0, + "endLine": 108, + "endColumn": 77, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.detection.utils.vlms import edit_distance, fuzzy_match_index\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 109, + "column": 0, + "endLine": 109, + "endColumn": 46, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.detection.vlm import LMM, VLM\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 110, + "column": 0, + "endLine": 110, + "endColumn": 54, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.draw.color import Color, ColorPalette\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 111, + "column": 0, + "endLine": 121, + "endColumn": 1, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.draw.utils import calculate_optimal_line_thickness, calculate_optimal_text_scale, draw_filled_polygon, draw_filled_rectangle, draw_image, draw_line, draw_polygon, draw_rectangle, draw_text\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 122, + "column": 0, + "endLine": 122, + "endColumn": 59, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.geometry.core import Point, Position, Rect\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 123, + "column": 0, + "endLine": 123, + "endColumn": 57, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.geometry.utils import get_polygon_center\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 124, + "column": 0, + "endLine": 132, + "endColumn": 1, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.key_points.annotators import EdgeAnnotator, VertexAnnotator, VertexEllipseAnnotator, VertexEllipseAreaAnnotator, VertexEllipseHaloAnnotator, VertexEllipseOutlineAnnotator, VertexLabelAnnotator\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 133, + "column": 0, + "endLine": 133, + "endColumn": 49, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.key_points.core import KeyPoints\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 134, + "column": 0, + "endLine": 134, + "endColumn": 79, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.metrics.detection import ConfusionMatrix, MeanAveragePrecision\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 135, + "column": 0, + "endLine": 135, + "endColumn": 59, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.tracker.byte_tracker.core import ByteTrack\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 136, + "column": 0, + "endLine": 136, + "endColumn": 69, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.utils.conversion import cv2_to_pillow, pillow_to_cv2\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 137, + "column": 0, + "endLine": 137, + "endColumn": 61, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.utils.file import list_files_with_extensions\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 138, + "column": 0, + "endLine": 148, + "endColumn": 1, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.utils.image import ImageSink, crop_image, get_image_resolution_wh, grayscale_image, letterbox_image, overlay_image, resize_image, scale_image, tint_image\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 149, + "column": 0, + "endLine": 149, + "endColumn": 67, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.utils.notebook import plot_image, plot_images_grid\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision", + "obj": "", + "line": 150, + "column": 0, + "endLine": 156, + "endColumn": 1, + "path": "src\\supervision\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.utils.video import FPSMonitor, VideoInfo, VideoSink, get_video_frames_generator, process_video\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision.annotators.base", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\annotators\\base.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.annotators.base", + "obj": "BaseAnnotator", + "line": 7, + "column": 0, + "endLine": 7, + "endColumn": 19, + "path": "src\\supervision\\annotators\\base.py", + "symbol": "missing-class-docstring", + "message": "Missing class docstring", + "message-id": "C0115" + }, + { + "type": "convention", + "module": "supervision.annotators.base", + "obj": "BaseAnnotator.annotate", + "line": 9, + "column": 4, + "endLine": 9, + "endColumn": 16, + "path": "src\\supervision\\annotators\\base.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.annotators.core", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-lines", + "message": "Too many lines in module (3294/1000)", + "message-id": "C0302" + }, + { + "type": "convention", + "module": "supervision.annotators.core", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.annotators.core", + "obj": "LabelAnnotator.draw_rounded_rectangle", + "line": 1470, + "column": 4, + "endLine": 1470, + "endColumn": 30, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.annotators.core", + "obj": "PercentageBarAnnotator.calculate_border_coordinates", + "line": 2722, + "column": 4, + "endLine": 2722, + "endColumn": 36, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.annotators.core", + "obj": "PercentageBarAnnotator.validate_custom_values", + "line": 2783, + "column": 4, + "endLine": 2783, + "endColumn": 30, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.annotators.core", + "obj": "CropAnnotator.calculate_crop_coordinates", + "line": 2904, + "column": 4, + "endLine": 2904, + "endColumn": 34, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.annotators.utils", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\annotators\\utils.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.annotators.utils", + "obj": "ColorLookup.list", + "line": 36, + "column": 4, + "endLine": 36, + "endColumn": 12, + "path": "src\\supervision\\annotators\\utils.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.annotators.utils", + "obj": "resolve_color_idx", + "line": 40, + "column": 0, + "endLine": 40, + "endColumn": 21, + "path": "src\\supervision\\annotators\\utils.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.annotators.utils", + "obj": "resolve_text_background_xyxy", + "line": 80, + "column": 0, + "endLine": 80, + "endColumn": 32, + "path": "src\\supervision\\annotators\\utils.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.annotators.utils", + "obj": "get_color_by_index", + "line": 133, + "column": 0, + "endLine": 133, + "endColumn": 22, + "path": "src\\supervision\\annotators\\utils.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.annotators.utils", + "obj": "resolve_color", + "line": 139, + "column": 0, + "endLine": 139, + "endColumn": 17, + "path": "src\\supervision\\annotators\\utils.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.annotators.utils", + "obj": "validate_labels", + "line": 231, + "column": 0, + "endLine": 231, + "endColumn": 19, + "path": "src\\supervision\\annotators\\utils.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.annotators.utils", + "obj": "Trace", + "line": 332, + "column": 0, + "endLine": 332, + "endColumn": 11, + "path": "src\\supervision\\annotators\\utils.py", + "symbol": "missing-class-docstring", + "message": "Missing class docstring", + "message-id": "C0115" + }, + { + "type": "convention", + "module": "supervision.annotators.utils", + "obj": "Trace.put", + "line": 347, + "column": 4, + "endLine": 347, + "endColumn": 11, + "path": "src\\supervision\\annotators\\utils.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.annotators.utils", + "obj": "Trace.get", + "line": 377, + "column": 4, + "endLine": 377, + "endColumn": 11, + "path": "src\\supervision\\annotators\\utils.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.annotators.utils", + "obj": "rgba_to_hex", + "line": 427, + "column": 11, + "endLine": 427, + "endColumn": 38, + "path": "src\\supervision\\annotators\\utils.py", + "symbol": "consider-using-f-string", + "message": "Formatting a regular string which could be an f-string", + "message-id": "C0209" + }, + { + "type": "convention", + "module": "supervision.assets.downloader", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\assets\\downloader.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.assets.list", + "obj": "", + "line": 28, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\assets\\list.py", + "symbol": "line-too-long", + "message": "Line too long (147/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.assets.list", + "obj": "", + "line": 29, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\assets\\list.py", + "symbol": "line-too-long", + "message": "Line too long (147/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.assets.list", + "obj": "", + "line": 30, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\assets\\list.py", + "symbol": "line-too-long", + "message": "Line too long (147/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.assets.list", + "obj": "", + "line": 31, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\assets\\list.py", + "symbol": "line-too-long", + "message": "Line too long (147/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.assets.list", + "obj": "", + "line": 32, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\assets\\list.py", + "symbol": "line-too-long", + "message": "Line too long (147/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.assets.list", + "obj": "", + "line": 33, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\assets\\list.py", + "symbol": "line-too-long", + "message": "Line too long (147/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.assets.list", + "obj": "", + "line": 34, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\assets\\list.py", + "symbol": "line-too-long", + "message": "Line too long (147/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.assets.list", + "obj": "", + "line": 35, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\assets\\list.py", + "symbol": "line-too-long", + "message": "Line too long (147/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.assets.list", + "obj": "", + "line": 36, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\assets\\list.py", + "symbol": "line-too-long", + "message": "Line too long (147/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.assets.list", + "obj": "", + "line": 37, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\assets\\list.py", + "symbol": "line-too-long", + "message": "Line too long (147/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.assets.list", + "obj": "", + "line": 38, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\assets\\list.py", + "symbol": "line-too-long", + "message": "Line too long (147/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.assets.list", + "obj": "", + "line": 39, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\assets\\list.py", + "symbol": "line-too-long", + "message": "Line too long (147/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.assets.list", + "obj": "", + "line": 62, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\assets\\list.py", + "symbol": "line-too-long", + "message": "Line too long (139/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.assets.list", + "obj": "", + "line": 63, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\assets\\list.py", + "symbol": "line-too-long", + "message": "Line too long (139/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.assets.list", + "obj": "", + "line": 64, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\assets\\list.py", + "symbol": "line-too-long", + "message": "Line too long (139/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.assets.list", + "obj": "", + "line": 65, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\assets\\list.py", + "symbol": "line-too-long", + "message": "Line too long (139/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.assets.list", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\assets\\list.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.assets.list", + "obj": "Assets", + "line": 7, + "column": 0, + "endLine": 7, + "endColumn": 12, + "path": "src\\supervision\\assets\\list.py", + "symbol": "missing-class-docstring", + "message": "Missing class docstring", + "message-id": "C0115" + }, + { + "type": "convention", + "module": "supervision.assets.list", + "obj": "Assets.list", + "line": 19, + "column": 4, + "endLine": 19, + "endColumn": 12, + "path": "src\\supervision\\assets\\list.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.assets", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\assets\\__init__.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.classification.core", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\classification\\core.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.classification.core", + "obj": "Classifications", + "line": 33, + "column": 0, + "endLine": 33, + "endColumn": 21, + "path": "src\\supervision\\classification\\core.py", + "symbol": "missing-class-docstring", + "message": "Missing class docstring", + "message-id": "C0115" + }, + { + "type": "convention", + "module": "supervision.dataset.core", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\dataset\\core.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.dataset.core", + "obj": "BaseDataset", + "line": 41, + "column": 0, + "endLine": 41, + "endColumn": 17, + "path": "src\\supervision\\dataset\\core.py", + "symbol": "missing-class-docstring", + "message": "Missing class docstring", + "message-id": "C0115" + }, + { + "type": "convention", + "module": "supervision.dataset.core", + "obj": "BaseDataset.split", + "line": 47, + "column": 4, + "endLine": 47, + "endColumn": 13, + "path": "src\\supervision\\dataset\\core.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.dataset.core", + "obj": "DetectionDataset.as_yolo", + "line": 552, + "column": 12, + "endLine": 552, + "endColumn": 27, + "path": "src\\supervision\\dataset\\core.py", + "symbol": "import-outside-toplevel", + "message": "Import outside toplevel (warnings)", + "message-id": "C0415" + }, + { + "type": "convention", + "module": "supervision.dataset.utils", + "obj": "", + "line": 29, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\dataset\\utils.py", + "symbol": "line-too-long", + "message": "Line too long (111/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.dataset.utils", + "obj": "", + "line": 37, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\dataset\\utils.py", + "symbol": "line-too-long", + "message": "Line too long (111/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.dataset.utils", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\dataset\\utils.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.dataset.utils", + "obj": "approximate_mask_with_polygons", + "line": 52, + "column": 0, + "endLine": 52, + "endColumn": 34, + "path": "src\\supervision\\dataset\\utils.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.dataset.utils", + "obj": "merge_class_lists", + "line": 80, + "column": 0, + "endLine": 80, + "endColumn": 21, + "path": "src\\supervision\\dataset\\utils.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.dataset.utils", + "obj": "map_detections_class_id", + "line": 108, + "column": 0, + "endLine": 108, + "endColumn": 27, + "path": "src\\supervision\\dataset\\utils.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.dataset.utils", + "obj": "save_dataset_images", + "line": 128, + "column": 0, + "endLine": 128, + "endColumn": 23, + "path": "src\\supervision\\dataset\\utils.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.dataset.formats.coco", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\dataset\\formats\\coco.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.dataset.formats.coco", + "obj": "coco_categories_to_classes", + "line": 29, + "column": 0, + "endLine": 29, + "endColumn": 30, + "path": "src\\supervision\\dataset\\formats\\coco.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.dataset.formats.coco", + "obj": "build_coco_class_index_mapping", + "line": 36, + "column": 0, + "endLine": 36, + "endColumn": 34, + "path": "src\\supervision\\dataset\\formats\\coco.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.dataset.formats.coco", + "obj": "group_coco_annotations_by_image_id", + "line": 84, + "column": 0, + "endLine": 84, + "endColumn": 38, + "path": "src\\supervision\\dataset\\formats\\coco.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.dataset.formats.coco", + "obj": "coco_annotations_to_masks", + "line": 96, + "column": 0, + "endLine": 96, + "endColumn": 29, + "path": "src\\supervision\\dataset\\formats\\coco.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.dataset.formats.pascal_voc", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\dataset\\formats\\pascal_voc.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.dataset.formats.pascal_voc", + "obj": "parse_polygon_points", + "line": 339, + "column": 0, + "endLine": 339, + "endColumn": 24, + "path": "src\\supervision\\dataset\\formats\\pascal_voc.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.dataset.formats.yolo", + "obj": "", + "line": 252, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\dataset\\formats\\yolo.py", + "symbol": "line-too-long", + "message": "Line too long (124/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.dataset.formats.yolo", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\dataset\\formats\\yolo.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.dataset.formats.yolo", + "obj": "yolo_annotations_to_detections", + "line": 138, + "column": 0, + "endLine": 138, + "endColumn": 34, + "path": "src\\supervision\\dataset\\formats\\yolo.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.dataset.formats.yolo", + "obj": "object_to_yolo", + "line": 274, + "column": 0, + "endLine": 274, + "endColumn": 18, + "path": "src\\supervision\\dataset\\formats\\yolo.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.dataset.formats.yolo", + "obj": "save_data_yaml", + "line": 474, + "column": 0, + "endLine": 474, + "endColumn": 18, + "path": "src\\supervision\\dataset\\formats\\yolo.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.compact_mask", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\compact_mask.py", + "symbol": "too-many-lines", + "message": "Too many lines in module (1306/1000)", + "message-id": "C0302" + }, + { + "type": "convention", + "module": "supervision.detection.compact_mask", + "obj": "_resize_crop", + "line": 369, + "column": 4, + "endLine": 369, + "endColumn": 14, + "path": "src\\supervision\\detection\\compact_mask.py", + "symbol": "import-outside-toplevel", + "message": "Import outside toplevel (cv2)", + "message-id": "C0415" + }, + { + "type": "convention", + "module": "supervision.detection.compact_mask", + "obj": "CompactMask.resize", + "line": 1233, + "column": 8, + "endLine": 1233, + "endColumn": 57, + "path": "src\\supervision\\detection\\compact_mask.py", + "symbol": "import-outside-toplevel", + "message": "Import outside toplevel (concurrent.futures.ThreadPoolExecutor)", + "message-id": "C0415" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 73, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (143/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 77, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (115/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 93, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (119/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 109, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (121/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 437, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (101/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 983, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (132/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 984, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (132/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 985, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (132/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 986, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (132/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 987, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (132/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 988, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (132/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 989, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (132/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 990, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (132/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 991, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (132/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 1044, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (102/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 1406, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (204/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 1420, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (106/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 1469, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (132/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 1470, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (132/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 1471, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (132/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 1472, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (132/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 1473, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (132/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 1474, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (132/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 1475, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (132/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 1476, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (132/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 1477, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (132/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 1478, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (132/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 1531, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (102/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 1864, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (204/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 1878, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (106/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 2580, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "line-too-long", + "message": "Line too long (119/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "too-many-lines", + "message": "Too many lines in module (2934/1000)", + "message-id": "C0302" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\core.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "Detections.__iter__", + "line": 196, + "column": 8, + "endLine": 204, + "endColumn": 13, + "path": "src\\supervision\\detection\\core.py", + "symbol": "consider-using-enumerate", + "message": "Consider using enumerate instead of iterating with range and len", + "message-id": "C0200" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "Detections.merge.stack_or_none", + "line": 2185, + "column": 19, + "endLine": 2185, + "endColumn": 43, + "path": "src\\supervision\\detection\\core.py", + "symbol": "unnecessary-dunder-call", + "message": "Unnecessarily calls dunder method __getattribute__. Access attribute directly or use getattr built-in function.", + "message-id": "C2801" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "Detections.merge.stack_or_none", + "line": 2187, + "column": 19, + "endLine": 2187, + "endColumn": 43, + "path": "src\\supervision\\detection\\core.py", + "symbol": "unnecessary-dunder-call", + "message": "Unnecessarily calls dunder method __getattribute__. Access attribute directly or use getattr built-in function.", + "message-id": "C2801" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "Detections.merge.stack_or_none", + "line": 2190, + "column": 25, + "endLine": 2190, + "endColumn": 49, + "path": "src\\supervision\\detection\\core.py", + "symbol": "unnecessary-dunder-call", + "message": "Unnecessarily calls dunder method __getattribute__. Access attribute directly or use getattr built-in function.", + "message-id": "C2801" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "Detections.merge.stack_or_none", + "line": 2195, + "column": 30, + "endLine": 2195, + "endColumn": 54, + "path": "src\\supervision\\detection\\core.py", + "symbol": "unnecessary-dunder-call", + "message": "Unnecessarily calls dunder method __getattribute__. Access attribute directly or use getattr built-in function.", + "message-id": "C2801" + }, + { + "type": "convention", + "module": "supervision.detection.core", + "obj": "validate_fields_both_defined_or_none", + "line": 2931, + "column": 0, + "endLine": 2931, + "endColumn": 40, + "path": "src\\supervision\\detection\\core.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.line_zone", + "obj": "", + "line": 33, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "line-too-long", + "message": "Line too long (118/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.line_zone", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.detection.line_zone", + "obj": "LineZone.in_count", + "line": 130, + "column": 4, + "endLine": 130, + "endColumn": 16, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.line_zone", + "obj": "LineZone.out_count", + "line": 134, + "column": 4, + "endLine": 134, + "endColumn": 17, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.line_zone", + "obj": "LineZone.in_count_per_class", + "line": 138, + "column": 4, + "endLine": 138, + "endColumn": 26, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.line_zone", + "obj": "LineZone.out_count_per_class", + "line": 142, + "column": 4, + "endLine": 142, + "endColumn": 27, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator", + "line": 330, + "column": 0, + "endLine": 330, + "endColumn": 23, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "missing-class-docstring", + "message": "Missing class docstring", + "message-id": "C0115" + }, + { + "type": "convention", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotatorMulticlass", + "line": 713, + "column": 0, + "endLine": 713, + "endColumn": 33, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "missing-class-docstring", + "message": "Missing class docstring", + "message-id": "C0115" + }, + { + "type": "convention", + "module": "supervision.detection.vlm", + "obj": "", + "line": 437, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "line-too-long", + "message": "Line too long (172/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.vlm", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.detection.vlm", + "obj": "LMM.list", + "line": 50, + "column": 4, + "endLine": 50, + "endColumn": 12, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.vlm", + "obj": "LMM.from_value", + "line": 54, + "column": 4, + "endLine": 54, + "endColumn": 18, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.vlm", + "obj": "VLM.list", + "line": 97, + "column": 4, + "endLine": 97, + "endColumn": 12, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.vlm", + "obj": "VLM.from_value", + "line": 101, + "column": 4, + "endLine": 101, + "endColumn": 18, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.vlm", + "obj": "validate_vlm_parameters", + "line": 211, + "column": 0, + "endLine": 211, + "endColumn": 27, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.vlm", + "obj": "from_google_gemini_2_0", + "line": 636, + "column": 21, + "endLine": 636, + "endColumn": 40, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "use-maxsplit-arg", + "message": "Use result.split('```', maxsplit=1)[0] instead", + "message-id": "C0207" + }, + { + "type": "convention", + "module": "supervision.detection.vlm", + "obj": "from_google_gemini_2_5", + "line": 727, + "column": 21, + "endLine": 727, + "endColumn": 40, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "use-maxsplit-arg", + "message": "Use result.split('```', maxsplit=1)[0] instead", + "message-id": "C0207" + }, + { + "type": "convention", + "module": "supervision.detection.tools.csv_sink", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\tools\\csv_sink.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.detection.tools.csv_sink", + "obj": "WriterProtocol", + "line": 27, + "column": 0, + "endLine": 27, + "endColumn": 20, + "path": "src\\supervision\\detection\\tools\\csv_sink.py", + "symbol": "missing-class-docstring", + "message": "Missing class docstring", + "message-id": "C0115" + }, + { + "type": "convention", + "module": "supervision.detection.tools.csv_sink", + "obj": "WriterProtocol.writerow", + "line": 28, + "column": 4, + "endLine": 28, + "endColumn": 16, + "path": "src\\supervision\\detection\\tools\\csv_sink.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.tools.csv_sink", + "obj": "CSVSink.parse_field_names", + "line": 234, + "column": 4, + "endLine": 234, + "endColumn": 25, + "path": "src\\supervision\\detection\\tools\\csv_sink.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.tools.inference_slicer", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\tools\\inference_slicer.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.detection.tools.json_sink", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\tools\\json_sink.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.detection.tools.polygon_zone", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\tools\\polygon_zone.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.detection.tools.smoother", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\tools\\smoother.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.detection.tools.smoother", + "obj": "DetectionsSmoother.update_with_detections", + "line": 117, + "column": 8, + "endLine": 121, + "endColumn": 87, + "path": "src\\supervision\\detection\\tools\\smoother.py", + "symbol": "consider-using-enumerate", + "message": "Consider using enumerate instead of iterating with range and len", + "message-id": "C0200" + }, + { + "type": "convention", + "module": "supervision.detection.tools.smoother", + "obj": "DetectionsSmoother.update_with_detections", + "line": 123, + "column": 8, + "endLine": 125, + "endColumn": 50, + "path": "src\\supervision\\detection\\tools\\smoother.py", + "symbol": "consider-using-dict-items", + "message": "Consider iterating with .items()", + "message-id": "C0206" + }, + { + "type": "convention", + "module": "supervision.detection.tools.smoother", + "obj": "DetectionsSmoother.get_smoothed_detections", + "line": 166, + "column": 4, + "endLine": 166, + "endColumn": 31, + "path": "src\\supervision\\detection\\tools\\smoother.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.tools.transformers", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\tools\\transformers.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.detection.utils.boxes", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\utils\\boxes.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.detection.utils.converters", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\utils\\converters.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.detection.utils.internal", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\utils\\internal.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.detection.utils.internal", + "obj": "extract_ultralytics_masks", + "line": 18, + "column": 0, + "endLine": 18, + "endColumn": 29, + "path": "src\\supervision\\detection\\utils\\internal.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "too-many-lines", + "message": "Too many lines in module (1453/1000)", + "message-id": "C0302" + }, + { + "type": "convention", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "OverlapFilter.list", + "line": 35, + "column": 4, + "endLine": 35, + "endColumn": 12, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "OverlapFilter.from_value", + "line": 39, + "column": 4, + "endLine": 39, + "endColumn": 18, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "OverlapMetric.list", + "line": 71, + "column": 4, + "endLine": 71, + "endColumn": 12, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "OverlapMetric.from_value", + "line": 75, + "column": 4, + "endLine": 75, + "endColumn": 18, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "_jaccard", + "line": 280, + "column": 4, + "endLine": 280, + "endColumn": 7, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "invalid-name", + "message": "Variable name \"EPS\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "_jaccard", + "line": 294, + "column": 4, + "endLine": 294, + "endColumn": 6, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "invalid-name", + "message": "Variable name \"Aa\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "_jaccard", + "line": 295, + "column": 4, + "endLine": 295, + "endColumn": 6, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "invalid-name", + "message": "Variable name \"Ab\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "_jaccard", + "line": 296, + "column": 4, + "endLine": 296, + "endColumn": 6, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "invalid-name", + "message": "Variable name \"Ai\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.detection.utils.masks", + "obj": "", + "line": 188, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\utils\\masks.py", + "symbol": "line-too-long", + "message": "Line too long (113/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.utils.masks", + "obj": "", + "line": 249, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\utils\\masks.py", + "symbol": "line-too-long", + "message": "Line too long (137/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.detection.utils.masks", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\utils\\masks.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.detection.utils.polygons", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\utils\\polygons.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.detection.utils.vlms", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\detection\\utils\\vlms.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.draw.base", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\draw\\base.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.draw.base", + "obj": "", + "line": 7, + "column": 0, + "endLine": 7, + "endColumn": 9, + "path": "src\\supervision\\draw\\base.py", + "symbol": "invalid-name", + "message": "Type variable name \"ImageType\" doesn't conform to predefined naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\draw\\color.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "Color.WHITE", + "line": 356, + "column": 4, + "endLine": 356, + "endColumn": 13, + "path": "src\\supervision\\draw\\color.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "Color.WHITE", + "line": 356, + "column": 4, + "endLine": 356, + "endColumn": 13, + "path": "src\\supervision\\draw\\color.py", + "symbol": "invalid-name", + "message": "Method name \"WHITE\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "Color.BLACK", + "line": 360, + "column": 4, + "endLine": 360, + "endColumn": 13, + "path": "src\\supervision\\draw\\color.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "Color.BLACK", + "line": 360, + "column": 4, + "endLine": 360, + "endColumn": 13, + "path": "src\\supervision\\draw\\color.py", + "symbol": "invalid-name", + "message": "Method name \"BLACK\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "Color.GREY", + "line": 364, + "column": 4, + "endLine": 364, + "endColumn": 12, + "path": "src\\supervision\\draw\\color.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "Color.GREY", + "line": 364, + "column": 4, + "endLine": 364, + "endColumn": 12, + "path": "src\\supervision\\draw\\color.py", + "symbol": "invalid-name", + "message": "Method name \"GREY\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "Color.RED", + "line": 368, + "column": 4, + "endLine": 368, + "endColumn": 11, + "path": "src\\supervision\\draw\\color.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "Color.RED", + "line": 368, + "column": 4, + "endLine": 368, + "endColumn": 11, + "path": "src\\supervision\\draw\\color.py", + "symbol": "invalid-name", + "message": "Method name \"RED\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "Color.GREEN", + "line": 372, + "column": 4, + "endLine": 372, + "endColumn": 13, + "path": "src\\supervision\\draw\\color.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "Color.GREEN", + "line": 372, + "column": 4, + "endLine": 372, + "endColumn": 13, + "path": "src\\supervision\\draw\\color.py", + "symbol": "invalid-name", + "message": "Method name \"GREEN\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "Color.BLUE", + "line": 376, + "column": 4, + "endLine": 376, + "endColumn": 12, + "path": "src\\supervision\\draw\\color.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "Color.BLUE", + "line": 376, + "column": 4, + "endLine": 376, + "endColumn": 12, + "path": "src\\supervision\\draw\\color.py", + "symbol": "invalid-name", + "message": "Method name \"BLUE\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "Color.YELLOW", + "line": 380, + "column": 4, + "endLine": 380, + "endColumn": 14, + "path": "src\\supervision\\draw\\color.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "Color.YELLOW", + "line": 380, + "column": 4, + "endLine": 380, + "endColumn": 14, + "path": "src\\supervision\\draw\\color.py", + "symbol": "invalid-name", + "message": "Method name \"YELLOW\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "Color.ROBOFLOW", + "line": 384, + "column": 4, + "endLine": 384, + "endColumn": 16, + "path": "src\\supervision\\draw\\color.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "Color.ROBOFLOW", + "line": 384, + "column": 4, + "endLine": 384, + "endColumn": 16, + "path": "src\\supervision\\draw\\color.py", + "symbol": "invalid-name", + "message": "Method name \"ROBOFLOW\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "ColorPalette", + "line": 406, + "column": 0, + "endLine": 406, + "endColumn": 18, + "path": "src\\supervision\\draw\\color.py", + "symbol": "missing-class-docstring", + "message": "Missing class docstring", + "message-id": "C0115" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "ColorPalette.DEFAULT", + "line": 410, + "column": 4, + "endLine": 410, + "endColumn": 15, + "path": "src\\supervision\\draw\\color.py", + "symbol": "invalid-name", + "message": "Method name \"DEFAULT\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "ColorPalette.ROBOFLOW", + "line": 431, + "column": 4, + "endLine": 431, + "endColumn": 16, + "path": "src\\supervision\\draw\\color.py", + "symbol": "invalid-name", + "message": "Method name \"ROBOFLOW\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "ColorPalette.LEGACY", + "line": 452, + "column": 4, + "endLine": 452, + "endColumn": 14, + "path": "src\\supervision\\draw\\color.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.draw.color", + "obj": "ColorPalette.LEGACY", + "line": 452, + "column": 4, + "endLine": 452, + "endColumn": 14, + "path": "src\\supervision\\draw\\color.py", + "symbol": "invalid-name", + "message": "Method name \"LEGACY\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.draw.utils", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.geometry.core", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\geometry\\core.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.geometry.core", + "obj": "Position.list", + "line": 25, + "column": 4, + "endLine": 25, + "endColumn": 12, + "path": "src\\supervision\\geometry\\core.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.geometry.core", + "obj": "Rect.from_xyxy", + "line": 176, + "column": 4, + "endLine": 176, + "endColumn": 17, + "path": "src\\supervision\\geometry\\core.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.geometry.core", + "obj": "Rect.top_left", + "line": 181, + "column": 4, + "endLine": 181, + "endColumn": 16, + "path": "src\\supervision\\geometry\\core.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.geometry.core", + "obj": "Rect.bottom_right", + "line": 185, + "column": 4, + "endLine": 185, + "endColumn": 20, + "path": "src\\supervision\\geometry\\core.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.geometry.core", + "obj": "Rect.pad", + "line": 188, + "column": 4, + "endLine": 188, + "endColumn": 11, + "path": "src\\supervision\\geometry\\core.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.geometry.core", + "obj": "Rect.as_xyxy_int_tuple", + "line": 196, + "column": 4, + "endLine": 196, + "endColumn": 25, + "path": "src\\supervision\\geometry\\core.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.geometry.utils", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\geometry\\utils.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.keypoint.annotators", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\keypoint\\annotators.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.keypoint.annotators", + "obj": "", + "line": 8, + "column": 0, + "endLine": 13, + "endColumn": 1, + "path": "src\\supervision\\keypoint\\annotators.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.key_points.annotators import BaseKeyPointAnnotator, EdgeAnnotator, VertexAnnotator, VertexLabelAnnotator\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision.keypoint.core", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\keypoint\\core.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.keypoint.core", + "obj": "", + "line": 8, + "column": 0, + "endLine": 8, + "endColumn": 49, + "path": "src\\supervision\\keypoint\\core.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.key_points.core import KeyPoints\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision.keypoint", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\keypoint\\__init__.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.keypoint", + "obj": "", + "line": 8, + "column": 0, + "endLine": 12, + "endColumn": 1, + "path": "src\\supervision\\keypoint\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.key_points.annotators import EdgeAnnotator, VertexAnnotator, VertexLabelAnnotator\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision.keypoint", + "obj": "", + "line": 13, + "column": 0, + "endLine": 13, + "endColumn": 49, + "path": "src\\supervision\\keypoint\\__init__.py", + "symbol": "wrong-import-position", + "message": "Import \"from supervision.key_points.core import KeyPoints\" should be placed at the top of the module", + "message-id": "C0413" + }, + { + "type": "convention", + "module": "supervision.key_points.annotators", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.key_points.annotators", + "obj": "BaseKeyPointAnnotator", + "line": 24, + "column": 0, + "endLine": 24, + "endColumn": 27, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "missing-class-docstring", + "message": "Missing class docstring", + "message-id": "C0115" + }, + { + "type": "convention", + "module": "supervision.key_points.annotators", + "obj": "BaseKeyPointAnnotator.annotate", + "line": 26, + "column": 4, + "endLine": 26, + "endColumn": 16, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.key_points.annotators", + "obj": "VertexLabelAnnotator.get_text_bounding_box", + "line": 908, + "column": 4, + "endLine": 908, + "endColumn": 29, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.key_points.core", + "obj": "", + "line": 101, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "line-too-long", + "message": "Line too long (124/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.key_points.core", + "obj": "", + "line": 102, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "line-too-long", + "message": "Line too long (148/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.key_points.core", + "obj": "", + "line": 119, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "line-too-long", + "message": "Line too long (120/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.key_points.core", + "obj": "", + "line": 136, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "line-too-long", + "message": "Line too long (120/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.key_points.core", + "obj": "", + "line": 169, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "line-too-long", + "message": "Line too long (126/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.key_points.core", + "obj": "", + "line": 170, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "line-too-long", + "message": "Line too long (110/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.key_points.core", + "obj": "", + "line": 189, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "line-too-long", + "message": "Line too long (105/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.key_points.core", + "obj": "", + "line": 493, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "line-too-long", + "message": "Line too long (116/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.key_points.core", + "obj": "", + "line": 639, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "line-too-long", + "message": "Line too long (130/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.key_points.core", + "obj": "", + "line": 777, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "line-too-long", + "message": "Line too long (109/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.key_points.core", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "too-many-lines", + "message": "Too many lines in module (1294/1000)", + "message-id": "C0302" + }, + { + "type": "convention", + "module": "supervision.key_points.core", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.key_points.core", + "obj": "", + "line": 23, + "column": 0, + "endLine": 23, + "endColumn": 7, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "invalid-name", + "message": "Type alias name \"Index1D\" doesn't conform to predefined naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.key_points.core", + "obj": "KeyPoints.__iter__", + "line": 359, + "column": 8, + "endLine": 367, + "endColumn": 13, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "consider-using-enumerate", + "message": "Consider using enumerate instead of iterating with range and len", + "message-id": "C0200" + }, + { + "type": "convention", + "module": "supervision.key_points.skeletons", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\key_points\\skeletons.py", + "symbol": "too-many-lines", + "message": "Too many lines in module (2646/1000)", + "message-id": "C0302" + }, + { + "type": "convention", + "module": "supervision.key_points.skeletons", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\key_points\\skeletons.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.key_points.skeletons", + "obj": "Skeleton", + "line": 6, + "column": 0, + "endLine": 6, + "endColumn": 14, + "path": "src\\supervision\\key_points\\skeletons.py", + "symbol": "missing-class-docstring", + "message": "Missing class docstring", + "message-id": "C0115" + }, + { + "type": "convention", + "module": "supervision.metrics.core", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\metrics\\core.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.metrics.detection", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\metrics\\detection.py", + "symbol": "too-many-lines", + "message": "Too many lines in module (1120/1000)", + "message-id": "C0302" + }, + { + "type": "convention", + "module": "supervision.metrics.detection", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\metrics\\detection.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.metrics.detection", + "obj": "validate_input_tensors", + "line": 192, + "column": 0, + "endLine": 192, + "endColumn": 26, + "path": "src\\supervision\\metrics\\detection.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.metrics.f1_score", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\metrics\\f1_score.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.metrics.f1_score", + "obj": "F1ScoreResult.f1_50", + "line": 546, + "column": 4, + "endLine": 546, + "endColumn": 13, + "path": "src\\supervision\\metrics\\f1_score.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.metrics.f1_score", + "obj": "F1ScoreResult.f1_75", + "line": 550, + "column": 4, + "endLine": 550, + "endColumn": 13, + "path": "src\\supervision\\metrics\\f1_score.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.metrics.f1_score", + "obj": "F1ScoreResult.to_pandas", + "line": 638, + "column": 8, + "endLine": 638, + "endColumn": 27, + "path": "src\\supervision\\metrics\\f1_score.py", + "symbol": "import-outside-toplevel", + "message": "Import outside toplevel (pandas)", + "message-id": "C0415" + }, + { + "type": "convention", + "module": "supervision.metrics.f1_score", + "obj": "F1ScoreResult.plot", + "line": 709, + "column": 12, + "endLine": 709, + "endColumn": 15, + "path": "src\\supervision\\metrics\\f1_score.py", + "symbol": "disallowed-name", + "message": "Disallowed name \"bar\"", + "message-id": "C0104" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_precision", + "obj": "", + "line": 731, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "superfluous-parens", + "message": "Unnecessary parens after 'not' keyword", + "message-id": "C0325" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_precision", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "too-many-lines", + "message": "Too many lines in module (1520/1000)", + "message-id": "C0302" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_precision", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_precision", + "obj": "MeanAveragePrecisionResult", + "line": 78, + "column": 4, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "invalid-name", + "message": "Attribute name \"mAP_scores\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_precision", + "obj": "MeanAveragePrecisionResult.to_pandas", + "line": 153, + "column": 8, + "endLine": 153, + "endColumn": 27, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "import-outside-toplevel", + "message": "Import outside toplevel (pandas)", + "message-id": "C0415" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_precision", + "obj": "MeanAveragePrecisionResult.plot", + "line": 233, + "column": 12, + "endLine": 233, + "endColumn": 15, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "disallowed-name", + "message": "Disallowed name \"bar\"", + "message-id": "C0104" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_precision", + "obj": "EvaluationDataset.empty", + "line": 281, + "column": 4, + "endLine": 281, + "endColumn": 13, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluator._accumulate.compute_average_precision", + "line": 1030, + "column": 12, + "endLine": 1030, + "endColumn": 22, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "invalid-name", + "message": "Variable name \"mAP_scores\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluator._accumulate", + "line": 1043, + "column": 8, + "endLine": 1043, + "endColumn": 28, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "invalid-name", + "message": "Variable name \"mAP_scores_all_sizes\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluator._accumulate", + "line": 1052, + "column": 8, + "endLine": 1052, + "endColumn": 24, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "invalid-name", + "message": "Variable name \"mAP_scores_small\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluator._accumulate", + "line": 1061, + "column": 8, + "endLine": 1061, + "endColumn": 25, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "invalid-name", + "message": "Variable name \"mAP_scores_medium\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluator._accumulate", + "line": 1070, + "column": 8, + "endLine": 1070, + "endColumn": 24, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "invalid-name", + "message": "Variable name \"mAP_scores_large\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluator._pycocotools_summarize._summarize", + "line": 1108, + "column": 12, + "endLine": 1108, + "endColumn": 16, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "invalid-name", + "message": "Variable name \"iStr\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluator._pycocotools_summarize._summarize", + "line": 1109, + "column": 12, + "endLine": 1109, + "endColumn": 20, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "invalid-name", + "message": "Variable name \"titleStr\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluator._pycocotools_summarize._summarize", + "line": 1110, + "column": 12, + "endLine": 1110, + "endColumn": 19, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "invalid-name", + "message": "Variable name \"typeStr\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_precision", + "obj": "MeanAveragePrecision.compute", + "line": 1475, + "column": 8, + "endLine": 1475, + "endColumn": 16, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "invalid-name", + "message": "Variable name \"cocoEval\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_precision", + "obj": "MeanAveragePrecision.compute", + "line": 1481, + "column": 8, + "endLine": 1481, + "endColumn": 17, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "invalid-name", + "message": "Variable name \"mAP_small\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_precision", + "obj": "MeanAveragePrecision.compute", + "line": 1490, + "column": 8, + "endLine": 1490, + "endColumn": 18, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "invalid-name", + "message": "Variable name \"mAP_medium\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_precision", + "obj": "MeanAveragePrecision.compute", + "line": 1499, + "column": 8, + "endLine": 1499, + "endColumn": 17, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "invalid-name", + "message": "Variable name \"mAP_large\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_precision", + "obj": "MeanAveragePrecision.compute", + "line": 1509, + "column": 8, + "endLine": 1509, + "endColumn": 18, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "invalid-name", + "message": "Variable name \"mAP_result\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_recall", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\metrics\\mean_average_recall.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_recall", + "obj": "MeanAverageRecallResult.mAR_at_1", + "line": 64, + "column": 4, + "endLine": 64, + "endColumn": 16, + "path": "src\\supervision\\metrics\\mean_average_recall.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_recall", + "obj": "MeanAverageRecallResult.mAR_at_1", + "line": 64, + "column": 4, + "endLine": 64, + "endColumn": 16, + "path": "src\\supervision\\metrics\\mean_average_recall.py", + "symbol": "invalid-name", + "message": "Attribute name \"mAR_at_1\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_recall", + "obj": "MeanAverageRecallResult.mAR_at_10", + "line": 68, + "column": 4, + "endLine": 68, + "endColumn": 17, + "path": "src\\supervision\\metrics\\mean_average_recall.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_recall", + "obj": "MeanAverageRecallResult.mAR_at_10", + "line": 68, + "column": 4, + "endLine": 68, + "endColumn": 17, + "path": "src\\supervision\\metrics\\mean_average_recall.py", + "symbol": "invalid-name", + "message": "Attribute name \"mAR_at_10\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_recall", + "obj": "MeanAverageRecallResult.mAR_at_100", + "line": 72, + "column": 4, + "endLine": 72, + "endColumn": 18, + "path": "src\\supervision\\metrics\\mean_average_recall.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_recall", + "obj": "MeanAverageRecallResult.mAR_at_100", + "line": 72, + "column": 4, + "endLine": 72, + "endColumn": 18, + "path": "src\\supervision\\metrics\\mean_average_recall.py", + "symbol": "invalid-name", + "message": "Attribute name \"mAR_at_100\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_recall", + "obj": "MeanAverageRecallResult.to_pandas", + "line": 162, + "column": 8, + "endLine": 162, + "endColumn": 27, + "path": "src\\supervision\\metrics\\mean_average_recall.py", + "symbol": "import-outside-toplevel", + "message": "Import outside toplevel (pandas)", + "message-id": "C0415" + }, + { + "type": "convention", + "module": "supervision.metrics.mean_average_recall", + "obj": "MeanAverageRecallResult.plot", + "line": 243, + "column": 12, + "endLine": 243, + "endColumn": 15, + "path": "src\\supervision\\metrics\\mean_average_recall.py", + "symbol": "disallowed-name", + "message": "Disallowed name \"bar\"", + "message-id": "C0104" + }, + { + "type": "convention", + "module": "supervision.metrics.precision", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\metrics\\precision.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.metrics.precision", + "obj": "PrecisionResult.precision_at_50", + "line": 555, + "column": 4, + "endLine": 555, + "endColumn": 23, + "path": "src\\supervision\\metrics\\precision.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.metrics.precision", + "obj": "PrecisionResult.precision_at_75", + "line": 559, + "column": 4, + "endLine": 559, + "endColumn": 23, + "path": "src\\supervision\\metrics\\precision.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.metrics.precision", + "obj": "PrecisionResult.to_pandas", + "line": 651, + "column": 8, + "endLine": 651, + "endColumn": 27, + "path": "src\\supervision\\metrics\\precision.py", + "symbol": "import-outside-toplevel", + "message": "Import outside toplevel (pandas)", + "message-id": "C0415" + }, + { + "type": "convention", + "module": "supervision.metrics.precision", + "obj": "PrecisionResult.plot", + "line": 722, + "column": 12, + "endLine": 722, + "endColumn": 15, + "path": "src\\supervision\\metrics\\precision.py", + "symbol": "disallowed-name", + "message": "Disallowed name \"bar\"", + "message-id": "C0104" + }, + { + "type": "convention", + "module": "supervision.metrics.recall", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.metrics.recall", + "obj": "RecallResult.recall_at_50", + "line": 511, + "column": 4, + "endLine": 511, + "endColumn": 20, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.metrics.recall", + "obj": "RecallResult.recall_at_75", + "line": 515, + "column": 4, + "endLine": 515, + "endColumn": 20, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.metrics.recall", + "obj": "RecallResult.to_pandas", + "line": 605, + "column": 8, + "endLine": 605, + "endColumn": 27, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "import-outside-toplevel", + "message": "Import outside toplevel (pandas)", + "message-id": "C0415" + }, + { + "type": "convention", + "module": "supervision.metrics.recall", + "obj": "RecallResult.plot", + "line": 676, + "column": 12, + "endLine": 676, + "endColumn": 15, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "disallowed-name", + "message": "Disallowed name \"bar\"", + "message-id": "C0104" + }, + { + "type": "convention", + "module": "supervision.metrics", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\metrics\\__init__.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.metrics.utils.object_size", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\metrics\\utils\\object_size.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.metrics.utils.object_size", + "obj": "get_bbox_size_category", + "line": 119, + "column": 4, + "endLine": 119, + "endColumn": 6, + "path": "src\\supervision\\metrics\\utils\\object_size.py", + "symbol": "invalid-name", + "message": "Variable name \"SM\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.utils.object_size", + "obj": "get_bbox_size_category", + "line": 119, + "column": 8, + "endLine": 119, + "endColumn": 10, + "path": "src\\supervision\\metrics\\utils\\object_size.py", + "symbol": "invalid-name", + "message": "Variable name \"LG\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.utils.object_size", + "obj": "get_mask_size_category", + "line": 161, + "column": 4, + "endLine": 161, + "endColumn": 6, + "path": "src\\supervision\\metrics\\utils\\object_size.py", + "symbol": "invalid-name", + "message": "Variable name \"SM\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.utils.object_size", + "obj": "get_mask_size_category", + "line": 161, + "column": 8, + "endLine": 161, + "endColumn": 10, + "path": "src\\supervision\\metrics\\utils\\object_size.py", + "symbol": "invalid-name", + "message": "Variable name \"LG\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.utils.object_size", + "obj": "get_obb_size_category", + "line": 207, + "column": 4, + "endLine": 207, + "endColumn": 6, + "path": "src\\supervision\\metrics\\utils\\object_size.py", + "symbol": "invalid-name", + "message": "Variable name \"SM\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.utils.object_size", + "obj": "get_obb_size_category", + "line": 207, + "column": 8, + "endLine": 207, + "endColumn": 10, + "path": "src\\supervision\\metrics\\utils\\object_size.py", + "symbol": "invalid-name", + "message": "Variable name \"LG\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.metrics.utils.utils", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\metrics\\utils\\utils.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.metrics.utils.utils", + "obj": "ensure_pandas_installed", + "line": 1, + "column": 0, + "endLine": 1, + "endColumn": 27, + "path": "src\\supervision\\metrics\\utils\\utils.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.metrics.utils.utils", + "obj": "ensure_pandas_installed", + "line": 3, + "column": 8, + "endLine": 3, + "endColumn": 21, + "path": "src\\supervision\\metrics\\utils\\utils.py", + "symbol": "import-outside-toplevel", + "message": "Import outside toplevel (pandas)", + "message-id": "C0415" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.core", + "obj": "", + "line": 33, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "line-too-long", + "message": "Line too long (145/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.core", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.core", + "obj": "remove_duplicate_tracks", + "line": 383, + "column": 0, + "endLine": 383, + "endColumn": 27, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.kalman_filter", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\tracker\\byte_tracker\\kalman_filter.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.matching", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\tracker\\byte_tracker\\matching.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.matching", + "obj": "indices_to_matches", + "line": 15, + "column": 0, + "endLine": 15, + "endColumn": 22, + "path": "src\\supervision\\tracker\\byte_tracker\\matching.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.matching", + "obj": "linear_assignment", + "line": 27, + "column": 0, + "endLine": 27, + "endColumn": 21, + "path": "src\\supervision\\tracker\\byte_tracker\\matching.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.matching", + "obj": "iou_distance", + "line": 44, + "column": 0, + "endLine": 44, + "endColumn": 16, + "path": "src\\supervision\\tracker\\byte_tracker\\matching.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.matching", + "obj": "fuse_score", + "line": 65, + "column": 0, + "endLine": 65, + "endColumn": 14, + "path": "src\\supervision\\tracker\\byte_tracker\\matching.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "TrackState", + "line": 12, + "column": 0, + "endLine": 12, + "endColumn": 16, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "missing-class-docstring", + "message": "Missing class docstring", + "message-id": "C0115" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "TrackState", + "line": 13, + "column": 4, + "endLine": 13, + "endColumn": 7, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "invalid-name", + "message": "Class constant name \"New\" doesn't conform to UPPER_CASE naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "TrackState", + "line": 14, + "column": 4, + "endLine": 14, + "endColumn": 11, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "invalid-name", + "message": "Class constant name \"Tracked\" doesn't conform to UPPER_CASE naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "TrackState", + "line": 15, + "column": 4, + "endLine": 15, + "endColumn": 8, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "invalid-name", + "message": "Class constant name \"Lost\" doesn't conform to UPPER_CASE naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "TrackState", + "line": 16, + "column": 4, + "endLine": 16, + "endColumn": 11, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "invalid-name", + "message": "Class constant name \"Removed\" doesn't conform to UPPER_CASE naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "STrack", + "line": 19, + "column": 0, + "endLine": 19, + "endColumn": 12, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "missing-class-docstring", + "message": "Missing class docstring", + "message-id": "C0115" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "STrack.predict", + "line": 51, + "column": 4, + "endLine": 51, + "endColumn": 15, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "STrack.multi_predict", + "line": 63, + "column": 4, + "endLine": 63, + "endColumn": 21, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "STrack.re_activate", + "line": 100, + "column": 4, + "endLine": 100, + "endColumn": 19, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "STrack.to_xyah", + "line": 170, + "column": 4, + "endLine": 170, + "endColumn": 15, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "STrack.tlbr_to_tlwh", + "line": 174, + "column": 4, + "endLine": 174, + "endColumn": 20, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "STrack.tlwh_to_tlbr", + "line": 180, + "column": 4, + "endLine": 180, + "endColumn": 20, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.utils", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\tracker\\byte_tracker\\utils.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.utils", + "obj": "IdCounter", + "line": 4, + "column": 0, + "endLine": 4, + "endColumn": 15, + "path": "src\\supervision\\tracker\\byte_tracker\\utils.py", + "symbol": "missing-class-docstring", + "message": "Missing class docstring", + "message-id": "C0115" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.utils", + "obj": "IdCounter.NO_ID", + "line": 36, + "column": 4, + "endLine": 36, + "endColumn": 13, + "path": "src\\supervision\\tracker\\byte_tracker\\utils.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.tracker.byte_tracker.utils", + "obj": "IdCounter.NO_ID", + "line": 36, + "column": 4, + "endLine": 36, + "endColumn": 13, + "path": "src\\supervision\\tracker\\byte_tracker\\utils.py", + "symbol": "invalid-name", + "message": "Attribute name \"NO_ID\" doesn't conform to snake_case naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.utils.conversion", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\utils\\conversion.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.utils.conversion", + "obj": "ensure_cv2_image_for_annotation", + "line": 48, + "column": 0, + "endLine": 48, + "endColumn": 35, + "path": "src\\supervision\\utils\\conversion.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.utils.conversion", + "obj": "ensure_pil_image_for_annotation", + "line": 110, + "column": 0, + "endLine": 110, + "endColumn": 35, + "path": "src\\supervision\\utils\\conversion.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.utils.conversion", + "obj": "ensure_cv2_image_for_processing", + "line": 121, + "column": 0, + "endLine": 121, + "endColumn": 35, + "path": "src\\supervision\\utils\\conversion.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.utils.file", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\utils\\file.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.utils.file", + "obj": "NumpyJsonEncoder", + "line": 11, + "column": 0, + "endLine": 11, + "endColumn": 22, + "path": "src\\supervision\\utils\\file.py", + "symbol": "missing-class-docstring", + "message": "Missing class docstring", + "message-id": "C0115" + }, + { + "type": "convention", + "module": "supervision.utils.image", + "obj": "", + "line": 75, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\utils\\image.py", + "symbol": "line-too-long", + "message": "Line too long (125/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.utils.image", + "obj": "", + "line": 133, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\utils\\image.py", + "symbol": "line-too-long", + "message": "Line too long (127/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.utils.image", + "obj": "", + "line": 191, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\utils\\image.py", + "symbol": "line-too-long", + "message": "Line too long (129/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.utils.image", + "obj": "", + "line": 253, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\utils\\image.py", + "symbol": "line-too-long", + "message": "Line too long (135/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.utils.image", + "obj": "", + "line": 390, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\utils\\image.py", + "symbol": "line-too-long", + "message": "Line too long (125/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.utils.image", + "obj": "", + "line": 428, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\utils\\image.py", + "symbol": "line-too-long", + "message": "Line too long (135/100)", + "message-id": "C0301" + }, + { + "type": "convention", + "module": "supervision.utils.image", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\utils\\image.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.utils.image", + "obj": "ImageSink", + "line": 481, + "column": 0, + "endLine": 481, + "endColumn": 15, + "path": "src\\supervision\\utils\\image.py", + "symbol": "missing-class-docstring", + "message": "Missing class docstring", + "message-id": "C0115" + }, + { + "type": "convention", + "module": "supervision.utils.internal", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\utils\\internal.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.utils.internal", + "obj": "classproperty", + "line": 133, + "column": 0, + "endLine": 133, + "endColumn": 19, + "path": "src\\supervision\\utils\\internal.py", + "symbol": "invalid-name", + "message": "Class name \"classproperty\" doesn't conform to PascalCase naming style", + "message-id": "C0103" + }, + { + "type": "convention", + "module": "supervision.utils.iterables", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\utils\\iterables.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.utils.logger", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\utils\\logger.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.utils.notebook", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\utils\\notebook.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.utils.video", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\utils\\video.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.utils.video", + "obj": "VideoInfo.from_video_path", + "line": 59, + "column": 4, + "endLine": 59, + "endColumn": 23, + "path": "src\\supervision\\utils\\video.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.utils.video", + "obj": "VideoInfo.resolution_wh", + "line": 72, + "column": 4, + "endLine": 72, + "endColumn": 21, + "path": "src\\supervision\\utils\\video.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.validators", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "missing-module-docstring", + "message": "Missing module docstring", + "message-id": "C0114" + }, + { + "type": "convention", + "module": "supervision.validators", + "obj": "validate_xyxy", + "line": 33, + "column": 0, + "endLine": 33, + "endColumn": 17, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.validators", + "obj": "validate_mask", + "line": 80, + "column": 0, + "endLine": 80, + "endColumn": 17, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.validators", + "obj": "validate_class_id", + "line": 102, + "column": 0, + "endLine": 102, + "endColumn": 21, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.validators", + "obj": "validate_confidence", + "line": 125, + "column": 0, + "endLine": 125, + "endColumn": 23, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.validators", + "obj": "validate_key_point_confidence", + "line": 156, + "column": 0, + "endLine": 156, + "endColumn": 33, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.validators", + "obj": "validate_keypoint_confidence", + "line": 165, + "column": 0, + "endLine": 165, + "endColumn": 32, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.validators", + "obj": "validate_tracker_id", + "line": 187, + "column": 0, + "endLine": 187, + "endColumn": 23, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.validators", + "obj": "validate_data", + "line": 212, + "column": 0, + "endLine": 212, + "endColumn": 17, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.validators", + "obj": "validate_xy", + "line": 232, + "column": 0, + "endLine": 232, + "endColumn": 15, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.validators", + "obj": "validate_detections_fields", + "line": 281, + "column": 0, + "endLine": 281, + "endColumn": 30, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.validators", + "obj": "validate_key_points_fields", + "line": 317, + "column": 0, + "endLine": 317, + "endColumn": 30, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.validators", + "obj": "validate_keypoints_fields", + "line": 328, + "column": 0, + "endLine": 328, + "endColumn": 29, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + }, + { + "type": "convention", + "module": "supervision.validators", + "obj": "validate_resolution", + "line": 362, + "column": 0, + "endLine": 362, + "endColumn": 23, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "missing-function-docstring", + "message": "Missing function or method docstring", + "message-id": "C0116" + } +] \ No newline at end of file diff --git a/metrics-before-pylint/pylint_distribuicao_categorias_antes.json b/metrics-before-pylint/pylint_distribuicao_categorias_antes.json new file mode 100644 index 0000000000..225e6110ac --- /dev/null +++ b/metrics-before-pylint/pylint_distribuicao_categorias_antes.json @@ -0,0 +1,22 @@ +[ + { + "categoria": "convention", + "ocorrencias": 373, + "percentual": 38.1 + }, + { + "categoria": "refactor", + "ocorrencias": 303, + "percentual": 30.95 + }, + { + "categoria": "error", + "ocorrencias": 202, + "percentual": 20.63 + }, + { + "categoria": "warning", + "ocorrencias": 101, + "percentual": 10.32 + } +] \ No newline at end of file diff --git a/metrics-before-pylint/pylint_error_antes.json b/metrics-before-pylint/pylint_error_antes.json new file mode 100644 index 0000000000..43762072bf --- /dev/null +++ b/metrics-before-pylint/pylint_error_antes.json @@ -0,0 +1,2628 @@ +[ + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "", + "line": 80, + "column": 11, + "endLine": 80, + "endColumn": 35, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'FONT_HERSHEY_SIMPLEX' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "BoxAnnotator.annotate", + "line": 267, + "column": 12, + "endLine": 267, + "endColumn": 25, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'rectangle' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "OrientedBoxAnnotator.annotate", + "line": 359, + "column": 12, + "endLine": 359, + "endColumn": 28, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'drawContours' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "MaskAnnotator.annotate", + "line": 505, + "column": 8, + "endLine": 505, + "endColumn": 23, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'addWeighted' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "ColorAnnotator.annotate", + "line": 684, + "column": 12, + "endLine": 684, + "endColumn": 25, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'rectangle' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "ColorAnnotator.annotate", + "line": 692, + "column": 8, + "endLine": 692, + "endColumn": 23, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'addWeighted' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "HaloAnnotator.annotate", + "line": 786, + "column": 23, + "endLine": 786, + "endColumn": 31, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'blur' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "HaloAnnotator.annotate", + "line": 788, + "column": 15, + "endLine": 788, + "endColumn": 27, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'cvtColor' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "HaloAnnotator.annotate", + "line": 788, + "column": 42, + "endLine": 788, + "endColumn": 60, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'COLOR_BGR2GRAY' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "EllipseAnnotator.annotate", + "line": 885, + "column": 12, + "endLine": 885, + "endColumn": 23, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'ellipse' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "EllipseAnnotator.annotate", + "line": 894, + "column": 25, + "endLine": 894, + "endColumn": 35, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'LINE_4' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "BoxCornerAnnotator.annotate", + "line": 983, + "column": 16, + "endLine": 983, + "endColumn": 24, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'line' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "BoxCornerAnnotator.annotate", + "line": 988, + "column": 16, + "endLine": 988, + "endColumn": 24, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'line' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "CircleAnnotator.annotate", + "line": 1075, + "column": 12, + "endLine": 1075, + "endColumn": 22, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'circle' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "DotAnnotator.annotate", + "line": 1177, + "column": 12, + "endLine": 1177, + "endColumn": 22, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'circle' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "DotAnnotator.annotate", + "line": 1187, + "column": 16, + "endLine": 1187, + "endColumn": 26, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'circle' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "LabelAnnotator._get_label_properties", + "line": 1354, + "column": 35, + "endLine": 1354, + "endColumn": 50, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'getTextSize' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "LabelAnnotator._draw_labels", + "line": 1437, + "column": 34, + "endLine": 1437, + "endColumn": 49, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'getTextSize' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "LabelAnnotator._draw_labels", + "line": 1446, + "column": 30, + "endLine": 1446, + "endColumn": 45, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'getTextSize' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "LabelAnnotator._draw_labels", + "line": 1456, + "column": 16, + "endLine": 1456, + "endColumn": 27, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'putText' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "LabelAnnotator._draw_labels", + "line": 1464, + "column": 29, + "endLine": 1464, + "endColumn": 40, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'LINE_AA' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "LabelAnnotator.draw_rounded_rectangle", + "line": 1494, + "column": 12, + "endLine": 1494, + "endColumn": 25, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'rectangle' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "LabelAnnotator.draw_rounded_rectangle", + "line": 1502, + "column": 12, + "endLine": 1502, + "endColumn": 22, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'circle' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "IconAnnotator.annotate", + "line": 1880, + "column": 23, + "endLine": 1880, + "endColumn": 57, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-function-args", + "message": "Too many positional arguments for classmethod call", + "message-id": "E1121" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "IconAnnotator._load_icon", + "line": 1885, + "column": 15, + "endLine": 1885, + "endColumn": 25, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'imread' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "IconAnnotator._load_icon", + "line": 1885, + "column": 37, + "endLine": 1885, + "endColumn": 57, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'IMREAD_UNCHANGED' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "BlurAnnotator.annotate", + "line": 1968, + "column": 18, + "endLine": 1968, + "endColumn": 26, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'blur' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "TraceAnnotator.annotate", + "line": 2109, + "column": 16, + "endLine": 2109, + "endColumn": 29, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'polylines' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "HeatMapAnnotator.annotate", + "line": 2206, + "column": 12, + "endLine": 2206, + "endColumn": 22, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'circle' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "HeatMapAnnotator.annotate", + "line": 2220, + "column": 19, + "endLine": 2220, + "endColumn": 27, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'blur' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "HeatMapAnnotator.annotate", + "line": 2223, + "column": 15, + "endLine": 2223, + "endColumn": 27, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'cvtColor' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "HeatMapAnnotator.annotate", + "line": 2223, + "column": 33, + "endLine": 2223, + "endColumn": 50, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'COLOR_HSV2BGR' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "HeatMapAnnotator.annotate", + "line": 2224, + "column": 15, + "endLine": 2224, + "endColumn": 27, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'cvtColor' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "HeatMapAnnotator.annotate", + "line": 2224, + "column": 61, + "endLine": 2224, + "endColumn": 79, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'COLOR_GRAY2BGR' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "HeatMapAnnotator.annotate", + "line": 2225, + "column": 22, + "endLine": 2225, + "endColumn": 37, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'addWeighted' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "PixelateAnnotator.annotate", + "line": 2305, + "column": 42, + "endLine": 2305, + "endColumn": 50, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'mean' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "PixelateAnnotator.annotate", + "line": 2308, + "column": 42, + "endLine": 2308, + "endColumn": 50, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'mean' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "PixelateAnnotator.annotate", + "line": 2311, + "column": 28, + "endLine": 2311, + "endColumn": 38, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'resize' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "PixelateAnnotator.annotate", + "line": 2314, + "column": 30, + "endLine": 2314, + "endColumn": 40, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'resize' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "PixelateAnnotator.annotate", + "line": 2317, + "column": 30, + "endLine": 2317, + "endColumn": 47, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'INTER_NEAREST' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "TriangleAnnotator.annotate", + "line": 2427, + "column": 12, + "endLine": 2427, + "endColumn": 24, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'fillPoly' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "TriangleAnnotator.annotate", + "line": 2437, + "column": 16, + "endLine": 2437, + "endColumn": 29, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'polylines' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "RoundBoxAnnotator.annotate", + "line": 2561, + "column": 16, + "endLine": 2561, + "endColumn": 27, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'ellipse' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "RoundBoxAnnotator.annotate", + "line": 2572, + "column": 16, + "endLine": 2572, + "endColumn": 24, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'line' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "PercentageBarAnnotator.annotate", + "line": 2702, + "column": 12, + "endLine": 2702, + "endColumn": 25, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'rectangle' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "PercentageBarAnnotator.annotate", + "line": 2712, + "column": 12, + "endLine": 2712, + "endColumn": 25, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'rectangle' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "CropAnnotator.annotate", + "line": 2884, + "column": 20, + "endLine": 2884, + "endColumn": 85, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "redundant-keyword-arg", + "message": "Argument 'image' passed by position and keyword in classmethod call", + "message-id": "E1124" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "CropAnnotator.annotate", + "line": 2893, + "column": 12, + "endLine": 2893, + "endColumn": 25, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'rectangle' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "BackgroundOverlayAnnotator.annotate", + "line": 3016, + "column": 8, + "endLine": 3016, + "endColumn": 23, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'addWeighted' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.annotators.core", + "obj": "ComparisonAnnotator._draw_labels", + "line": 3256, + "column": 26, + "endLine": 3256, + "endColumn": 41, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'getTextSize' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.dataset.core", + "obj": "DetectionDataset._get_image", + "line": 105, + "column": 16, + "endLine": 105, + "endColumn": 26, + "path": "src\\supervision\\dataset\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'imread' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.dataset.core", + "obj": "ClassificationDataset._get_image", + "line": 770, + "column": 16, + "endLine": 770, + "endColumn": 26, + "path": "src\\supervision\\dataset\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'imread' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.dataset.core", + "obj": "ClassificationDataset.as_folder_structure", + "line": 919, + "column": 12, + "endLine": 919, + "endColumn": 23, + "path": "src\\supervision\\dataset\\core.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'imwrite' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.dataset.utils", + "obj": "save_dataset_images", + "line": 134, + "column": 12, + "endLine": 134, + "endColumn": 23, + "path": "src\\supervision\\dataset\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'imwrite' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.dataset.formats.pascal_voc", + "obj": "load_pascal_voc_annotations", + "line": 223, + "column": 16, + "endLine": 223, + "endColumn": 26, + "path": "src\\supervision\\dataset\\formats\\pascal_voc.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'imread' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.dataset.formats.yolo", + "obj": "yolo_annotations_to_detections", + "line": 172, + "column": 19, + "endLine": 172, + "endColumn": 54, + "path": "src\\supervision\\dataset\\formats\\yolo.py", + "symbol": "too-many-function-args", + "message": "Too many positional arguments for method call", + "message-id": "E1121" + }, + { + "type": "error", + "module": "supervision.detection.compact_mask", + "obj": "_resize_crop", + "line": 381, + "column": 14, + "endLine": 381, + "endColumn": 24, + "path": "src\\supervision\\detection\\compact_mask.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'resize' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.compact_mask", + "obj": "_resize_crop", + "line": 384, + "column": 22, + "endLine": 384, + "endColumn": 39, + "path": "src\\supervision\\detection\\compact_mask.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'INTER_NEAREST' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.core", + "obj": "merge_inner_detection_object_pair", + "line": 2815, + "column": 13, + "endLine": 2815, + "endColumn": 30, + "path": "src\\supervision\\detection\\core.py", + "symbol": "no-member", + "message": "Module 'supervision.detection.core' has no 'xyxy' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.core", + "obj": "merge_inner_detection_object_pair", + "line": 2817, + "column": 7, + "endLine": 2817, + "endColumn": 30, + "path": "src\\supervision\\detection\\core.py", + "symbol": "no-member", + "message": "Module 'supervision.detection.core' has no 'confidence' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.core", + "obj": "merge_inner_detection_object_pair", + "line": 2820, + "column": 15, + "endLine": 2820, + "endColumn": 38, + "path": "src\\supervision\\detection\\core.py", + "symbol": "no-member", + "message": "Module 'supervision.detection.core' has no 'confidence' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.core", + "obj": "merge_inner_detection_object_pair", + "line": 2825, + "column": 31, + "endLine": 2825, + "endColumn": 54, + "path": "src\\supervision\\detection\\core.py", + "symbol": "no-member", + "message": "Module 'supervision.detection.core' has no 'confidence' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.core", + "obj": "merge_inner_detection_object_pair", + "line": 2834, + "column": 7, + "endLine": 2834, + "endColumn": 24, + "path": "src\\supervision\\detection\\core.py", + "symbol": "no-member", + "message": "Module 'supervision.detection.core' has no 'mask' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.core", + "obj": "merge_inner_detection_object_pair", + "line": 2837, + "column": 36, + "endLine": 2837, + "endColumn": 53, + "path": "src\\supervision\\detection\\core.py", + "symbol": "no-member", + "message": "Module 'supervision.detection.core' has no 'mask' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.core", + "obj": "merge_inner_detection_object_pair", + "line": 2839, + "column": 7, + "endLine": 2839, + "endColumn": 30, + "path": "src\\supervision\\detection\\core.py", + "symbol": "no-member", + "message": "Module 'supervision.detection.core' has no 'confidence' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.core", + "obj": "merge_inner_detection_object_pair", + "line": 2841, + "column": 9, + "endLine": 2841, + "endColumn": 32, + "path": "src\\supervision\\detection\\core.py", + "symbol": "no-member", + "message": "Module 'supervision.detection.core' has no 'confidence' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.core", + "obj": "merge_inner_detection_object_pair", + "line": 2846, + "column": 31, + "endLine": 2846, + "endColumn": 52, + "path": "src\\supervision\\detection\\core.py", + "symbol": "no-member", + "message": "Module 'supervision.detection.core' has no 'metadata' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.core", + "obj": "merge_inner_detections_objects", + "line": 2873, + "column": 19, + "endLine": 2873, + "endColumn": 29, + "path": "src\\supervision\\detection\\core.py", + "symbol": "unsubscriptable-object", + "message": "Value 'detections' is unsubscriptable", + "message-id": "E1136" + }, + { + "type": "error", + "module": "supervision.detection.core", + "obj": "merge_inner_detections_objects", + "line": 2874, + "column": 24, + "endLine": 2874, + "endColumn": 34, + "path": "src\\supervision\\detection\\core.py", + "symbol": "unsubscriptable-object", + "message": "Value 'detections' is unsubscriptable", + "message-id": "E1136" + }, + { + "type": "error", + "module": "supervision.detection.core", + "obj": "merge_inner_detections_objects", + "line": 2883, + "column": 23, + "endLine": 2883, + "endColumn": 84, + "path": "src\\supervision\\detection\\core.py", + "symbol": "too-many-function-args", + "message": "Too many positional arguments for classmethod call", + "message-id": "E1121" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator.annotate", + "line": 402, + "column": 8, + "endLine": 402, + "endColumn": 16, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'line' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator.annotate", + "line": 408, + "column": 21, + "endLine": 408, + "endColumn": 32, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'LINE_AA' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator.annotate", + "line": 411, + "column": 8, + "endLine": 411, + "endColumn": 18, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'circle' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator.annotate", + "line": 417, + "column": 21, + "endLine": 417, + "endColumn": 32, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'LINE_AA' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator.annotate", + "line": 419, + "column": 8, + "endLine": 419, + "endColumn": 18, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'circle' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator.annotate", + "line": 425, + "column": 21, + "endLine": 425, + "endColumn": 32, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'LINE_AA' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator._draw_basic_label", + "line": 566, + "column": 25, + "endLine": 566, + "endColumn": 40, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'getTextSize' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator._draw_basic_label", + "line": 567, + "column": 18, + "endLine": 567, + "endColumn": 42, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'FONT_HERSHEY_SIMPLEX' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator._draw_oriented_label", + "line": 623, + "column": 34, + "endLine": 623, + "endColumn": 49, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'getTextSize' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator._draw_oriented_label", + "line": 624, + "column": 18, + "endLine": 624, + "endColumn": 42, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'FONT_HERSHEY_SIMPLEX' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator._draw_oriented_label", + "line": 635, + "column": 16, + "endLine": 635, + "endColumn": 63, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "too-many-function-args", + "message": "Too many positional arguments for classmethod call", + "message-id": "E1121" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator._make_label_image", + "line": 668, + "column": 34, + "endLine": 668, + "endColumn": 49, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'getTextSize' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator._make_label_image", + "line": 669, + "column": 18, + "endLine": 669, + "endColumn": 42, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'FONT_HERSHEY_SIMPLEX' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator._make_label_image", + "line": 702, + "column": 25, + "endLine": 702, + "endColumn": 33, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'flip' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator._make_label_image", + "line": 705, + "column": 26, + "endLine": 705, + "endColumn": 49, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'getRotationMatrix2D' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator._make_label_image", + "line": 708, + "column": 21, + "endLine": 708, + "endColumn": 35, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'warpAffine' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotatorMulticlass.annotate", + "line": 817, + "column": 38, + "endLine": 817, + "endColumn": 53, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'getTextSize' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotatorMulticlass.annotate", + "line": 818, + "column": 22, + "endLine": 818, + "endColumn": 46, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'FONT_HERSHEY_SIMPLEX' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotatorMulticlass.annotate", + "line": 855, + "column": 29, + "endLine": 855, + "endColumn": 44, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'getTextSize' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotatorMulticlass.annotate", + "line": 856, + "column": 22, + "endLine": 856, + "endColumn": 46, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'FONT_HERSHEY_SIMPLEX' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotatorMulticlass.annotate", + "line": 862, + "column": 12, + "endLine": 862, + "endColumn": 23, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'putText' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotatorMulticlass.annotate", + "line": 866, + "column": 25, + "endLine": 866, + "endColumn": 49, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'FONT_HERSHEY_SIMPLEX' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotatorMulticlass.annotate", + "line": 870, + "column": 25, + "endLine": 870, + "endColumn": 36, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'LINE_AA' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.vlm", + "obj": "from_florence_2", + "line": 539, + "column": 19, + "endLine": 539, + "endColumn": 45, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "too-many-function-args", + "message": "Too many positional arguments for method call", + "message-id": "E1121" + }, + { + "type": "error", + "module": "supervision.detection.vlm", + "obj": "from_google_gemini_2_0", + "line": 661, + "column": 11, + "endLine": 665, + "endColumn": 5, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "redundant-keyword-arg", + "message": "Argument 'resolution_wh' passed by position and keyword in classmethod call", + "message-id": "E1124" + }, + { + "type": "error", + "module": "supervision.detection.vlm", + "obj": "from_google_gemini_2_5", + "line": 761, + "column": 24, + "endLine": 765, + "endColumn": 9, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "redundant-keyword-arg", + "message": "Argument 'resolution_wh' passed by position and keyword in classmethod call", + "message-id": "E1124" + }, + { + "type": "error", + "module": "supervision.detection.vlm", + "obj": "from_moondream", + "line": 914, + "column": 8, + "endLine": 917, + "endColumn": 9, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "redundant-keyword-arg", + "message": "Argument 'resolution_wh' passed by position and keyword in classmethod call", + "message-id": "E1124" + }, + { + "type": "error", + "module": "supervision.detection.tools.polygon_zone", + "obj": "PolygonZoneAnnotator.__init__", + "line": 150, + "column": 20, + "endLine": 150, + "endColumn": 44, + "path": "src\\supervision\\detection\\tools\\polygon_zone.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'FONT_HERSHEY_SIMPLEX' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.utils.boxes", + "obj": "denormalize_boxes", + "line": 156, + "column": 13, + "endLine": 156, + "endColumn": 22, + "path": "src\\supervision\\detection\\utils\\boxes.py", + "symbol": "no-member", + "message": "Module 'supervision.detection.utils.boxes' has no 'copy' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.utils.converters", + "obj": "polygon_to_mask", + "line": 48, + "column": 4, + "endLine": 48, + "endColumn": 16, + "path": "src\\supervision\\detection\\utils\\converters.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'fillPoly' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.utils.converters", + "obj": "mask_to_polygons", + "line": 322, + "column": 18, + "endLine": 322, + "endColumn": 34, + "path": "src\\supervision\\detection\\utils\\converters.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'findContours' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.utils.converters", + "obj": "mask_to_polygons", + "line": 323, + "column": 31, + "endLine": 323, + "endColumn": 44, + "path": "src\\supervision\\detection\\utils\\converters.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'RETR_TREE' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.utils.converters", + "obj": "mask_to_polygons", + "line": 323, + "column": 46, + "endLine": 323, + "endColumn": 69, + "path": "src\\supervision\\detection\\utils\\converters.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'CHAIN_APPROX_SIMPLE' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.utils.internal", + "obj": "extract_ultralytics_masks", + "line": 47, + "column": 19, + "endLine": 47, + "endColumn": 29, + "path": "src\\supervision\\detection\\utils\\internal.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'resize' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.utils.internal", + "obj": "process_roboflow_result", + "line": 128, + "column": 27, + "endLine": 128, + "endColumn": 37, + "path": "src\\supervision\\detection\\utils\\internal.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'resize' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.utils.internal", + "obj": "process_roboflow_result", + "line": 131, + "column": 38, + "endLine": 131, + "endColumn": 55, + "path": "src\\supervision\\detection\\utils\\internal.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'INTER_NEAREST' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "oriented_box_iou_batch", + "line": 545, + "column": 26, + "endLine": 545, + "endColumn": 51, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'intersectConvexConvex' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.utils.masks", + "obj": "contains_holes", + "line": 191, + "column": 19, + "endLine": 191, + "endColumn": 35, + "path": "src\\supervision\\detection\\utils\\masks.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'findContours' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.utils.masks", + "obj": "contains_holes", + "line": 191, + "column": 48, + "endLine": 191, + "endColumn": 62, + "path": "src\\supervision\\detection\\utils\\masks.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'RETR_CCOMP' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.utils.masks", + "obj": "contains_holes", + "line": 191, + "column": 64, + "endLine": 191, + "endColumn": 87, + "path": "src\\supervision\\detection\\utils\\masks.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'CHAIN_APPROX_SIMPLE' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.utils.masks", + "obj": "contains_multiple_segments", + "line": 257, + "column": 26, + "endLine": 257, + "endColumn": 49, + "path": "src\\supervision\\detection\\utils\\masks.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'connectedComponents' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.utils.masks", + "obj": "filter_segments_by_distance", + "line": 384, + "column": 43, + "endLine": 384, + "endColumn": 75, + "path": "src\\supervision\\detection\\utils\\masks.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'connectedComponentsWithStats' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.utils.masks", + "obj": "filter_segments_by_distance", + "line": 391, + "column": 22, + "endLine": 391, + "endColumn": 38, + "path": "src\\supervision\\detection\\utils\\masks.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'CC_STAT_AREA' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.utils.masks", + "obj": "filter_segments_by_distance", + "line": 413, + "column": 29, + "endLine": 413, + "endColumn": 50, + "path": "src\\supervision\\detection\\utils\\masks.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'distanceTransform' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.utils.masks", + "obj": "filter_segments_by_distance", + "line": 413, + "column": 60, + "endLine": 413, + "endColumn": 71, + "path": "src\\supervision\\detection\\utils\\masks.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'DIST_L2' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.utils.polygons", + "obj": "filter_polygons_by_area", + "line": 35, + "column": 12, + "endLine": 35, + "endColumn": 27, + "path": "src\\supervision\\detection\\utils\\polygons.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'contourArea' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.detection.utils.polygons", + "obj": "approximate_polygon", + "line": 109, + "column": 31, + "endLine": 109, + "endColumn": 47, + "path": "src\\supervision\\detection\\utils\\polygons.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'approxPolyDP' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.draw.color", + "obj": "Color.WHITE", + "line": 356, + "column": 4, + "endLine": 356, + "endColumn": 13, + "path": "src\\supervision\\draw\\color.py", + "symbol": "no-self-argument", + "message": "Method 'WHITE' should have \"self\" as first argument", + "message-id": "E0213" + }, + { + "type": "error", + "module": "supervision.draw.color", + "obj": "Color.BLACK", + "line": 360, + "column": 4, + "endLine": 360, + "endColumn": 13, + "path": "src\\supervision\\draw\\color.py", + "symbol": "no-self-argument", + "message": "Method 'BLACK' should have \"self\" as first argument", + "message-id": "E0213" + }, + { + "type": "error", + "module": "supervision.draw.color", + "obj": "Color.GREY", + "line": 364, + "column": 4, + "endLine": 364, + "endColumn": 12, + "path": "src\\supervision\\draw\\color.py", + "symbol": "no-self-argument", + "message": "Method 'GREY' should have \"self\" as first argument", + "message-id": "E0213" + }, + { + "type": "error", + "module": "supervision.draw.color", + "obj": "Color.RED", + "line": 368, + "column": 4, + "endLine": 368, + "endColumn": 11, + "path": "src\\supervision\\draw\\color.py", + "symbol": "no-self-argument", + "message": "Method 'RED' should have \"self\" as first argument", + "message-id": "E0213" + }, + { + "type": "error", + "module": "supervision.draw.color", + "obj": "Color.GREEN", + "line": 372, + "column": 4, + "endLine": 372, + "endColumn": 13, + "path": "src\\supervision\\draw\\color.py", + "symbol": "no-self-argument", + "message": "Method 'GREEN' should have \"self\" as first argument", + "message-id": "E0213" + }, + { + "type": "error", + "module": "supervision.draw.color", + "obj": "Color.BLUE", + "line": 376, + "column": 4, + "endLine": 376, + "endColumn": 12, + "path": "src\\supervision\\draw\\color.py", + "symbol": "no-self-argument", + "message": "Method 'BLUE' should have \"self\" as first argument", + "message-id": "E0213" + }, + { + "type": "error", + "module": "supervision.draw.color", + "obj": "Color.YELLOW", + "line": 380, + "column": 4, + "endLine": 380, + "endColumn": 14, + "path": "src\\supervision\\draw\\color.py", + "symbol": "no-self-argument", + "message": "Method 'YELLOW' should have \"self\" as first argument", + "message-id": "E0213" + }, + { + "type": "error", + "module": "supervision.draw.color", + "obj": "Color.ROBOFLOW", + "line": 384, + "column": 4, + "endLine": 384, + "endColumn": 16, + "path": "src\\supervision\\draw\\color.py", + "symbol": "no-self-argument", + "message": "Method 'ROBOFLOW' should have \"self\" as first argument", + "message-id": "E0213" + }, + { + "type": "error", + "module": "supervision.draw.color", + "obj": "ColorPalette.DEFAULT", + "line": 410, + "column": 4, + "endLine": 410, + "endColumn": 15, + "path": "src\\supervision\\draw\\color.py", + "symbol": "no-self-argument", + "message": "Method 'DEFAULT' should have \"self\" as first argument", + "message-id": "E0213" + }, + { + "type": "error", + "module": "supervision.draw.color", + "obj": "ColorPalette.ROBOFLOW", + "line": 431, + "column": 4, + "endLine": 431, + "endColumn": 16, + "path": "src\\supervision\\draw\\color.py", + "symbol": "no-self-argument", + "message": "Method 'ROBOFLOW' should have \"self\" as first argument", + "message-id": "E0213" + }, + { + "type": "error", + "module": "supervision.draw.color", + "obj": "ColorPalette.LEGACY", + "line": 452, + "column": 4, + "endLine": 452, + "endColumn": 14, + "path": "src\\supervision\\draw\\color.py", + "symbol": "no-self-argument", + "message": "Method 'LEGACY' should have \"self\" as first argument", + "message-id": "E0213" + }, + { + "type": "error", + "module": "supervision.draw.utils", + "obj": "draw_line", + "line": 34, + "column": 4, + "endLine": 34, + "endColumn": 12, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'line' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.draw.utils", + "obj": "draw_rectangle", + "line": 62, + "column": 4, + "endLine": 62, + "endColumn": 17, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'rectangle' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.draw.utils", + "obj": "draw_filled_rectangle", + "line": 91, + "column": 8, + "endLine": 91, + "endColumn": 21, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'rectangle' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.draw.utils", + "obj": "draw_filled_rectangle", + "line": 100, + "column": 8, + "endLine": 100, + "endColumn": 21, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'rectangle' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.draw.utils", + "obj": "draw_filled_rectangle", + "line": 107, + "column": 8, + "endLine": 107, + "endColumn": 23, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'addWeighted' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.draw.utils", + "obj": "draw_rounded_rectangle", + "line": 148, + "column": 8, + "endLine": 148, + "endColumn": 21, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'rectangle' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.draw.utils", + "obj": "draw_rounded_rectangle", + "line": 156, + "column": 8, + "endLine": 156, + "endColumn": 18, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'circle' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.draw.utils", + "obj": "draw_polygon", + "line": 183, + "column": 4, + "endLine": 183, + "endColumn": 17, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'polylines' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.draw.utils", + "obj": "draw_filled_polygon", + "line": 207, + "column": 8, + "endLine": 207, + "endColumn": 20, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'fillPoly' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.draw.utils", + "obj": "draw_filled_polygon", + "line": 210, + "column": 8, + "endLine": 210, + "endColumn": 20, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'fillPoly' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.draw.utils", + "obj": "draw_filled_polygon", + "line": 211, + "column": 8, + "endLine": 211, + "endColumn": 23, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'addWeighted' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.draw.utils", + "obj": "draw_text", + "line": 226, + "column": 21, + "endLine": 226, + "endColumn": 45, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'FONT_HERSHEY_SIMPLEX' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.draw.utils", + "obj": "draw_text", + "line": 267, + "column": 30, + "endLine": 267, + "endColumn": 45, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'getTextSize' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.draw.utils", + "obj": "draw_text", + "line": 288, + "column": 4, + "endLine": 288, + "endColumn": 15, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'putText' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.draw.utils", + "obj": "draw_text", + "line": 296, + "column": 17, + "endLine": 296, + "endColumn": 28, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'LINE_AA' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.draw.utils", + "obj": "draw_image", + "line": 328, + "column": 16, + "endLine": 328, + "endColumn": 26, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'imread' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.draw.utils", + "obj": "draw_image", + "line": 328, + "column": 34, + "endLine": 328, + "endColumn": 54, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'IMREAD_UNCHANGED' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.draw.utils", + "obj": "draw_image", + "line": 348, + "column": 12, + "endLine": 348, + "endColumn": 22, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'resize' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.draw.utils", + "obj": "draw_image", + "line": 355, + "column": 19, + "endLine": 355, + "endColumn": 38, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'convertScaleAbs' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.draw.utils", + "obj": "draw_image", + "line": 360, + "column": 18, + "endLine": 360, + "endColumn": 37, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'convertScaleAbs' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.key_points.annotators", + "obj": "VertexAnnotator.annotate", + "line": 100, + "column": 16, + "endLine": 100, + "endColumn": 26, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'circle' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.key_points.annotators", + "obj": "EdgeAnnotator.annotate", + "line": 250, + "column": 16, + "endLine": 250, + "endColumn": 24, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'line' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.key_points.annotators", + "obj": "VertexEllipseAreaAnnotator.annotate", + "line": 455, + "column": 16, + "endLine": 455, + "endColumn": 27, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'ellipse' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.key_points.annotators", + "obj": "VertexEllipseAreaAnnotator.annotate", + "line": 464, + "column": 29, + "endLine": 464, + "endColumn": 40, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'LINE_AA' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.key_points.annotators", + "obj": "VertexEllipseAreaAnnotator.annotate", + "line": 467, + "column": 8, + "endLine": 467, + "endColumn": 23, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'addWeighted' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.key_points.annotators", + "obj": "VertexEllipseOutlineAnnotator.annotate", + "line": 553, + "column": 16, + "endLine": 553, + "endColumn": 27, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'ellipse' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.key_points.annotators", + "obj": "VertexEllipseOutlineAnnotator.annotate", + "line": 562, + "column": 29, + "endLine": 562, + "endColumn": 40, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'LINE_AA' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.key_points.annotators", + "obj": "VertexLabelAnnotator.annotate", + "line": 828, + "column": 15, + "endLine": 828, + "endColumn": 39, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'FONT_HERSHEY_SIMPLEX' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.key_points.annotators", + "obj": "VertexLabelAnnotator.annotate", + "line": 894, + "column": 12, + "endLine": 894, + "endColumn": 23, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'putText' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.key_points.annotators", + "obj": "VertexLabelAnnotator.annotate", + "line": 902, + "column": 25, + "endLine": 902, + "endColumn": 36, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'LINE_AA' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.key_points.annotators", + "obj": "VertexLabelAnnotator.get_text_bounding_box", + "line": 915, + "column": 25, + "endLine": 915, + "endColumn": 40, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'getTextSize' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.key_points.core", + "obj": "KeyPoints.from_mediapipe", + "line": 573, + "column": 15, + "endLine": 573, + "endColumn": 22, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "possibly-used-before-assignment", + "message": "Possibly using variable 'results' before assignment", + "message-id": "E0606" + }, + { + "type": "error", + "module": "supervision.metrics.f1_score", + "obj": "F1Score._compute_f1_for_classes", + "line": 312, + "column": 15, + "endLine": 312, + "endColumn": 24, + "path": "src\\supervision\\metrics\\f1_score.py", + "symbol": "possibly-used-before-assignment", + "message": "Possibly using variable 'f1_scores' before assignment", + "message-id": "E0606" + }, + { + "type": "error", + "module": "supervision.metrics.mean_average_precision", + "obj": "", + "line": 532, + "column": 6, + "endLine": 532, + "endColumn": 30, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "no-member", + "message": "Instance of 'finfo' has no 'eps' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.metrics.precision", + "obj": "Precision._compute_precision_for_classes", + "line": 317, + "column": 15, + "endLine": 317, + "endColumn": 31, + "path": "src\\supervision\\metrics\\precision.py", + "symbol": "possibly-used-before-assignment", + "message": "Possibly using variable 'precision_scores' before assignment", + "message-id": "E0606" + }, + { + "type": "error", + "module": "supervision.metrics.recall", + "obj": "Recall._compute_recall_for_classes", + "line": 273, + "column": 15, + "endLine": 273, + "endColumn": 28, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "possibly-used-before-assignment", + "message": "Possibly using variable 'recall_scores' before assignment", + "message-id": "E0606" + }, + { + "type": "error", + "module": "supervision.utils.conversion", + "obj": "pillow_to_cv2", + "line": 160, + "column": 12, + "endLine": 160, + "endColumn": 24, + "path": "src\\supervision\\utils\\conversion.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'cvtColor' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.conversion", + "obj": "pillow_to_cv2", + "line": 160, + "column": 32, + "endLine": 160, + "endColumn": 49, + "path": "src\\supervision\\utils\\conversion.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'COLOR_RGB2BGR' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.conversion", + "obj": "cv2_to_pillow", + "line": 177, + "column": 12, + "endLine": 177, + "endColumn": 24, + "path": "src\\supervision\\utils\\conversion.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'cvtColor' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.conversion", + "obj": "cv2_to_pillow", + "line": 177, + "column": 32, + "endLine": 177, + "endColumn": 49, + "path": "src\\supervision\\utils\\conversion.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'COLOR_BGR2RGB' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.image", + "obj": "scale_image", + "line": 142, + "column": 11, + "endLine": 142, + "endColumn": 21, + "path": "src\\supervision\\utils\\image.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'resize' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.image", + "obj": "scale_image", + "line": 142, + "column": 68, + "endLine": 142, + "endColumn": 84, + "path": "src\\supervision\\utils\\image.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'INTER_LINEAR' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.image", + "obj": "resize_image", + "line": 206, + "column": 11, + "endLine": 206, + "endColumn": 21, + "path": "src\\supervision\\utils\\image.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'resize' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.image", + "obj": "resize_image", + "line": 206, + "column": 68, + "endLine": 206, + "endColumn": 84, + "path": "src\\supervision\\utils\\image.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'INTER_LINEAR' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.image", + "obj": "letterbox_image", + "line": 265, + "column": 25, + "endLine": 265, + "endColumn": 43, + "path": "src\\supervision\\utils\\image.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'copyMakeBorder' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.image", + "obj": "letterbox_image", + "line": 271, + "column": 8, + "endLine": 271, + "endColumn": 27, + "path": "src\\supervision\\utils\\image.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'BORDER_CONSTANT' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.image", + "obj": "overlay_image", + "line": 317, + "column": 32, + "endLine": 317, + "endColumn": 43, + "path": "src\\supervision\\utils\\image.py", + "symbol": "no-member", + "message": "Module 'supervision.utils.image' has no 'shape' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.image", + "obj": "overlay_image", + "line": 338, + "column": 25, + "endLine": 338, + "endColumn": 34, + "path": "src\\supervision\\utils\\image.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'split' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.image", + "obj": "overlay_image", + "line": 342, + "column": 24, + "endLine": 342, + "endColumn": 33, + "path": "src\\supervision\\utils\\image.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'merge' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.image", + "obj": "overlay_image", + "line": 344, + "column": 14, + "endLine": 344, + "endColumn": 19, + "path": "src\\supervision\\utils\\image.py", + "symbol": "unsubscriptable-object", + "message": "Value 'image' is unsubscriptable", + "message-id": "E1136" + }, + { + "type": "error", + "module": "supervision.utils.image", + "obj": "overlay_image", + "line": 346, + "column": 8, + "endLine": 346, + "endColumn": 13, + "path": "src\\supervision\\utils\\image.py", + "symbol": "unsupported-assignment-operation", + "message": "'image' does not support item assignment", + "message-id": "E1137" + }, + { + "type": "error", + "module": "supervision.utils.image", + "obj": "overlay_image", + "line": 348, + "column": 8, + "endLine": 348, + "endColumn": 13, + "path": "src\\supervision\\utils\\image.py", + "symbol": "unsupported-assignment-operation", + "message": "'image' does not support item assignment", + "message-id": "E1137" + }, + { + "type": "error", + "module": "supervision.utils.image", + "obj": "tint_image", + "line": 397, + "column": 4, + "endLine": 397, + "endColumn": 19, + "path": "src\\supervision\\utils\\image.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'addWeighted' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.image", + "obj": "grayscale_image", + "line": 430, + "column": 17, + "endLine": 430, + "endColumn": 29, + "path": "src\\supervision\\utils\\image.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'cvtColor' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.image", + "obj": "grayscale_image", + "line": 430, + "column": 37, + "endLine": 430, + "endColumn": 55, + "path": "src\\supervision\\utils\\image.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'COLOR_BGR2GRAY' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.image", + "obj": "grayscale_image", + "line": 431, + "column": 11, + "endLine": 431, + "endColumn": 23, + "path": "src\\supervision\\utils\\image.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'cvtColor' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.image", + "obj": "grayscale_image", + "line": 431, + "column": 36, + "endLine": 431, + "endColumn": 54, + "path": "src\\supervision\\utils\\image.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'COLOR_GRAY2BGR' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.image", + "obj": "ImageSink.save_image", + "line": 548, + "column": 8, + "endLine": 548, + "endColumn": 19, + "path": "src\\supervision\\utils\\image.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'imwrite' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.image", + "obj": "create_tiles", + "line": 580, + "column": 28, + "endLine": 580, + "endColumn": 52, + "path": "src\\supervision\\utils\\image.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'FONT_HERSHEY_SIMPLEX' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.notebook", + "obj": "plot_image", + "line": 44, + "column": 19, + "endLine": 44, + "endColumn": 31, + "path": "src\\supervision\\utils\\notebook.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'cvtColor' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.notebook", + "obj": "plot_image", + "line": 44, + "column": 39, + "endLine": 44, + "endColumn": 56, + "path": "src\\supervision\\utils\\notebook.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'COLOR_BGR2RGB' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.notebook", + "obj": "plot_images_grid", + "line": 111, + "column": 26, + "endLine": 111, + "endColumn": 38, + "path": "src\\supervision\\utils\\notebook.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'cvtColor' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.notebook", + "obj": "plot_images_grid", + "line": 111, + "column": 52, + "endLine": 111, + "endColumn": 69, + "path": "src\\supervision\\utils\\notebook.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'COLOR_BGR2RGB' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.video", + "obj": "VideoInfo.from_video_path", + "line": 60, + "column": 16, + "endLine": 60, + "endColumn": 32, + "path": "src\\supervision\\utils\\video.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'VideoCapture' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.video", + "obj": "VideoInfo.from_video_path", + "line": 64, + "column": 30, + "endLine": 64, + "endColumn": 54, + "path": "src\\supervision\\utils\\video.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'CAP_PROP_FRAME_WIDTH' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.video", + "obj": "VideoInfo.from_video_path", + "line": 65, + "column": 31, + "endLine": 65, + "endColumn": 56, + "path": "src\\supervision\\utils\\video.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'CAP_PROP_FRAME_HEIGHT' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.video", + "obj": "VideoInfo.from_video_path", + "line": 66, + "column": 30, + "endLine": 66, + "endColumn": 46, + "path": "src\\supervision\\utils\\video.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'CAP_PROP_FPS' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.video", + "obj": "VideoInfo.from_video_path", + "line": 67, + "column": 37, + "endLine": 67, + "endColumn": 61, + "path": "src\\supervision\\utils\\video.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'CAP_PROP_FRAME_COUNT' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.video", + "obj": "VideoSink.__enter__", + "line": 107, + "column": 28, + "endLine": 107, + "endColumn": 50, + "path": "src\\supervision\\utils\\video.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'VideoWriter_fourcc' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.video", + "obj": "VideoSink.__enter__", + "line": 110, + "column": 28, + "endLine": 110, + "endColumn": 50, + "path": "src\\supervision\\utils\\video.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'VideoWriter_fourcc' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.video", + "obj": "VideoSink.__enter__", + "line": 111, + "column": 24, + "endLine": 111, + "endColumn": 39, + "path": "src\\supervision\\utils\\video.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'VideoWriter' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.video", + "obj": "_validate_and_setup_video", + "line": 210, + "column": 12, + "endLine": 210, + "endColumn": 28, + "path": "src\\supervision\\utils\\video.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'VideoCapture' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.video", + "obj": "_validate_and_setup_video", + "line": 213, + "column": 33, + "endLine": 213, + "endColumn": 57, + "path": "src\\supervision\\utils\\video.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'CAP_PROP_FRAME_COUNT' member", + "message-id": "E1101" + }, + { + "type": "error", + "module": "supervision.utils.video", + "obj": "_validate_and_setup_video", + "line": 226, + "column": 18, + "endLine": 226, + "endColumn": 41, + "path": "src\\supervision\\utils\\video.py", + "symbol": "no-member", + "message": "Module 'cv2' has no 'CAP_PROP_POS_FRAMES' member", + "message-id": "E1101" + } +] \ No newline at end of file diff --git a/metrics-before-pylint/pylint_fatal_antes.json b/metrics-before-pylint/pylint_fatal_antes.json new file mode 100644 index 0000000000..0637a088a0 --- /dev/null +++ b/metrics-before-pylint/pylint_fatal_antes.json @@ -0,0 +1 @@ +[] \ No newline at end of file diff --git a/metrics-before-pylint/pylint_ranking_smells_antes.json b/metrics-before-pylint/pylint_ranking_smells_antes.json new file mode 100644 index 0000000000..21bbfc8b08 --- /dev/null +++ b/metrics-before-pylint/pylint_ranking_smells_antes.json @@ -0,0 +1,82 @@ +[ + { + "simbolo": "too-many-locals", + "ocorrencias": 66 + }, + { + "simbolo": "duplicate-code", + "ocorrencias": 46 + }, + { + "simbolo": "too-few-public-methods", + "ocorrencias": 38 + }, + { + "simbolo": "too-many-arguments", + "ocorrencias": 34 + }, + { + "simbolo": "too-many-positional-arguments", + "ocorrencias": 30 + }, + { + "simbolo": "too-many-instance-attributes", + "ocorrencias": 15 + }, + { + "simbolo": "no-else-return", + "ocorrencias": 13 + }, + { + "simbolo": "use-dict-literal", + "ocorrencias": 11 + }, + { + "simbolo": "too-many-branches", + "ocorrencias": 11 + }, + { + "simbolo": "too-many-statements", + "ocorrencias": 7 + }, + { + "simbolo": "too-many-return-statements", + "ocorrencias": 6 + }, + { + "simbolo": "no-else-raise", + "ocorrencias": 5 + }, + { + "simbolo": "consider-using-in", + "ocorrencias": 4 + }, + { + "simbolo": "use-a-generator", + "ocorrencias": 4 + }, + { + "simbolo": "inconsistent-return-statements", + "ocorrencias": 3 + }, + { + "simbolo": "unnecessary-comprehension", + "ocorrencias": 3 + }, + { + "simbolo": "too-many-nested-blocks", + "ocorrencias": 3 + }, + { + "simbolo": "consider-using-with", + "ocorrencias": 2 + }, + { + "simbolo": "too-many-public-methods", + "ocorrencias": 1 + }, + { + "simbolo": "cyclic-import", + "ocorrencias": 1 + } +] \ No newline at end of file diff --git a/metrics-before-pylint/pylint_refactor_antes.json b/metrics-before-pylint/pylint_refactor_antes.json new file mode 100644 index 0000000000..97c206aaec --- /dev/null +++ b/metrics-before-pylint/pylint_refactor_antes.json @@ -0,0 +1,3941 @@ +[ + { + "type": "refactor", + "module": "supervision.annotators.base", + "obj": "BaseAnnotator", + "line": 7, + "column": 0, + "endLine": 7, + "endColumn": 19, + "path": "src\\supervision\\annotators\\base.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "_BaseLabelAnnotator", + "line": 83, + "column": 0, + "endLine": 83, + "endColumn": 25, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-instance-attributes", + "message": "Too many instance attributes (9/7)", + "message-id": "R0902" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "_BaseLabelAnnotator.__init__", + "line": 103, + "column": 4, + "endLine": 103, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (9/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "_BaseLabelAnnotator.__init__", + "line": 103, + "column": 4, + "endLine": 103, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (9/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "_BaseLabelAnnotator", + "line": 83, + "column": 0, + "endLine": 83, + "endColumn": 25, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "BoxAnnotator", + "line": 190, + "column": 0, + "endLine": 190, + "endColumn": 18, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "OrientedBoxAnnotator", + "line": 277, + "column": 0, + "endLine": 277, + "endColumn": 26, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "_paint_masks_by_area", + "line": 365, + "column": 0, + "endLine": 365, + "endColumn": 24, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-locals", + "message": "Too many local variables (16/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "MaskAnnotator", + "line": 423, + "column": 0, + "endLine": 423, + "endColumn": 19, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "PolygonAnnotator", + "line": 511, + "column": 0, + "endLine": 511, + "endColumn": 22, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "ColorAnnotator", + "line": 606, + "column": 0, + "endLine": 606, + "endColumn": 20, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "HaloAnnotator", + "line": 698, + "column": 0, + "endLine": 698, + "endColumn": 19, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "EllipseAnnotator", + "line": 800, + "column": 0, + "endLine": 800, + "endColumn": 22, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "BoxCornerAnnotator", + "line": 899, + "column": 0, + "endLine": 899, + "endColumn": 24, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "CircleAnnotator", + "line": 994, + "column": 0, + "endLine": 994, + "endColumn": 21, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "DotAnnotator.__init__", + "line": 1092, + "column": 4, + "endLine": 1092, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (6/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "DotAnnotator.__init__", + "line": 1092, + "column": 4, + "endLine": 1092, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (6/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "DotAnnotator", + "line": 1086, + "column": 0, + "endLine": 1086, + "endColumn": 18, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "LabelAnnotator.__init__", + "line": 1202, + "column": 4, + "endLine": 1202, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (11/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "LabelAnnotator.__init__", + "line": 1202, + "column": 4, + "endLine": 1202, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (11/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "LabelAnnotator._get_label_properties", + "line": 1333, + "column": 4, + "endLine": 1333, + "endColumn": 29, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-locals", + "message": "Too many local variables (18/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "LabelAnnotator._draw_labels", + "line": 1387, + "column": 4, + "endLine": 1387, + "endColumn": 20, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-locals", + "message": "Too many local variables (18/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "RichLabelAnnotator.__init__", + "line": 1518, + "column": 4, + "endLine": 1518, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (11/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "RichLabelAnnotator.__init__", + "line": 1518, + "column": 4, + "endLine": 1518, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (11/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "RichLabelAnnotator._get_label_properties", + "line": 1649, + "column": 4, + "endLine": 1649, + "endColumn": 29, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-locals", + "message": "Too many local variables (24/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "RichLabelAnnotator._draw_labels", + "line": 1701, + "column": 4, + "endLine": 1701, + "endColumn": 20, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-locals", + "message": "Too many local variables (23/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "RichLabelAnnotator", + "line": 1512, + "column": 0, + "endLine": 1512, + "endColumn": 24, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "IconAnnotator", + "line": 1788, + "column": 0, + "endLine": 1788, + "endColumn": 19, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "BlurAnnotator", + "line": 1897, + "column": 0, + "endLine": 1897, + "endColumn": 19, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "TraceAnnotator.__init__", + "line": 1985, + "column": 4, + "endLine": 1985, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (6/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "TraceAnnotator.__init__", + "line": 1985, + "column": 4, + "endLine": 1985, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (6/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "TraceAnnotator.annotate", + "line": 2017, + "column": 4, + "endLine": 2017, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-locals", + "message": "Too many local variables (17/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "TraceAnnotator", + "line": 1974, + "column": 0, + "endLine": 1974, + "endColumn": 20, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "HeatMapAnnotator.__init__", + "line": 2126, + "column": 4, + "endLine": 2126, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (6/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "HeatMapAnnotator.__init__", + "line": 2126, + "column": 4, + "endLine": 2126, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (6/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "HeatMapAnnotator", + "line": 2119, + "column": 0, + "endLine": 2119, + "endColumn": 22, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "PixelateAnnotator", + "line": 2231, + "column": 0, + "endLine": 2231, + "endColumn": 23, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "TriangleAnnotator.__init__", + "line": 2331, + "column": 4, + "endLine": 2331, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (7/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "TriangleAnnotator.__init__", + "line": 2331, + "column": 4, + "endLine": 2331, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (7/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "TriangleAnnotator", + "line": 2325, + "column": 0, + "endLine": 2325, + "endColumn": 23, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "RoundBoxAnnotator.annotate", + "line": 2480, + "column": 4, + "endLine": 2480, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-locals", + "message": "Too many local variables (19/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "RoundBoxAnnotator", + "line": 2447, + "column": 0, + "endLine": 2447, + "endColumn": 23, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "PercentageBarAnnotator.__init__", + "line": 2588, + "column": 4, + "endLine": 2588, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (7/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "PercentageBarAnnotator.__init__", + "line": 2588, + "column": 4, + "endLine": 2588, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (7/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "PercentageBarAnnotator.calculate_border_coordinates", + "line": 2728, + "column": 8, + "endLine": 2748, + "endColumn": 54, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-else-return", + "message": "Unnecessary \"elif\" after \"return\", remove the leading \"el\" from \"elif\"", + "message-id": "R1705" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "PercentageBarAnnotator.calculate_border_coordinates", + "line": 2736, + "column": 13, + "endLine": 2736, + "endColumn": 79, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "consider-using-in", + "message": "Consider merging these comparisons with 'in' by using 'position in (Position.CENTER, Position.CENTER_OF_MASS)'. Use a set instead if elements are hashable.", + "message-id": "R1714" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "PercentageBarAnnotator.calculate_border_coordinates", + "line": 2722, + "column": 4, + "endLine": 2722, + "endColumn": 36, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-return-statements", + "message": "Too many return statements (9/6)", + "message-id": "R0911" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "PercentageBarAnnotator.calculate_border_coordinates", + "line": 2722, + "column": 4, + "endLine": 2722, + "endColumn": 36, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "inconsistent-return-statements", + "message": "Either all return statements in a function should return an expression, or none of them should.", + "message-id": "R1710" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "CropAnnotator.annotate", + "line": 2823, + "column": 4, + "endLine": 2823, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-locals", + "message": "Too many local variables (16/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "CropAnnotator.calculate_crop_coordinates", + "line": 2910, + "column": 8, + "endLine": 2942, + "endColumn": 78, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "no-else-return", + "message": "Unnecessary \"elif\" after \"return\", remove the leading \"el\" from \"elif\"", + "message-id": "R1705" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "CropAnnotator.calculate_crop_coordinates", + "line": 2924, + "column": 13, + "endLine": 2924, + "endColumn": 79, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "consider-using-in", + "message": "Consider merging these comparisons with 'in' by using 'position in (Position.CENTER, Position.CENTER_OF_MASS)'. Use a set instead if elements are hashable.", + "message-id": "R1714" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "CropAnnotator.calculate_crop_coordinates", + "line": 2904, + "column": 4, + "endLine": 2904, + "endColumn": 34, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-return-statements", + "message": "Too many return statements (9/6)", + "message-id": "R0911" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "CropAnnotator.calculate_crop_coordinates", + "line": 2904, + "column": 4, + "endLine": 2904, + "endColumn": 34, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "inconsistent-return-statements", + "message": "Either all return statements in a function should return an expression, or none of them should.", + "message-id": "R1710" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "BackgroundOverlayAnnotator", + "line": 2945, + "column": 0, + "endLine": 2945, + "endColumn": 32, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "ComparisonAnnotator", + "line": 3032, + "column": 0, + "endLine": 3032, + "endColumn": 25, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-instance-attributes", + "message": "Too many instance attributes (9/7)", + "message-id": "R0902" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "ComparisonAnnotator.__init__", + "line": 3043, + "column": 4, + "endLine": 3043, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (8/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "ComparisonAnnotator._draw_labels", + "line": 3226, + "column": 4, + "endLine": 3226, + "endColumn": 20, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-many-locals", + "message": "Too many local variables (19/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.annotators.core", + "obj": "ComparisonAnnotator", + "line": 3032, + "column": 0, + "endLine": 3032, + "endColumn": 25, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.annotators.utils", + "obj": "resolve_color_idx", + "line": 51, + "column": 4, + "endLine": 76, + "endColumn": 56, + "path": "src\\supervision\\annotators\\utils.py", + "symbol": "no-else-return", + "message": "Unnecessary \"elif\" after \"return\", remove the leading \"el\" from \"elif\"", + "message-id": "R1705" + }, + { + "type": "refactor", + "module": "supervision.annotators.utils", + "obj": "resolve_text_background_xyxy", + "line": 88, + "column": 4, + "endLine": 130, + "endColumn": 9, + "path": "src\\supervision\\annotators\\utils.py", + "symbol": "no-else-return", + "message": "Unnecessary \"elif\" after \"return\", remove the leading \"el\" from \"elif\"", + "message-id": "R1705" + }, + { + "type": "refactor", + "module": "supervision.annotators.utils", + "obj": "resolve_text_background_xyxy", + "line": 99, + "column": 9, + "endLine": 99, + "endColumn": 75, + "path": "src\\supervision\\annotators\\utils.py", + "symbol": "consider-using-in", + "message": "Consider merging these comparisons with 'in' by using 'position in (Position.CENTER, Position.CENTER_OF_MASS)'. Use a set instead if elements are hashable.", + "message-id": "R1714" + }, + { + "type": "refactor", + "module": "supervision.annotators.utils", + "obj": "resolve_text_background_xyxy", + "line": 80, + "column": 0, + "endLine": 80, + "endColumn": 32, + "path": "src\\supervision\\annotators\\utils.py", + "symbol": "too-many-return-statements", + "message": "Too many return statements (9/6)", + "message-id": "R0911" + }, + { + "type": "refactor", + "module": "supervision.annotators.utils", + "obj": "resolve_text_background_xyxy", + "line": 80, + "column": 0, + "endLine": 80, + "endColumn": 32, + "path": "src\\supervision\\annotators\\utils.py", + "symbol": "inconsistent-return-statements", + "message": "Either all return statements in a function should return an expression, or none of them should.", + "message-id": "R1710" + }, + { + "type": "refactor", + "module": "supervision.dataset.core", + "obj": "DetectionDataset.merge", + "line": 285, + "column": 24, + "endLine": 285, + "endColumn": 80, + "path": "src\\supervision\\dataset\\core.py", + "symbol": "use-a-generator", + "message": "Use a generator instead 'all(is_in_memory(dataset) for dataset in dataset_list)'", + "message-id": "R1729" + }, + { + "type": "refactor", + "module": "supervision.dataset.core", + "obj": "DetectionDataset.merge", + "line": 286, + "column": 19, + "endLine": 286, + "endColumn": 70, + "path": "src\\supervision\\dataset\\core.py", + "symbol": "use-a-generator", + "message": "Use a generator instead 'all(is_lazy(dataset) for dataset in dataset_list)'", + "message-id": "R1729" + }, + { + "type": "refactor", + "module": "supervision.dataset.core", + "obj": "DetectionDataset.as_yolo", + "line": 504, + "column": 4, + "endLine": 504, + "endColumn": 15, + "path": "src\\supervision\\dataset\\core.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (7/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.dataset.core", + "obj": "DetectionDataset.as_yolo", + "line": 504, + "column": 4, + "endLine": 504, + "endColumn": 15, + "path": "src\\supervision\\dataset\\core.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (7/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.dataset.core", + "obj": "DetectionDataset.as_coco", + "line": 626, + "column": 4, + "endLine": 626, + "endColumn": 15, + "path": "src\\supervision\\dataset\\core.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (7/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.dataset.core", + "obj": "DetectionDataset.as_coco", + "line": 626, + "column": 4, + "endLine": 626, + "endColumn": 15, + "path": "src\\supervision\\dataset\\core.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (7/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.coco", + "obj": "coco_annotations_to_detections", + "line": 193, + "column": 15, + "endLine": 195, + "endColumn": 9, + "path": "src\\supervision\\dataset\\formats\\coco.py", + "symbol": "use-dict-literal", + "message": "Consider using '{\"iscrowd\": np.asarray(iscrowd, dtype=int), \"area\": np.asarray(area, dtype=float), ... }' instead of a call to 'dict'.", + "message-id": "R1735" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.coco", + "obj": "detections_to_coco_annotations", + "line": 217, + "column": 0, + "endLine": 217, + "endColumn": 34, + "path": "src\\supervision\\dataset\\formats\\coco.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (6/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.coco", + "obj": "detections_to_coco_annotations", + "line": 217, + "column": 0, + "endLine": 217, + "endColumn": 34, + "path": "src\\supervision\\dataset\\formats\\coco.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (6/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.coco", + "obj": "detections_to_coco_annotations", + "line": 217, + "column": 0, + "endLine": 217, + "endColumn": 34, + "path": "src\\supervision\\dataset\\formats\\coco.py", + "symbol": "too-many-locals", + "message": "Too many local variables (20/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.coco", + "obj": "detections_to_coco_annotations", + "line": 217, + "column": 0, + "endLine": 217, + "endColumn": 34, + "path": "src\\supervision\\dataset\\formats\\coco.py", + "symbol": "too-many-branches", + "message": "Too many branches (14/12)", + "message-id": "R0912" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.coco", + "obj": "load_coco_annotations", + "line": 396, + "column": 0, + "endLine": 396, + "endColumn": 25, + "path": "src\\supervision\\dataset\\formats\\coco.py", + "symbol": "too-many-locals", + "message": "Too many local variables (22/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.coco", + "obj": "save_coco_annotations", + "line": 507, + "column": 0, + "endLine": 507, + "endColumn": 25, + "path": "src\\supervision\\dataset\\formats\\coco.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (7/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.coco", + "obj": "save_coco_annotations", + "line": 507, + "column": 0, + "endLine": 507, + "endColumn": 25, + "path": "src\\supervision\\dataset\\formats\\coco.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (7/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.coco", + "obj": "save_coco_annotations", + "line": 507, + "column": 0, + "endLine": 507, + "endColumn": 25, + "path": "src\\supervision\\dataset\\formats\\coco.py", + "symbol": "too-many-locals", + "message": "Too many local variables (22/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.pascal_voc", + "obj": "object_to_pascal_voc", + "line": 19, + "column": 0, + "endLine": 19, + "endColumn": 24, + "path": "src\\supervision\\dataset\\formats\\pascal_voc.py", + "symbol": "too-many-locals", + "message": "Too many local variables (17/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.pascal_voc", + "obj": "detections_to_pascal_voc", + "line": 84, + "column": 0, + "endLine": 84, + "endColumn": 28, + "path": "src\\supervision\\dataset\\formats\\pascal_voc.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (7/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.pascal_voc", + "obj": "detections_to_pascal_voc", + "line": 84, + "column": 0, + "endLine": 84, + "endColumn": 28, + "path": "src\\supervision\\dataset\\formats\\pascal_voc.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (7/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.pascal_voc", + "obj": "detections_to_pascal_voc", + "line": 84, + "column": 0, + "endLine": 84, + "endColumn": 28, + "path": "src\\supervision\\dataset\\formats\\pascal_voc.py", + "symbol": "too-many-locals", + "message": "Too many local variables (28/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.pascal_voc", + "obj": "detections_from_xml_obj", + "line": 235, + "column": 0, + "endLine": 235, + "endColumn": 27, + "path": "src\\supervision\\dataset\\formats\\pascal_voc.py", + "symbol": "too-many-locals", + "message": "Too many local variables (24/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.yolo", + "obj": "_with_seg_mask", + "line": 67, + "column": 11, + "endLine": 67, + "endColumn": 57, + "path": "src\\supervision\\dataset\\formats\\yolo.py", + "symbol": "use-a-generator", + "message": "Use a generator instead 'any(len(line.split()) > 5 for line in lines)'", + "message-id": "R1729" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.yolo", + "obj": "yolo_annotations_to_detections", + "line": 138, + "column": 0, + "endLine": 138, + "endColumn": 34, + "path": "src\\supervision\\dataset\\formats\\yolo.py", + "symbol": "too-many-locals", + "message": "Too many local variables (19/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.yolo", + "obj": "load_yolo_annotations", + "line": 187, + "column": 0, + "endLine": 187, + "endColumn": 25, + "path": "src\\supervision\\dataset\\formats\\yolo.py", + "symbol": "too-many-locals", + "message": "Too many local variables (18/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.yolo", + "obj": "object_to_yolo", + "line": 274, + "column": 0, + "endLine": 274, + "endColumn": 18, + "path": "src\\supervision\\dataset\\formats\\yolo.py", + "symbol": "too-many-locals", + "message": "Too many local variables (17/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.yolo", + "obj": "object_to_yolo", + "line": 281, + "column": 4, + "endLine": 293, + "endColumn": 50, + "path": "src\\supervision\\dataset\\formats\\yolo.py", + "symbol": "no-else-return", + "message": "Unnecessary \"else\" after \"return\", remove the \"else\" and de-indent the code inside it", + "message-id": "R1705" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.yolo", + "obj": "detections_to_yolo_annotations", + "line": 296, + "column": 0, + "endLine": 296, + "endColumn": 34, + "path": "src\\supervision\\dataset\\formats\\yolo.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (6/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.yolo", + "obj": "detections_to_yolo_annotations", + "line": 296, + "column": 0, + "endLine": 296, + "endColumn": 34, + "path": "src\\supervision\\dataset\\formats\\yolo.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (6/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.yolo", + "obj": "detections_to_yolo_annotations", + "line": 296, + "column": 0, + "endLine": 296, + "endColumn": 34, + "path": "src\\supervision\\dataset\\formats\\yolo.py", + "symbol": "too-many-locals", + "message": "Too many local variables (16/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.yolo", + "obj": "save_yolo_annotations", + "line": 422, + "column": 0, + "endLine": 422, + "endColumn": 25, + "path": "src\\supervision\\dataset\\formats\\yolo.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (6/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.dataset.formats.yolo", + "obj": "save_yolo_annotations", + "line": 422, + "column": 0, + "endLine": 422, + "endColumn": 25, + "path": "src\\supervision\\dataset\\formats\\yolo.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (6/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.detection.compact_mask", + "obj": "CompactMask.from_dense", + "line": 476, + "column": 4, + "endLine": 476, + "endColumn": 18, + "path": "src\\supervision\\detection\\compact_mask.py", + "symbol": "too-many-locals", + "message": "Too many local variables (24/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.detection.compact_mask", + "obj": "CompactMask.repack", + "line": 984, + "column": 4, + "endLine": 984, + "endColumn": 14, + "path": "src\\supervision\\detection\\compact_mask.py", + "symbol": "too-many-locals", + "message": "Too many local variables (18/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.detection.compact_mask", + "obj": "CompactMask.with_offset", + "line": 1067, + "column": 4, + "endLine": 1067, + "endColumn": 19, + "path": "src\\supervision\\detection\\compact_mask.py", + "symbol": "too-many-locals", + "message": "Too many local variables (29/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.detection.compact_mask", + "obj": "CompactMask.resize", + "line": 1192, + "column": 4, + "endLine": 1192, + "endColumn": 14, + "path": "src\\supervision\\detection\\compact_mask.py", + "symbol": "too-many-locals", + "message": "Too many local variables (27/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.detection.core", + "obj": "Detections.from_transformers", + "line": 560, + "column": 8, + "endLine": 570, + "endColumn": 13, + "path": "src\\supervision\\detection\\core.py", + "symbol": "no-else-return", + "message": "Unnecessary \"else\" after \"return\", remove the \"else\" and de-indent the code inside it", + "message-id": "R1705" + }, + { + "type": "refactor", + "module": "supervision.detection.core", + "obj": "Detections.from_sam3", + "line": 718, + "column": 4, + "endLine": 718, + "endColumn": 17, + "path": "src\\supervision\\detection\\core.py", + "symbol": "too-many-locals", + "message": "Too many local variables (23/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.detection.core", + "obj": "Detections.from_sam3", + "line": 718, + "column": 4, + "endLine": 718, + "endColumn": 17, + "path": "src\\supervision\\detection\\core.py", + "symbol": "too-many-branches", + "message": "Too many branches (15/12)", + "message-id": "R0912" + }, + { + "type": "refactor", + "module": "supervision.detection.core", + "obj": "Detections.from_azure_analyze_image", + "line": 843, + "column": 4, + "endLine": 843, + "endColumn": 32, + "path": "src\\supervision\\detection\\core.py", + "symbol": "too-many-locals", + "message": "Too many local variables (19/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.detection.core", + "obj": "Detections.from_vlm", + "line": 1461, + "column": 4, + "endLine": 1461, + "endColumn": 16, + "path": "src\\supervision\\detection\\core.py", + "symbol": "too-many-return-statements", + "message": "Too many return statements (10/6)", + "message-id": "R0911" + }, + { + "type": "refactor", + "module": "supervision.detection.core", + "obj": "Detections.get_anchors_coordinates", + "line": 2236, + "column": 8, + "endLine": 2278, + "endColumn": 75, + "path": "src\\supervision\\detection\\core.py", + "symbol": "no-else-return", + "message": "Unnecessary \"elif\" after \"return\", remove the leading \"el\" from \"elif\"", + "message-id": "R1705" + }, + { + "type": "refactor", + "module": "supervision.detection.core", + "obj": "Detections.get_anchors_coordinates", + "line": 2217, + "column": 4, + "endLine": 2217, + "endColumn": 31, + "path": "src\\supervision\\detection\\core.py", + "symbol": "too-many-return-statements", + "message": "Too many return statements (10/6)", + "message-id": "R0911" + }, + { + "type": "refactor", + "module": "supervision.detection.core", + "obj": "Detections", + "line": 68, + "column": 0, + "endLine": 68, + "endColumn": 16, + "path": "src\\supervision\\detection\\core.py", + "symbol": "too-many-public-methods", + "message": "Too many public methods (26/20)", + "message-id": "R0904" + }, + { + "type": "refactor", + "module": "supervision.detection.core", + "obj": "_merge_detection_group", + "line": 2678, + "column": 0, + "endLine": 2678, + "endColumn": 26, + "path": "src\\supervision\\detection\\core.py", + "symbol": "too-many-locals", + "message": "Too many local variables (18/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.detection.line_zone", + "obj": "LineZone", + "line": 26, + "column": 0, + "endLine": 26, + "endColumn": 14, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "too-many-instance-attributes", + "message": "Too many instance attributes (8/7)", + "message-id": "R0902" + }, + { + "type": "refactor", + "module": "supervision.detection.line_zone", + "obj": "LineZone._update_class_id_to_name", + "line": 323, + "column": 24, + "endLine": 326, + "endColumn": 13, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "unnecessary-comprehension", + "message": "Unnecessary use of a comprehension, use dict(zip(detections.class_id, class_names)) instead.", + "message-id": "R1721" + }, + { + "type": "refactor", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator", + "line": 330, + "column": 0, + "endLine": 330, + "endColumn": 23, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "too-many-instance-attributes", + "message": "Too many instance attributes (14/7)", + "message-id": "R0902" + }, + { + "type": "refactor", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator.__init__", + "line": 331, + "column": 4, + "endLine": 331, + "endColumn": 16, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (14/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator.__init__", + "line": 331, + "column": 4, + "endLine": 331, + "endColumn": 16, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (14/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator._calculate_anchor_in_frame", + "line": 481, + "column": 4, + "endLine": 481, + "endColumn": 34, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "too-many-locals", + "message": "Too many local variables (16/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator._make_label_image", + "line": 641, + "column": 4, + "endLine": 641, + "endColumn": 25, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (8/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator._make_label_image", + "line": 641, + "column": 4, + "endLine": 641, + "endColumn": 25, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "too-many-locals", + "message": "Too many local variables (18/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator._make_label_image", + "line": 679, + "column": 36, + "endLine": 685, + "endColumn": 9, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "use-dict-literal", + "message": "Consider using '{\"text\": text, \"text_anchor\": annotation_center, \"text_scale\": text_scale, ... }' instead of a call to 'dict'.", + "message-id": "R1735" + }, + { + "type": "refactor", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotator", + "line": 330, + "column": 0, + "endLine": 330, + "endColumn": 23, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotatorMulticlass", + "line": 713, + "column": 0, + "endLine": 713, + "endColumn": 33, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "too-many-instance-attributes", + "message": "Too many instance attributes (9/7)", + "message-id": "R0902" + }, + { + "type": "refactor", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotatorMulticlass.__init__", + "line": 714, + "column": 4, + "endLine": 714, + "endColumn": 16, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (9/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotatorMulticlass.annotate", + "line": 769, + "column": 4, + "endLine": 769, + "endColumn": 16, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "too-many-locals", + "message": "Too many local variables (26/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.detection.line_zone", + "obj": "LineZoneAnnotatorMulticlass", + "line": 713, + "column": 0, + "endLine": 713, + "endColumn": 33, + "path": "src\\supervision\\detection\\line_zone.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.detection.vlm", + "obj": "from_qwen_2_5_vl", + "line": 305, + "column": 0, + "endLine": 305, + "endColumn": 20, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "too-many-locals", + "message": "Too many local variables (20/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.detection.vlm", + "obj": "from_deepseek_vl_2", + "line": 424, + "column": 0, + "endLine": 424, + "endColumn": 22, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "too-many-locals", + "message": "Too many local variables (23/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.detection.vlm", + "obj": "from_florence_2", + "line": 495, + "column": 0, + "endLine": 495, + "endColumn": 19, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "too-many-locals", + "message": "Too many local variables (18/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.detection.vlm", + "obj": "from_florence_2", + "line": 495, + "column": 0, + "endLine": 495, + "endColumn": 19, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "too-many-return-statements", + "message": "Too many return statements (7/6)", + "message-id": "R0911" + }, + { + "type": "refactor", + "module": "supervision.detection.vlm", + "obj": "from_google_gemini_2_0", + "line": 591, + "column": 0, + "endLine": 591, + "endColumn": 26, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "too-many-locals", + "message": "Too many local variables (16/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.detection.vlm", + "obj": "from_google_gemini_2_5", + "line": 678, + "column": 0, + "endLine": 678, + "endColumn": 26, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "too-many-locals", + "message": "Too many local variables (34/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.detection.vlm", + "obj": "from_google_gemini_2_5", + "line": 755, + "column": 4, + "endLine": 811, + "endColumn": 34, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "too-many-nested-blocks", + "message": "Too many nested blocks (6/5)", + "message-id": "R1702" + }, + { + "type": "refactor", + "module": "supervision.detection.vlm", + "obj": "from_google_gemini_2_5", + "line": 678, + "column": 0, + "endLine": 678, + "endColumn": 26, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "too-many-branches", + "message": "Too many branches (23/12)", + "message-id": "R0912" + }, + { + "type": "refactor", + "module": "supervision.detection.vlm", + "obj": "from_google_gemini_2_5", + "line": 678, + "column": 0, + "endLine": 678, + "endColumn": 26, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "too-many-statements", + "message": "Too many statements (71/50)", + "message-id": "R0915" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.csv_sink", + "obj": "WriterProtocol", + "line": 27, + "column": 0, + "endLine": 27, + "endColumn": 20, + "path": "src\\supervision\\detection\\tools\\csv_sink.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.csv_sink", + "obj": "CSVSink.open", + "line": 108, + "column": 20, + "endLine": 108, + "endColumn": 57, + "path": "src\\supervision\\detection\\tools\\csv_sink.py", + "symbol": "consider-using-with", + "message": "Consider using 'with' for resource-allocating operations", + "message-id": "R1732" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.inference_slicer", + "obj": "InferenceSlicer", + "line": 64, + "column": 0, + "endLine": 64, + "endColumn": 21, + "path": "src\\supervision\\detection\\tools\\inference_slicer.py", + "symbol": "too-many-instance-attributes", + "message": "Too many instance attributes (12/7)", + "message-id": "R0902" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.inference_slicer", + "obj": "InferenceSlicer.__init__", + "line": 143, + "column": 4, + "endLine": 143, + "endColumn": 16, + "path": "src\\supervision\\detection\\tools\\inference_slicer.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (8/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.inference_slicer", + "obj": "InferenceSlicer.__init__", + "line": 143, + "column": 4, + "endLine": 143, + "endColumn": 16, + "path": "src\\supervision\\detection\\tools\\inference_slicer.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (8/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.inference_slicer", + "obj": "InferenceSlicer.__call__", + "line": 178, + "column": 4, + "endLine": 178, + "endColumn": 16, + "path": "src\\supervision\\detection\\tools\\inference_slicer.py", + "symbol": "too-many-locals", + "message": "Too many local variables (18/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.inference_slicer", + "obj": "InferenceSlicer.__call__", + "line": 178, + "column": 4, + "endLine": 178, + "endColumn": 16, + "path": "src\\supervision\\detection\\tools\\inference_slicer.py", + "symbol": "too-many-branches", + "message": "Too many branches (13/12)", + "message-id": "R0912" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.inference_slicer", + "obj": "InferenceSlicer._run_callback", + "line": 275, + "column": 4, + "endLine": 275, + "endColumn": 21, + "path": "src\\supervision\\detection\\tools\\inference_slicer.py", + "symbol": "too-many-locals", + "message": "Too many local variables (16/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.inference_slicer", + "obj": "InferenceSlicer._generate_offset", + "line": 389, + "column": 4, + "endLine": 389, + "endColumn": 24, + "path": "src\\supervision\\detection\\tools\\inference_slicer.py", + "symbol": "too-many-locals", + "message": "Too many local variables (19/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.inference_slicer", + "obj": "InferenceSlicer", + "line": 64, + "column": 0, + "endLine": 64, + "endColumn": 21, + "path": "src\\supervision\\detection\\tools\\inference_slicer.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.json_sink", + "obj": "JSONSink.open", + "line": 82, + "column": 20, + "endLine": 82, + "endColumn": 45, + "path": "src\\supervision\\detection\\tools\\json_sink.py", + "symbol": "consider-using-with", + "message": "Consider using 'with' for resource-allocating operations", + "message-id": "R1732" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.polygon_zone", + "obj": "PolygonZone", + "line": 18, + "column": 0, + "endLine": 18, + "endColumn": 17, + "path": "src\\supervision\\detection\\tools\\polygon_zone.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.polygon_zone", + "obj": "PolygonZoneAnnotator", + "line": 111, + "column": 0, + "endLine": 111, + "endColumn": 26, + "path": "src\\supervision\\detection\\tools\\polygon_zone.py", + "symbol": "too-many-instance-attributes", + "message": "Too many instance attributes (11/7)", + "message-id": "R0902" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.polygon_zone", + "obj": "PolygonZoneAnnotator.__init__", + "line": 131, + "column": 4, + "endLine": 131, + "endColumn": 16, + "path": "src\\supervision\\detection\\tools\\polygon_zone.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (9/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.polygon_zone", + "obj": "PolygonZoneAnnotator.__init__", + "line": 131, + "column": 4, + "endLine": 131, + "endColumn": 16, + "path": "src\\supervision\\detection\\tools\\polygon_zone.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (9/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.polygon_zone", + "obj": "PolygonZoneAnnotator", + "line": 111, + "column": 0, + "endLine": 111, + "endColumn": 26, + "path": "src\\supervision\\detection\\tools\\polygon_zone.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.smoother", + "obj": "DetectionsSmoother.update_with_detections", + "line": 128, + "column": 15, + "endLine": 128, + "endColumn": 62, + "path": "src\\supervision\\detection\\tools\\smoother.py", + "symbol": "use-a-generator", + "message": "Use a generator instead 'all(d is None for d in self.tracks[track_id])'", + "message-id": "R1729" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.transformers", + "obj": "process_transformers_detection_result", + "line": 35, + "column": 11, + "endLine": 40, + "endColumn": 5, + "path": "src\\supervision\\detection\\tools\\transformers.py", + "symbol": "use-dict-literal", + "message": "Consider using '{\"xyxy\": detection_result['boxes'].cpu().detach().numpy(), \"confidence\": detection_result['scores'].cpu().detach().numpy(), ... }' instead of a call to 'dict'.", + "message-id": "R1735" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.transformers", + "obj": "process_transformers_v4_segmentation_result", + "line": 62, + "column": 4, + "endLine": 79, + "endColumn": 9, + "path": "src\\supervision\\detection\\tools\\transformers.py", + "symbol": "no-else-return", + "message": "Unnecessary \"else\" after \"return\", remove the \"else\" and de-indent the code inside it", + "message-id": "R1705" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.transformers", + "obj": "process_transformers_v4_segmentation_result", + "line": 73, + "column": 15, + "endLine": 79, + "endColumn": 9, + "path": "src\\supervision\\detection\\tools\\transformers.py", + "symbol": "use-dict-literal", + "message": "Consider using '{\"xyxy\": boxes if boxes is not None else mask_to_xyxy(masks), \"mask\": np.squeeze(masks, axis=1) if boxes is not None else masks, ... }' instead of a call to 'dict'.", + "message-id": "R1735" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.transformers", + "obj": "process_transformers_v5_semantic_or_instance_segmentation_result", + "line": 139, + "column": 11, + "endLine": 145, + "endColumn": 5, + "path": "src\\supervision\\detection\\tools\\transformers.py", + "symbol": "use-dict-literal", + "message": "Consider using '{\"xyxy\": mask_to_xyxy(masks), \"mask\": masks, \"confidence\": scores}' instead of a call to 'dict'.", + "message-id": "R1735" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.transformers", + "obj": "process_transformers_v4_panoptic_segmentation_result", + "line": 174, + "column": 11, + "endLine": 179, + "endColumn": 5, + "path": "src\\supervision\\detection\\tools\\transformers.py", + "symbol": "use-dict-literal", + "message": "Consider using '{\"xyxy\": mask_to_xyxy(masks), \"mask\": masks, \"class_id\": class_ids, ... }' instead of a call to 'dict'.", + "message-id": "R1735" + }, + { + "type": "refactor", + "module": "supervision.detection.tools.transformers", + "obj": "process_transformers_v5_panoptic_segmentation_result", + "line": 204, + "column": 11, + "endLine": 204, + "endColumn": 84, + "path": "src\\supervision\\detection\\tools\\transformers.py", + "symbol": "use-dict-literal", + "message": "Consider using '{\"xyxy\": mask_to_xyxy(masks), \"mask\": masks, \"class_id\": class_ids, ... }' instead of a call to 'dict'.", + "message-id": "R1735" + }, + { + "type": "refactor", + "module": "supervision.detection.utils.internal", + "obj": "process_roboflow_result", + "line": 54, + "column": 0, + "endLine": 54, + "endColumn": 27, + "path": "src\\supervision\\detection\\utils\\internal.py", + "symbol": "too-many-locals", + "message": "Too many local variables (31/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.detection.utils.internal", + "obj": "process_roboflow_result", + "line": 54, + "column": 0, + "endLine": 54, + "endColumn": 27, + "path": "src\\supervision\\detection\\utils\\internal.py", + "symbol": "too-many-statements", + "message": "Too many statements (62/50)", + "message-id": "R0915" + }, + { + "type": "refactor", + "module": "supervision.detection.utils.internal", + "obj": "merge_data", + "line": 241, + "column": 0, + "endLine": 241, + "endColumn": 14, + "path": "src\\supervision\\detection\\utils\\internal.py", + "symbol": "too-many-branches", + "message": "Too many branches (13/12)", + "message-id": "R0912" + }, + { + "type": "refactor", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "box_iou", + "line": 90, + "column": 0, + "endLine": 90, + "endColumn": 11, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "too-many-locals", + "message": "Too many local variables (21/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "box_iou_batch", + "line": 162, + "column": 0, + "endLine": 162, + "endColumn": 17, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "too-many-locals", + "message": "Too many local variables (22/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "_jaccard", + "line": 264, + "column": 0, + "endLine": 264, + "endColumn": 12, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "too-many-locals", + "message": "Too many local variables (19/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "oriented_box_iou_batch", + "line": 426, + "column": 0, + "endLine": 426, + "endColumn": 26, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "too-many-locals", + "message": "Too many local variables (24/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "oriented_box_iou_batch", + "line": 493, + "column": 8, + "endLine": 506, + "endColumn": 13, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "no-else-raise", + "message": "Unnecessary \"elif\" after \"raise\", remove the leading \"el\" from \"elif\"", + "message-id": "R1720" + }, + { + "type": "refactor", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "oriented_box_iou_batch", + "line": 426, + "column": 0, + "endLine": 426, + "endColumn": 26, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "too-many-branches", + "message": "Too many branches (13/12)", + "message-id": "R0912" + }, + { + "type": "refactor", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "compact_mask_iou_batch", + "line": 569, + "column": 0, + "endLine": 569, + "endColumn": 26, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "too-many-locals", + "message": "Too many local variables (43/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "oriented_box_non_max_suppression", + "line": 1306, + "column": 8, + "endLine": 1319, + "endColumn": 13, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "no-else-raise", + "message": "Unnecessary \"elif\" after \"raise\", remove the leading \"el\" from \"elif\"", + "message-id": "R1720" + }, + { + "type": "refactor", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "oriented_box_non_max_merge", + "line": 1421, + "column": 8, + "endLine": 1434, + "endColumn": 13, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "no-else-raise", + "message": "Unnecessary \"elif\" after \"raise\", remove the leading \"el\" from \"elif\"", + "message-id": "R1720" + }, + { + "type": "refactor", + "module": "supervision.detection.utils.masks", + "obj": "calculate_masks_centroids", + "line": 90, + "column": 0, + "endLine": 90, + "endColumn": 29, + "path": "src\\supervision\\detection\\utils\\masks.py", + "symbol": "too-many-locals", + "message": "Too many local variables (24/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.detection.utils.masks", + "obj": "contains_multiple_segments", + "line": 251, + "column": 7, + "endLine": 251, + "endColumn": 46, + "path": "src\\supervision\\detection\\utils\\masks.py", + "symbol": "consider-using-in", + "message": "Consider merging these comparisons with 'in' by using 'connectivity not in (4, 8)'. Use a set instead if elements are hashable.", + "message-id": "R1714" + }, + { + "type": "refactor", + "module": "supervision.detection.utils.masks", + "obj": "filter_segments_by_distance", + "line": 291, + "column": 0, + "endLine": 291, + "endColumn": 31, + "path": "src\\supervision\\detection\\utils\\masks.py", + "symbol": "too-many-locals", + "message": "Too many local variables (26/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.detection.utils.masks", + "obj": "filter_segments_by_distance", + "line": 291, + "column": 0, + "endLine": 291, + "endColumn": 31, + "path": "src\\supervision\\detection\\utils\\masks.py", + "symbol": "too-many-branches", + "message": "Too many branches (13/12)", + "message-id": "R0912" + }, + { + "type": "refactor", + "module": "supervision.draw.color", + "obj": "Color.from_hex", + "line": 141, + "column": 8, + "endLine": 146, + "endColumn": 34, + "path": "src\\supervision\\draw\\color.py", + "symbol": "no-else-return", + "message": "Unnecessary \"else\" after \"return\", remove the \"else\" and de-indent the code inside it", + "message-id": "R1705" + }, + { + "type": "refactor", + "module": "supervision.draw.utils", + "obj": "draw_text", + "line": 218, + "column": 0, + "endLine": 218, + "endColumn": 13, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (9/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.draw.utils", + "obj": "draw_text", + "line": 218, + "column": 0, + "endLine": 218, + "endColumn": 13, + "path": "src\\supervision\\draw\\utils.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (9/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.key_points.annotators", + "obj": "BaseKeyPointAnnotator", + "line": 24, + "column": 0, + "endLine": 24, + "endColumn": 27, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.key_points.annotators", + "obj": "VertexAnnotator", + "line": 30, + "column": 0, + "endLine": 30, + "endColumn": 21, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.key_points.annotators", + "obj": "EdgeAnnotator", + "line": 111, + "column": 0, + "endLine": 111, + "endColumn": 19, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.key_points.annotators", + "obj": "_BaseVertexEllipseAnnotator._iter_ellipse_params", + "line": 330, + "column": 4, + "endLine": 330, + "endColumn": 28, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "too-many-locals", + "message": "Too many local variables (20/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.key_points.annotators", + "obj": "_BaseVertexEllipseAnnotator", + "line": 261, + "column": 0, + "endLine": 261, + "endColumn": 33, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.key_points.annotators", + "obj": "VertexEllipseAreaAnnotator", + "line": 370, + "column": 0, + "endLine": 370, + "endColumn": 32, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.key_points.annotators", + "obj": "VertexEllipseOutlineAnnotator", + "line": 471, + "column": 0, + "endLine": 471, + "endColumn": 35, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.key_points.annotators", + "obj": "VertexEllipseHaloAnnotator.annotate", + "line": 606, + "column": 4, + "endLine": 606, + "endColumn": 16, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "too-many-locals", + "message": "Too many local variables (39/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.key_points.annotators", + "obj": "VertexEllipseHaloAnnotator", + "line": 568, + "column": 0, + "endLine": 568, + "endColumn": 32, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.key_points.annotators", + "obj": "VertexLabelAnnotator.__init__", + "line": 709, + "column": 4, + "endLine": 709, + "endColumn": 16, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (7/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.key_points.annotators", + "obj": "VertexLabelAnnotator.__init__", + "line": 709, + "column": 4, + "endLine": 709, + "endColumn": 16, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (7/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.key_points.annotators", + "obj": "VertexLabelAnnotator.annotate", + "line": 740, + "column": 4, + "endLine": 740, + "endColumn": 16, + "path": "src\\supervision\\key_points\\annotators.py", + "symbol": "too-many-locals", + "message": "Too many local variables (26/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.key_points.core", + "obj": "KeyPoints.__init__", + "line": 245, + "column": 4, + "endLine": 245, + "endColumn": 16, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (7/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.key_points.core", + "obj": "KeyPoints.__init__", + "line": 245, + "column": 4, + "endLine": 245, + "endColumn": 16, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (6/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.key_points.core", + "obj": "KeyPoints.from_mediapipe", + "line": 557, + "column": 24, + "endLine": 560, + "endColumn": 25, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "unnecessary-comprehension", + "message": "Unnecessary use of a comprehension, use list(mediapipe_results.pose_landmarks.landmark) instead.", + "message-id": "R1721" + }, + { + "type": "refactor", + "module": "supervision.key_points.core", + "obj": "KeyPoints.from_detectron2", + "line": 727, + "column": 8, + "endLine": 743, + "endColumn": 30, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "no-else-return", + "message": "Unnecessary \"else\" after \"return\", remove the \"else\" and de-indent the code inside it", + "message-id": "R1705" + }, + { + "type": "refactor", + "module": "supervision.key_points.core", + "obj": "KeyPoints.from_transformers", + "line": 808, + "column": 8, + "endLine": 828, + "endColumn": 30, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "no-else-return", + "message": "Unnecessary \"else\" after \"return\", remove the \"else\" and de-indent the code inside it", + "message-id": "R1705" + }, + { + "type": "refactor", + "module": "supervision.key_points.core", + "obj": "KeyPoints.__getitem__", + "line": 925, + "column": 4, + "endLine": 925, + "endColumn": 19, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "too-many-branches", + "message": "Too many branches (22/12)", + "message-id": "R0912" + }, + { + "type": "refactor", + "module": "supervision.key_points.core", + "obj": "KeyPoints.__getitem__", + "line": 925, + "column": 4, + "endLine": 925, + "endColumn": 19, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "too-many-statements", + "message": "Too many statements (53/50)", + "message-id": "R0915" + }, + { + "type": "refactor", + "module": "supervision.key_points.core", + "obj": "KeyPoints.as_detections", + "line": 1224, + "column": 4, + "endLine": 1224, + "endColumn": 21, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "too-many-locals", + "message": "Too many local variables (16/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.metrics.detection", + "obj": "ConfusionMatrix.from_detections", + "line": 238, + "column": 4, + "endLine": 238, + "endColumn": 23, + "path": "src\\supervision\\metrics\\detection.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (6/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.metrics.detection", + "obj": "ConfusionMatrix.from_detections", + "line": 238, + "column": 4, + "endLine": 238, + "endColumn": 23, + "path": "src\\supervision\\metrics\\detection.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (6/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.metrics.detection", + "obj": "ConfusionMatrix.from_tensors", + "line": 322, + "column": 4, + "endLine": 322, + "endColumn": 20, + "path": "src\\supervision\\metrics\\detection.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (6/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.metrics.detection", + "obj": "ConfusionMatrix.from_tensors", + "line": 322, + "column": 4, + "endLine": 322, + "endColumn": 20, + "path": "src\\supervision\\metrics\\detection.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (6/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.metrics.detection", + "obj": "ConfusionMatrix.evaluate_detection_batch", + "line": 414, + "column": 4, + "endLine": 414, + "endColumn": 32, + "path": "src\\supervision\\metrics\\detection.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (6/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.metrics.detection", + "obj": "ConfusionMatrix.evaluate_detection_batch", + "line": 414, + "column": 4, + "endLine": 414, + "endColumn": 32, + "path": "src\\supervision\\metrics\\detection.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (6/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.metrics.detection", + "obj": "ConfusionMatrix.evaluate_detection_batch", + "line": 414, + "column": 4, + "endLine": 414, + "endColumn": 32, + "path": "src\\supervision\\metrics\\detection.py", + "symbol": "too-many-locals", + "message": "Too many local variables (36/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.metrics.detection", + "obj": "ConfusionMatrix.evaluate_detection_batch", + "line": 414, + "column": 4, + "endLine": 414, + "endColumn": 32, + "path": "src\\supervision\\metrics\\detection.py", + "symbol": "too-many-branches", + "message": "Too many branches (16/12)", + "message-id": "R0912" + }, + { + "type": "refactor", + "module": "supervision.metrics.detection", + "obj": "ConfusionMatrix.evaluate_detection_batch", + "line": 414, + "column": 4, + "endLine": 414, + "endColumn": 32, + "path": "src\\supervision\\metrics\\detection.py", + "symbol": "too-many-statements", + "message": "Too many statements (51/50)", + "message-id": "R0915" + }, + { + "type": "refactor", + "module": "supervision.metrics.detection", + "obj": "ConfusionMatrix.plot", + "line": 660, + "column": 4, + "endLine": 660, + "endColumn": 12, + "path": "src\\supervision\\metrics\\detection.py", + "symbol": "too-many-locals", + "message": "Too many local variables (22/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.metrics.detection", + "obj": "MeanAveragePrecision._average_precisions_per_class", + "line": 1067, + "column": 4, + "endLine": 1067, + "endColumn": 37, + "path": "src\\supervision\\metrics\\detection.py", + "symbol": "too-many-locals", + "message": "Too many local variables (21/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.metrics.f1_score", + "obj": "F1Score._compute_confusion_matrix", + "line": 347, + "column": 4, + "endLine": 347, + "endColumn": 33, + "path": "src\\supervision\\metrics\\f1_score.py", + "symbol": "too-many-locals", + "message": "Too many local variables (16/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.metrics.f1_score", + "obj": "F1ScoreResult", + "line": 512, + "column": 0, + "endLine": 512, + "endColumn": 19, + "path": "src\\supervision\\metrics\\f1_score.py", + "symbol": "too-many-instance-attributes", + "message": "Too many instance attributes (9/7)", + "message-id": "R0902" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_precision", + "obj": "MeanAveragePrecisionResult", + "line": 30, + "column": 0, + "endLine": 30, + "endColumn": 32, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "too-many-instance-attributes", + "message": "Too many instance attributes (9/7)", + "message-id": "R0902" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_precision", + "obj": "MeanAveragePrecisionResult.map50_95", + "line": 63, + "column": 8, + "endLine": 66, + "endColumn": 21, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "no-else-return", + "message": "Unnecessary \"else\" after \"return\", remove the \"else\" and de-indent the code inside it", + "message-id": "R1705" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_precision", + "obj": "EvaluationDataset.__init__", + "line": 266, + "column": 39, + "endLine": 266, + "endColumn": 45, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "use-dict-literal", + "message": "Consider using '{}' instead of a call to 'dict'.", + "message-id": "R1735" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_precision", + "obj": "EvaluationDataset.__init__", + "line": 267, + "column": 36, + "endLine": 267, + "endColumn": 42, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "use-dict-literal", + "message": "Consider using '{}' instead of a call to 'dict'.", + "message-id": "R1735" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_precision", + "obj": "EvaluationDataset.__init__", + "line": 268, + "column": 36, + "endLine": 268, + "endColumn": 42, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "use-dict-literal", + "message": "Consider using '{}' instead of a call to 'dict'.", + "message-id": "R1735" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_precision", + "obj": "EvaluationDataset.__init__", + "line": 269, + "column": 36, + "endLine": 269, + "endColumn": 42, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "use-dict-literal", + "message": "Consider using '{}' instead of a call to 'dict'.", + "message-id": "R1735" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_precision", + "obj": "EvaluationDataset.load_predictions", + "line": 471, + "column": 48, + "endLine": 471, + "endColumn": 87, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "unnecessary-comprehension", + "message": "Unnecessary use of a comprehension, use list(self.dataset['images']) instead.", + "message-id": "R1721" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_precision", + "obj": "EvaluationDataset.load_predictions", + "line": 489, + "column": 8, + "endLine": 520, + "endColumn": 35, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "no-else-raise", + "message": "Unnecessary \"elif\" after \"raise\", remove the leading \"el\" from \"elif\"", + "message-id": "R1720" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluatorParameters", + "line": 546, + "column": 0, + "endLine": 546, + "endColumn": 29, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (0/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluator", + "line": 584, + "column": 0, + "endLine": 584, + "endColumn": 19, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "too-many-instance-attributes", + "message": "Too many instance attributes (9/7)", + "message-id": "R0902" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluator._evaluate_image", + "line": 700, + "column": 4, + "endLine": 700, + "endColumn": 23, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "too-many-locals", + "message": "Too many local variables (29/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluator._accumulate", + "line": 825, + "column": 4, + "endLine": 825, + "endColumn": 19, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "too-many-locals", + "message": "Too many local variables (70/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluator._accumulate", + "line": 895, + "column": 8, + "endLine": 992, + "endColumn": 25, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "too-many-nested-blocks", + "message": "Too many nested blocks (6/5)", + "message-id": "R1702" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluator._accumulate", + "line": 895, + "column": 8, + "endLine": 992, + "endColumn": 25, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "too-many-nested-blocks", + "message": "Too many nested blocks (6/5)", + "message-id": "R1702" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluator._accumulate", + "line": 825, + "column": 4, + "endLine": 825, + "endColumn": 19, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "too-many-statements", + "message": "Too many statements (77/50)", + "message-id": "R0915" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_precision", + "obj": "COCOEvaluator", + "line": 584, + "column": 0, + "endLine": 584, + "endColumn": 19, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_precision", + "obj": "MeanAveragePrecision._prepare_targets", + "line": 1337, + "column": 4, + "endLine": 1337, + "endColumn": 24, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "too-many-locals", + "message": "Too many local variables (16/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_recall", + "obj": "MeanAverageRecallResult", + "line": 31, + "column": 0, + "endLine": 31, + "endColumn": 29, + "path": "src\\supervision\\metrics\\mean_average_recall.py", + "symbol": "too-many-instance-attributes", + "message": "Too many instance attributes (9/7)", + "message-id": "R0902" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_recall", + "obj": "MeanAverageRecall._compute", + "line": 381, + "column": 4, + "endLine": 381, + "endColumn": 16, + "path": "src\\supervision\\metrics\\mean_average_recall.py", + "symbol": "too-many-locals", + "message": "Too many local variables (16/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.metrics.mean_average_recall", + "obj": "MeanAverageRecall._compute_confusion_matrix", + "line": 539, + "column": 4, + "endLine": 539, + "endColumn": 33, + "path": "src\\supervision\\metrics\\mean_average_recall.py", + "symbol": "too-many-locals", + "message": "Too many local variables (17/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.metrics.precision", + "obj": "Precision._compute_confusion_matrix", + "line": 351, + "column": 4, + "endLine": 351, + "endColumn": 33, + "path": "src\\supervision\\metrics\\precision.py", + "symbol": "too-many-locals", + "message": "Too many local variables (16/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.metrics.precision", + "obj": "PrecisionResult", + "line": 521, + "column": 0, + "endLine": 521, + "endColumn": 21, + "path": "src\\supervision\\metrics\\precision.py", + "symbol": "too-many-instance-attributes", + "message": "Too many instance attributes (9/7)", + "message-id": "R0902" + }, + { + "type": "refactor", + "module": "supervision.metrics.recall", + "obj": "Recall._compute_confusion_matrix", + "line": 307, + "column": 4, + "endLine": 307, + "endColumn": 33, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "too-many-locals", + "message": "Too many local variables (16/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.metrics.recall", + "obj": "RecallResult", + "line": 479, + "column": 0, + "endLine": 479, + "endColumn": 18, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "too-many-instance-attributes", + "message": "Too many instance attributes (9/7)", + "message-id": "R0902" + }, + { + "type": "refactor", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack", + "line": 22, + "column": 0, + "endLine": 22, + "endColumn": 15, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "too-many-instance-attributes", + "message": "Too many instance attributes (13/7)", + "message-id": "R0902" + }, + { + "type": "refactor", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack.update_with_detections", + "line": 133, + "column": 8, + "endLine": 155, + "endColumn": 29, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "no-else-return", + "message": "Unnecessary \"else\" after \"return\", remove the \"else\" and de-indent the code inside it", + "message-id": "R1705" + }, + { + "type": "refactor", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack.update_with_tensors", + "line": 173, + "column": 4, + "endLine": 173, + "endColumn": 27, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "too-many-locals", + "message": "Too many local variables (35/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack.update_with_tensors", + "line": 173, + "column": 4, + "endLine": 173, + "endColumn": 27, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "too-many-branches", + "message": "Too many branches (21/12)", + "message-id": "R0912" + }, + { + "type": "refactor", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack.update_with_tensors", + "line": 173, + "column": 4, + "endLine": 173, + "endColumn": 27, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "too-many-statements", + "message": "Too many statements (92/50)", + "message-id": "R0915" + }, + { + "type": "refactor", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "STrack", + "line": 19, + "column": 0, + "endLine": 19, + "endColumn": 12, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "too-many-instance-attributes", + "message": "Too many instance attributes (16/7)", + "message-id": "R0902" + }, + { + "type": "refactor", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "STrack.__init__", + "line": 20, + "column": 4, + "endLine": 20, + "endColumn": 16, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (6/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.tracker.byte_tracker.single_object_track", + "obj": "STrack.__init__", + "line": 20, + "column": 4, + "endLine": 20, + "endColumn": 16, + "path": "src\\supervision\\tracker\\byte_tracker\\single_object_track.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (6/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.utils.image", + "obj": "overlay_image", + "line": 283, + "column": 0, + "endLine": 283, + "endColumn": 17, + "path": "src\\supervision\\utils\\image.py", + "symbol": "too-many-locals", + "message": "Too many local variables (25/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.utils.image", + "obj": "create_tiles", + "line": 565, + "column": 0, + "endLine": 565, + "endColumn": 16, + "path": "src\\supervision\\utils\\image.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (16/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.utils.image", + "obj": "create_tiles", + "line": 565, + "column": 0, + "endLine": 565, + "endColumn": 16, + "path": "src\\supervision\\utils\\image.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (16/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.utils.image", + "obj": "create_tiles", + "line": 565, + "column": 0, + "endLine": 565, + "endColumn": 16, + "path": "src\\supervision\\utils\\image.py", + "symbol": "too-many-locals", + "message": "Too many local variables (20/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.utils.image", + "obj": "_generate_tiles", + "line": 767, + "column": 0, + "endLine": 767, + "endColumn": 19, + "path": "src\\supervision\\utils\\image.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (15/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.utils.image", + "obj": "_generate_tiles", + "line": 767, + "column": 0, + "endLine": 767, + "endColumn": 19, + "path": "src\\supervision\\utils\\image.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (15/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.utils.image", + "obj": "_generate_tiles", + "line": 767, + "column": 0, + "endLine": 767, + "endColumn": 19, + "path": "src\\supervision\\utils\\image.py", + "symbol": "too-many-locals", + "message": "Too many local variables (18/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.utils.image", + "obj": "_draw_texts", + "line": 816, + "column": 0, + "endLine": 816, + "endColumn": 15, + "path": "src\\supervision\\utils\\image.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (10/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.utils.image", + "obj": "_draw_texts", + "line": 816, + "column": 0, + "endLine": 816, + "endColumn": 15, + "path": "src\\supervision\\utils\\image.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (10/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.utils.image", + "obj": "_draw_texts", + "line": 816, + "column": 0, + "endLine": 816, + "endColumn": 15, + "path": "src\\supervision\\utils\\image.py", + "symbol": "too-many-locals", + "message": "Too many local variables (18/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.utils.internal", + "obj": "classproperty", + "line": 133, + "column": 0, + "endLine": 133, + "endColumn": 19, + "path": "src\\supervision\\utils\\internal.py", + "symbol": "too-few-public-methods", + "message": "Too few public methods (1/2)", + "message-id": "R0903" + }, + { + "type": "refactor", + "module": "supervision.utils.video", + "obj": "process_video", + "line": 283, + "column": 0, + "endLine": 283, + "endColumn": 17, + "path": "src\\supervision\\utils\\video.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (9/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.utils.video", + "obj": "process_video", + "line": 283, + "column": 0, + "endLine": 283, + "endColumn": 17, + "path": "src\\supervision\\utils\\video.py", + "symbol": "too-many-locals", + "message": "Too many local variables (26/15)", + "message-id": "R0914" + }, + { + "type": "refactor", + "module": "supervision.utils.video", + "obj": "process_video", + "line": 283, + "column": 0, + "endLine": 283, + "endColumn": 17, + "path": "src\\supervision\\utils\\video.py", + "symbol": "too-many-branches", + "message": "Too many branches (14/12)", + "message-id": "R0912" + }, + { + "type": "refactor", + "module": "supervision.utils.video", + "obj": "process_video", + "line": 283, + "column": 0, + "endLine": 283, + "endColumn": 17, + "path": "src\\supervision\\utils\\video.py", + "symbol": "too-many-statements", + "message": "Too many statements (56/50)", + "message-id": "R0915" + }, + { + "type": "refactor", + "module": "supervision.validators", + "obj": "_validate_data", + "line": 197, + "column": 12, + "endLine": 202, + "endColumn": 17, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "no-else-raise", + "message": "Unnecessary \"elif\" after \"raise\", remove the leading \"el\" from \"elif\"", + "message-id": "R1720" + }, + { + "type": "refactor", + "module": "supervision.validators", + "obj": "_validate_detections_fields", + "line": 259, + "column": 0, + "endLine": 259, + "endColumn": 31, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (6/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.validators", + "obj": "_validate_detections_fields", + "line": 259, + "column": 0, + "endLine": 259, + "endColumn": 31, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (6/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.validators", + "obj": "_validate_keypoints_fields", + "line": 292, + "column": 0, + "endLine": 292, + "endColumn": 30, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "too-many-arguments", + "message": "Too many arguments (6/5)", + "message-id": "R0913" + }, + { + "type": "refactor", + "module": "supervision.validators", + "obj": "_validate_keypoints_fields", + "line": 292, + "column": 0, + "endLine": 292, + "endColumn": 30, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "too-many-positional-arguments", + "message": "Too many positional arguments (6/5)", + "message-id": "R0917" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[78:229]\n==supervision.metrics.precision:[81:232]\n self._metric_target = metric_target\n self.averaging_method = averaging_method\n\n self._predictions_list: list[Detections] = []\n self._targets_list: list[Detections] = []\n\n def reset(self) -> None:\n \"\"\"\n Reset the metric to its initial state, clearing all stored data.\n \"\"\"\n self._predictions_list = []\n self._targets_list = []\n\n def update(\n self,\n predictions: Detections | list[Detections],\n targets: Detections | list[Detections],\n ) -> Precision:\n \"\"\"\n Add new predictions and targets to the metric, but do not compute the result.\n\n Args:\n predictions: The predicted detections.\n targets: The target detections.\n\n Returns:\n The updated metric instance.\n \"\"\"\n if not isinstance(predictions, list):\n predictions = [predictions]\n if not isinstance(targets, list):\n targets = [targets]\n\n if len(predictions) != len(targets):\n raise ValueError(\n f\"The number of predictions ({len(predictions)}) and\"\n f\" targets ({len(targets)}) during the update must be the same.\"\n )\n\n self._predictions_list.extend(predictions)\n self._targets_list.extend(targets)\n\n return self\n\n def compute(self) -> PrecisionResult:\n \"\"\"\n Calculate the precision metric based on the stored predictions and ground-truth\n data, at different IoU thresholds.\n\n Returns:\n The precision metric result.\n \"\"\"\n result = self._compute(self._predictions_list, self._targets_list)\n\n small_predictions, small_targets = self._filter_predictions_and_targets_by_size(\n self._predictions_list, self._targets_list, ObjectSizeCategory.SMALL\n )\n result.small_objects = self._compute(small_predictions, small_targets)\n\n medium_predictions, medium_targets = (\n self._filter_predictions_and_targets_by_size(\n self._predictions_list, self._targets_list, ObjectSizeCategory.MEDIUM\n )\n )\n result.medium_objects = self._compute(medium_predictions, medium_targets)\n\n large_predictions, large_targets = self._filter_predictions_and_targets_by_size(\n self._predictions_list, self._targets_list, ObjectSizeCategory.LARGE\n )\n result.large_objects = self._compute(large_predictions, large_targets)\n\n return result\n\n def _compute(\n self, predictions_list: list[Detections], targets_list: list[Detections]\n ) -> PrecisionResult:\n \"\"\"Build per-image stats tuples and delegate to class-level computation.\n\n Each stats tuple is ``(matches, confidence, class_ids, true_class_ids)``:\n - Both empty: skip (no information).\n - Targets empty, predictions present: all predictions are FPs; true_class_ids\n is ``zeros((0,))``.\n - Targets present: IoU matching produces ``matches`` array.\n \"\"\"\n iou_thresholds = np.linspace(0.5, 0.95, 10)\n stats: list[Any] = []\n\n for predictions, targets in zip(predictions_list, targets_list):\n prediction_contents = self._detections_content(predictions)\n target_contents = self._detections_content(targets)\n\n if len(targets) == 0 and len(predictions) > 0:\n # Only predictions are present (e.g. a background image); every\n # prediction is a false positive.\n if predictions.class_id is None or predictions.confidence is None:\n continue\n stats.append(\n (\n np.zeros(\n (len(predictions), iou_thresholds.size), dtype=np.bool_\n ),\n predictions.confidence,\n predictions.class_id,\n np.zeros((0,), dtype=np.int32),\n )\n )\n elif len(targets) > 0:\n if len(predictions) == 0:\n stats.append(\n (\n np.zeros((0, iou_thresholds.size), dtype=bool),\n np.zeros((0,), dtype=np.float32),\n np.zeros((0,), dtype=int),\n targets.class_id,\n )\n )\n\n else:\n if self._metric_target == MetricTarget.BOXES:\n iou = box_iou_batch(target_contents, prediction_contents)\n elif self._metric_target == MetricTarget.MASKS:\n iou = mask_iou_batch(target_contents, prediction_contents)\n elif self._metric_target == MetricTarget.ORIENTED_BOUNDING_BOXES:\n iou = oriented_box_iou_batch(\n target_contents, prediction_contents\n )\n else:\n raise ValueError(\n \"Unsupported metric target for IoU calculation\"\n )\n\n matches = self._match_detection_batch(\n predictions.class_id\n if predictions.class_id is not None\n else np.array([]),\n targets.class_id\n if targets.class_id is not None\n else np.array([]),\n iou,\n iou_thresholds,\n )\n stats.append(\n (\n matches,\n predictions.confidence,\n predictions.class_id,\n targets.class_id,\n )\n )\n\n if not stats:", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[435:511]\n==supervision.metrics.precision:[441:520]\n if self._metric_target == MetricTarget.BOXES:\n result_boxes: npt.NDArray[np.float32] = detections.xyxy\n return result_boxes\n if self._metric_target == MetricTarget.MASKS:\n if detections.mask is not None:\n result_masks: npt.NDArray[np.bool_] = detections.mask\n return result_masks\n return self._make_empty_content()\n if self._metric_target == MetricTarget.ORIENTED_BOUNDING_BOXES:\n obb = detections.data.get(ORIENTED_BOX_COORDINATES)\n if obb is not None and len(obb) > 0:\n result_obb: npt.NDArray[np.float32] = np.array(obb, dtype=np.float32)\n return result_obb\n return self._make_empty_content()\n raise ValueError(f\"Invalid metric target: {self._metric_target}\")\n\n def _make_empty_content(self) -> npt.NDArray[Any]:\n if self._metric_target == MetricTarget.BOXES:\n empty_boxes: npt.NDArray[np.float32] = np.empty((0, 4), dtype=np.float32)\n return empty_boxes\n if self._metric_target == MetricTarget.MASKS:\n empty_masks: npt.NDArray[np.bool_] = np.empty((0, 0, 0), dtype=bool)\n return empty_masks\n if self._metric_target == MetricTarget.ORIENTED_BOUNDING_BOXES:\n empty_obb: npt.NDArray[np.float32] = np.empty((0, 4, 2), dtype=np.float32)\n return empty_obb\n raise ValueError(f\"Invalid metric target: {self._metric_target}\")\n\n def _filter_detections_by_size(\n self, detections: Detections, size_category: ObjectSizeCategory\n ) -> Detections:\n \"\"\"Return a copy of detections with contents filtered by object size.\"\"\"\n new_detections = deepcopy(detections)\n if detections.is_empty() or size_category == ObjectSizeCategory.ANY:\n return new_detections\n\n sizes = get_detection_size_category(new_detections, self._metric_target)\n size_mask = sizes == size_category.value\n\n new_detections.xyxy = new_detections.xyxy[size_mask]\n if new_detections.mask is not None:\n new_detections.mask = new_detections.mask[size_mask]\n if new_detections.class_id is not None:\n new_detections.class_id = new_detections.class_id[size_mask]\n if new_detections.confidence is not None:\n new_detections.confidence = new_detections.confidence[size_mask]\n if new_detections.tracker_id is not None:\n new_detections.tracker_id = new_detections.tracker_id[size_mask]\n if new_detections.data is not None:\n for key, value in new_detections.data.items():\n new_detections.data[key] = np.array(value)[size_mask]\n\n return new_detections\n\n def _filter_predictions_and_targets_by_size(\n self,\n predictions_list: list[Detections],\n targets_list: list[Detections],\n size_category: ObjectSizeCategory,\n ) -> tuple[list[Detections], list[Detections]]:\n \"\"\"\n Filter predictions and targets by object size category.\n \"\"\"\n new_predictions_list = []\n new_targets_list = []\n for predictions, targets in zip(predictions_list, targets_list):\n new_predictions_list.append(\n self._filter_detections_by_size(predictions, size_category)\n )\n new_targets_list.append(\n self._filter_detections_by_size(targets, size_category)\n )\n return new_predictions_list, new_targets_list\n\n\n@dataclass", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[435:510]\n==supervision.metrics.mean_average_recall:[630:706]\n if self._metric_target == MetricTarget.BOXES:\n result_boxes: npt.NDArray[np.float32] = detections.xyxy\n return result_boxes\n if self._metric_target == MetricTarget.MASKS:\n if detections.mask is not None:\n result_masks: npt.NDArray[np.bool_] = detections.mask\n return result_masks\n return self._make_empty_content()\n if self._metric_target == MetricTarget.ORIENTED_BOUNDING_BOXES:\n obb = detections.data.get(ORIENTED_BOX_COORDINATES)\n if obb is not None and len(obb) > 0:\n result_obb: npt.NDArray[np.float32] = np.array(obb, dtype=np.float32)\n return result_obb\n return self._make_empty_content()\n raise ValueError(f\"Invalid metric target: {self._metric_target}\")\n\n def _make_empty_content(self) -> npt.NDArray[Any]:\n if self._metric_target == MetricTarget.BOXES:\n empty_boxes: npt.NDArray[np.float32] = np.empty((0, 4), dtype=np.float32)\n return empty_boxes\n if self._metric_target == MetricTarget.MASKS:\n empty_masks: npt.NDArray[np.bool_] = np.empty((0, 0, 0), dtype=bool)\n return empty_masks\n if self._metric_target == MetricTarget.ORIENTED_BOUNDING_BOXES:\n empty_obb: npt.NDArray[np.float32] = np.empty((0, 4, 2), dtype=np.float32)\n return empty_obb\n raise ValueError(f\"Invalid metric target: {self._metric_target}\")\n\n def _filter_detections_by_size(\n self, detections: Detections, size_category: ObjectSizeCategory\n ) -> Detections:\n \"\"\"Return a copy of detections with contents filtered by object size.\"\"\"\n new_detections = deepcopy(detections)\n if detections.is_empty() or size_category == ObjectSizeCategory.ANY:\n return new_detections\n\n sizes = get_detection_size_category(new_detections, self._metric_target)\n size_mask = sizes == size_category.value\n\n new_detections.xyxy = new_detections.xyxy[size_mask]\n if new_detections.mask is not None:\n new_detections.mask = new_detections.mask[size_mask]\n if new_detections.class_id is not None:\n new_detections.class_id = new_detections.class_id[size_mask]\n if new_detections.confidence is not None:\n new_detections.confidence = new_detections.confidence[size_mask]\n if new_detections.tracker_id is not None:\n new_detections.tracker_id = new_detections.tracker_id[size_mask]\n if new_detections.data is not None:\n for key, value in new_detections.data.items():\n new_detections.data[key] = np.array(value)[size_mask]\n\n return new_detections\n\n def _filter_predictions_and_targets_by_size(\n self,\n predictions_list: list[Detections],\n targets_list: list[Detections],\n size_category: ObjectSizeCategory,\n ) -> tuple[list[Detections], list[Detections]]:\n \"\"\"\n Filter predictions and targets by object size category.\n \"\"\"\n new_predictions_list = []\n new_targets_list = []\n for predictions, targets in zip(predictions_list, targets_list):\n new_predictions_list.append(\n self._filter_detections_by_size(predictions, size_category)\n )\n new_targets_list.append(\n self._filter_detections_by_size(targets, size_category)\n )\n return new_predictions_list, new_targets_list\n\n", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[320:400]\n==supervision.metrics.precision:[325:403]\n num_predictions, num_iou_levels = (\n predictions_classes.shape[0],\n iou_thresholds.shape[0],\n )\n correct = np.zeros((num_predictions, num_iou_levels), dtype=bool)\n correct_class = target_classes[:, None] == predictions_classes\n\n for i, iou_level in enumerate(iou_thresholds):\n matched_indices = np.where((iou >= iou_level) & correct_class)\n\n if matched_indices[0].shape[0]:\n combined_indices = np.stack(matched_indices, axis=1)\n iou_values = iou[matched_indices][:, None]\n matches = np.hstack([combined_indices, iou_values])\n\n if matched_indices[0].shape[0] > 1:\n matches = matches[matches[:, 2].argsort()[::-1]]\n matches = matches[np.unique(matches[:, 1], return_index=True)[1]]\n matches = matches[np.unique(matches[:, 0], return_index=True)[1]]\n\n correct[matches[:, 1].astype(int), i] = True\n result_correct: npt.NDArray[np.bool_] = correct\n return result_correct\n\n @staticmethod\n def _compute_confusion_matrix(\n sorted_matches: npt.NDArray[np.bool_],\n sorted_prediction_class_ids: npt.NDArray[np.int32],\n unique_classes: npt.NDArray[np.int32],\n class_counts: npt.NDArray[np.int32],\n ) -> npt.NDArray[np.float64]:\n \"\"\"\n Compute the confusion matrix for each class and IoU threshold.\n\n Assumes the matches and prediction_class_ids are sorted by confidence\n in descending order.\n\n Args:\n sorted_matches: shape (P, Th), that is True\n if the prediction is a true positive at the given IoU threshold.\n sorted_prediction_class_ids: shape (P,), containing\n the class id for each prediction.\n unique_classes: shape (C,), containing the unique\n class ids.\n class_counts: shape (C,), containing the number\n of true instances for each class.\n\n Returns:\n shape (C, Th, 3), containing the true positives, false\n positives, and false negatives for each class and IoU threshold.\n \"\"\"\n\n num_thresholds = sorted_matches.shape[1]\n num_classes = unique_classes.shape[0]\n\n confusion_matrix: npt.NDArray[np.float64] = np.zeros(\n (num_classes, num_thresholds, 3), dtype=np.float64\n )\n for class_idx, class_id in enumerate(unique_classes):\n is_class = sorted_prediction_class_ids == class_id\n num_true = class_counts[class_idx]\n num_predictions = is_class.sum()\n\n if num_predictions == 0:\n true_positives = np.zeros(num_thresholds)\n false_positives = np.zeros(num_thresholds)\n false_negatives = np.full(num_thresholds, num_true)\n elif num_true == 0:\n true_positives = np.zeros(num_thresholds)\n false_positives = np.full(num_thresholds, num_predictions)\n false_negatives = np.zeros(num_thresholds)\n else:\n true_positives = sorted_matches[is_class].sum(0)\n false_positives = (1 - sorted_matches[is_class]).sum(0)\n false_negatives = num_true - true_positives\n confusion_matrix[class_idx] = np.stack(\n [true_positives, false_positives, false_negatives], axis=1\n )", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[185:229]\n==supervision.metrics.recall:[165:209]\n if len(predictions) == 0:\n stats.append(\n (\n np.zeros((0, iou_thresholds.size), dtype=bool),\n np.zeros((0,), dtype=np.float32),\n np.zeros((0,), dtype=int),\n targets.class_id,\n )\n )\n\n else:\n if self._metric_target == MetricTarget.BOXES:\n iou = box_iou_batch(target_contents, prediction_contents)\n elif self._metric_target == MetricTarget.MASKS:\n iou = mask_iou_batch(target_contents, prediction_contents)\n elif self._metric_target == MetricTarget.ORIENTED_BOUNDING_BOXES:\n iou = oriented_box_iou_batch(\n target_contents, prediction_contents\n )\n else:\n raise ValueError(\n \"Unsupported metric target for IoU calculation\"\n )\n\n matches = self._match_detection_batch(\n predictions.class_id\n if predictions.class_id is not None\n else np.array([]),\n targets.class_id\n if targets.class_id is not None\n else np.array([]),\n iou,\n iou_thresholds,\n )\n stats.append(\n (\n matches,\n predictions.confidence,\n predictions.class_id,\n targets.class_id,\n )\n )\n\n if not stats:", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.mean_average_recall:[317:395]\n==supervision.metrics.recall:[91:169]\n self._predictions_list = []\n self._targets_list = []\n\n def update(\n self,\n predictions: Detections | list[Detections],\n targets: Detections | list[Detections],\n ) -> MeanAverageRecall:\n \"\"\"\n Add new predictions and targets to the metric, but do not compute the result.\n\n Args:\n predictions: The predicted detections.\n targets: The target detections.\n\n Returns:\n The updated metric instance.\n \"\"\"\n if not isinstance(predictions, list):\n predictions = [predictions]\n if not isinstance(targets, list):\n targets = [targets]\n\n if len(predictions) != len(targets):\n raise ValueError(\n f\"The number of predictions ({len(predictions)}) and\"\n f\" targets ({len(targets)}) during the update must be the same.\"\n )\n\n self._predictions_list.extend(predictions)\n self._targets_list.extend(targets)\n\n return self\n\n def compute(self) -> MeanAverageRecallResult:\n \"\"\"\n Calculate the Mean Average Recall metric based on the stored predictions\n and ground-truth, at different IoU thresholds and maximum detection counts.\n\n Returns:\n The Mean Average Recall metric result.\n \"\"\"\n result = self._compute(self._predictions_list, self._targets_list)\n\n small_predictions, small_targets = self._filter_predictions_and_targets_by_size(\n self._predictions_list, self._targets_list, ObjectSizeCategory.SMALL\n )\n result.small_objects = self._compute(small_predictions, small_targets)\n\n medium_predictions, medium_targets = (\n self._filter_predictions_and_targets_by_size(\n self._predictions_list, self._targets_list, ObjectSizeCategory.MEDIUM\n )\n )\n result.medium_objects = self._compute(medium_predictions, medium_targets)\n\n large_predictions, large_targets = self._filter_predictions_and_targets_by_size(\n self._predictions_list, self._targets_list, ObjectSizeCategory.LARGE\n )\n result.large_objects = self._compute(large_predictions, large_targets)\n\n return result\n\n def _compute(\n self, predictions_list: list[Detections], targets_list: list[Detections]\n ) -> MeanAverageRecallResult:\n iou_thresholds = np.linspace(0.5, 0.95, 10)\n stats: list[Any] = []\n\n for predictions, targets in zip(predictions_list, targets_list):\n prediction_contents = self._detections_content(predictions)\n target_contents = self._detections_content(targets)\n\n if len(targets) > 0:\n if len(predictions) == 0:\n stats.append(\n (\n np.zeros((0, iou_thresholds.size), dtype=bool),", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[78:169]\n==supervision.metrics.recall:[81:164]\n self._metric_target = metric_target\n self.averaging_method = averaging_method\n\n self._predictions_list: list[Detections] = []\n self._targets_list: list[Detections] = []\n\n def reset(self) -> None:\n \"\"\"\n Reset the metric to its initial state, clearing all stored data.\n \"\"\"\n self._predictions_list = []\n self._targets_list = []\n\n def update(\n self,\n predictions: Detections | list[Detections],\n targets: Detections | list[Detections],\n ) -> Recall:\n \"\"\"\n Add new predictions and targets to the metric, but do not compute the result.\n\n Args:\n predictions: The predicted detections.\n targets: The target detections.\n\n Returns:\n The updated metric instance.\n \"\"\"\n if not isinstance(predictions, list):\n predictions = [predictions]\n if not isinstance(targets, list):\n targets = [targets]\n\n if len(predictions) != len(targets):\n raise ValueError(\n f\"The number of predictions ({len(predictions)}) and\"\n f\" targets ({len(targets)}) during the update must be the same.\"\n )\n\n self._predictions_list.extend(predictions)\n self._targets_list.extend(targets)\n\n return self\n\n def compute(self) -> RecallResult:\n \"\"\"\n Calculate the recall metric based on the stored predictions and ground-truth\n data, at different IoU thresholds.\n\n Returns:\n The recall metric result.\n \"\"\"\n result = self._compute(self._predictions_list, self._targets_list)\n\n small_predictions, small_targets = self._filter_predictions_and_targets_by_size(\n self._predictions_list, self._targets_list, ObjectSizeCategory.SMALL\n )\n result.small_objects = self._compute(small_predictions, small_targets)\n\n medium_predictions, medium_targets = (\n self._filter_predictions_and_targets_by_size(\n self._predictions_list, self._targets_list, ObjectSizeCategory.MEDIUM\n )\n )\n result.medium_objects = self._compute(medium_predictions, medium_targets)\n\n large_predictions, large_targets = self._filter_predictions_and_targets_by_size(\n self._predictions_list, self._targets_list, ObjectSizeCategory.LARGE\n )\n result.large_objects = self._compute(large_predictions, large_targets)\n\n return result\n\n def _compute(\n self, predictions_list: list[Detections], targets_list: list[Detections]\n ) -> RecallResult:\n iou_thresholds = np.linspace(0.5, 0.95, 10)\n stats: list[Any] = []\n\n for predictions, targets in zip(predictions_list, targets_list):\n prediction_contents = self._detections_content(predictions)\n target_contents = self._detections_content(targets)\n", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.mean_average_recall:[504:587]\n==supervision.metrics.recall:[272:353]\n return recall_scores, recall_per_class, unique_classes\n\n @staticmethod\n def _match_detection_batch(\n predictions_classes: npt.NDArray[np.int32],\n target_classes: npt.NDArray[np.int32],\n iou: npt.NDArray[np.float32],\n iou_thresholds: npt.NDArray[np.float32],\n ) -> npt.NDArray[np.bool_]:\n num_predictions, num_iou_levels = (\n predictions_classes.shape[0],\n iou_thresholds.shape[0],\n )\n correct = np.zeros((num_predictions, num_iou_levels), dtype=bool)\n correct_class = target_classes[:, None] == predictions_classes\n\n for i, iou_level in enumerate(iou_thresholds):\n matched_indices = np.where((iou >= iou_level) & correct_class)\n\n if matched_indices[0].shape[0]:\n combined_indices = np.stack(matched_indices, axis=1)\n iou_values = iou[matched_indices][:, None]\n matches = np.hstack([combined_indices, iou_values])\n\n if matched_indices[0].shape[0] > 1:\n matches = matches[matches[:, 2].argsort()[::-1]]\n matches = matches[np.unique(matches[:, 1], return_index=True)[1]]\n matches = matches[np.unique(matches[:, 0], return_index=True)[1]]\n\n correct[matches[:, 1].astype(int), i] = True\n result_correct: npt.NDArray[np.bool_] = correct\n return result_correct\n\n @staticmethod\n def _compute_confusion_matrix(\n sorted_matches: npt.NDArray[np.bool_],\n sorted_prediction_class_ids: npt.NDArray[np.int32],\n unique_classes: npt.NDArray[np.int32],\n class_counts: npt.NDArray[np.int32],\n ) -> npt.NDArray[np.float64]:\n \"\"\"\n Compute the confusion matrix for each class and IoU threshold.\n\n Assumes the matches and prediction_class_ids are sorted by confidence\n in descending order.\n\n Args:\n sorted_matches: shape (P, Th), that is True\n if the prediction is a true positive at the given IoU threshold.\n sorted_prediction_class_ids: shape (P,), containing\n the class id for each prediction.\n unique_classes: shape (C,), containing the unique\n class ids.\n class_counts: shape (C,), containing the number\n of true instances for each class.\n max_detections: The maximum number of detections to\n consider for each class. Extra detections are considered false\n positives. By default, all detections are considered.\n\n Returns:\n shape (C, Th, 3), containing the true positives, false\n positives, and false negatives for each class and IoU threshold.\n \"\"\"\n num_thresholds = sorted_matches.shape[1]\n num_classes = unique_classes.shape[0]\n\n confusion_matrix: npt.NDArray[np.float64] = np.zeros(\n (num_classes, num_thresholds, 3), dtype=np.float64\n )\n for class_idx, class_id in enumerate(unique_classes):\n is_class = sorted_prediction_class_ids == class_id\n num_true = class_counts[class_idx]\n num_predictions = is_class.sum()\n\n if num_predictions == 0:\n true_positives = np.zeros(num_thresholds)\n false_positives = np.zeros(num_thresholds)\n false_negatives = np.full(num_thresholds, num_true)\n elif num_true == 0:\n true_positives = np.zeros(num_thresholds)\n false_positives = np.full(num_thresholds, num_predictions)\n false_negatives = np.zeros(num_thresholds)\n else:", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[320:393]\n==supervision.metrics.mean_average_recall:[513:587]\n num_predictions, num_iou_levels = (\n predictions_classes.shape[0],\n iou_thresholds.shape[0],\n )\n correct = np.zeros((num_predictions, num_iou_levels), dtype=bool)\n correct_class = target_classes[:, None] == predictions_classes\n\n for i, iou_level in enumerate(iou_thresholds):\n matched_indices = np.where((iou >= iou_level) & correct_class)\n\n if matched_indices[0].shape[0]:\n combined_indices = np.stack(matched_indices, axis=1)\n iou_values = iou[matched_indices][:, None]\n matches = np.hstack([combined_indices, iou_values])\n\n if matched_indices[0].shape[0] > 1:\n matches = matches[matches[:, 2].argsort()[::-1]]\n matches = matches[np.unique(matches[:, 1], return_index=True)[1]]\n matches = matches[np.unique(matches[:, 0], return_index=True)[1]]\n\n correct[matches[:, 1].astype(int), i] = True\n result_correct: npt.NDArray[np.bool_] = correct\n return result_correct\n\n @staticmethod\n def _compute_confusion_matrix(\n sorted_matches: npt.NDArray[np.bool_],\n sorted_prediction_class_ids: npt.NDArray[np.int32],\n unique_classes: npt.NDArray[np.int32],\n class_counts: npt.NDArray[np.int32],\n ) -> npt.NDArray[np.float64]:\n \"\"\"\n Compute the confusion matrix for each class and IoU threshold.\n\n Assumes the matches and prediction_class_ids are sorted by confidence\n in descending order.\n\n Args:\n sorted_matches: shape (P, Th), that is True\n if the prediction is a true positive at the given IoU threshold.\n sorted_prediction_class_ids: shape (P,), containing\n the class id for each prediction.\n unique_classes: shape (C,), containing the unique\n class ids.\n class_counts: shape (C,), containing the number\n of true instances for each class.\n max_detections: The maximum number of detections to\n consider for each class. Extra detections are considered false\n positives. By default, all detections are considered.\n\n Returns:\n shape (C, Th, 3), containing the true positives, false\n positives, and false negatives for each class and IoU threshold.\n \"\"\"\n num_thresholds = sorted_matches.shape[1]\n num_classes = unique_classes.shape[0]\n\n confusion_matrix: npt.NDArray[np.float64] = np.zeros(\n (num_classes, num_thresholds, 3), dtype=np.float64\n )\n for class_idx, class_id in enumerate(unique_classes):\n is_class = sorted_prediction_class_ids == class_id\n num_true = class_counts[class_idx]\n num_predictions = is_class.sum()\n\n if num_predictions == 0:\n true_positives = np.zeros(num_thresholds)\n false_positives = np.zeros(num_thresholds)\n false_negatives = np.full(num_thresholds, num_true)\n elif num_true == 0:\n true_positives = np.zeros(num_thresholds)\n false_positives = np.full(num_thresholds, num_predictions)\n false_negatives = np.zeros(num_thresholds)\n else:", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[88:169]\n==supervision.metrics.mean_average_recall:[317:390]\n self._predictions_list = []\n self._targets_list = []\n\n def update(\n self,\n predictions: Detections | list[Detections],\n targets: Detections | list[Detections],\n ) -> MeanAverageRecall:\n \"\"\"\n Add new predictions and targets to the metric, but do not compute the result.\n\n Args:\n predictions: The predicted detections.\n targets: The target detections.\n\n Returns:\n The updated metric instance.\n \"\"\"\n if not isinstance(predictions, list):\n predictions = [predictions]\n if not isinstance(targets, list):\n targets = [targets]\n\n if len(predictions) != len(targets):\n raise ValueError(\n f\"The number of predictions ({len(predictions)}) and\"\n f\" targets ({len(targets)}) during the update must be the same.\"\n )\n\n self._predictions_list.extend(predictions)\n self._targets_list.extend(targets)\n\n return self\n\n def compute(self) -> MeanAverageRecallResult:\n \"\"\"\n Calculate the Mean Average Recall metric based on the stored predictions\n and ground-truth, at different IoU thresholds and maximum detection counts.\n\n Returns:\n The Mean Average Recall metric result.\n \"\"\"\n result = self._compute(self._predictions_list, self._targets_list)\n\n small_predictions, small_targets = self._filter_predictions_and_targets_by_size(\n self._predictions_list, self._targets_list, ObjectSizeCategory.SMALL\n )\n result.small_objects = self._compute(small_predictions, small_targets)\n\n medium_predictions, medium_targets = (\n self._filter_predictions_and_targets_by_size(\n self._predictions_list, self._targets_list, ObjectSizeCategory.MEDIUM\n )\n )\n result.medium_objects = self._compute(medium_predictions, medium_targets)\n\n large_predictions, large_targets = self._filter_predictions_and_targets_by_size(\n self._predictions_list, self._targets_list, ObjectSizeCategory.LARGE\n )\n result.large_objects = self._compute(large_predictions, large_targets)\n\n return result\n\n def _compute(\n self, predictions_list: list[Detections], targets_list: list[Detections]\n ) -> MeanAverageRecallResult:\n iou_thresholds = np.linspace(0.5, 0.95, 10)\n stats: list[Any] = []\n\n for predictions, targets in zip(predictions_list, targets_list):\n prediction_contents = self._detections_content(predictions)\n target_contents = self._detections_content(targets)\n", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[461:511]\n==supervision.metrics.recall:[428:478]\n raise ValueError(f\"Invalid metric target: {self._metric_target}\")\n\n def _filter_detections_by_size(\n self, detections: Detections, size_category: ObjectSizeCategory\n ) -> Detections:\n \"\"\"Return a copy of detections with contents filtered by object size.\"\"\"\n new_detections = deepcopy(detections)\n if detections.is_empty() or size_category == ObjectSizeCategory.ANY:\n return new_detections\n\n sizes = get_detection_size_category(new_detections, self._metric_target)\n size_mask = sizes == size_category.value\n\n new_detections.xyxy = new_detections.xyxy[size_mask]\n if new_detections.mask is not None:\n new_detections.mask = new_detections.mask[size_mask]\n if new_detections.class_id is not None:\n new_detections.class_id = new_detections.class_id[size_mask]\n if new_detections.confidence is not None:\n new_detections.confidence = new_detections.confidence[size_mask]\n if new_detections.tracker_id is not None:\n new_detections.tracker_id = new_detections.tracker_id[size_mask]\n if new_detections.data is not None:\n for key, value in new_detections.data.items():\n new_detections.data[key] = np.array(value)[size_mask]\n\n return new_detections\n\n def _filter_predictions_and_targets_by_size(\n self,\n predictions_list: list[Detections],\n targets_list: list[Detections],\n size_category: ObjectSizeCategory,\n ) -> tuple[list[Detections], list[Detections]]:\n \"\"\"\n Filter predictions and targets by object size category.\n \"\"\"\n new_predictions_list = []\n new_targets_list = []\n for predictions, targets in zip(predictions_list, targets_list):\n new_predictions_list.append(\n self._filter_detections_by_size(predictions, size_category)\n )\n new_targets_list.append(\n self._filter_detections_by_size(targets, size_category)\n )\n return new_predictions_list, new_targets_list\n\n\n@dataclass", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.mean_average_recall:[659:706]\n==supervision.metrics.recall:[428:477]\n raise ValueError(f\"Invalid metric target: {self._metric_target}\")\n\n def _filter_detections_by_size(\n self, detections: Detections, size_category: ObjectSizeCategory\n ) -> Detections:\n \"\"\"Return a copy of detections with contents filtered by object size.\"\"\"\n new_detections = deepcopy(detections)\n if detections.is_empty() or size_category == ObjectSizeCategory.ANY:\n return new_detections\n\n sizes = get_detection_size_category(new_detections, self._metric_target)\n size_mask = sizes == size_category.value\n\n new_detections.xyxy = new_detections.xyxy[size_mask]\n if new_detections.mask is not None:\n new_detections.mask = new_detections.mask[size_mask]\n if new_detections.class_id is not None:\n new_detections.class_id = new_detections.class_id[size_mask]\n if new_detections.confidence is not None:\n new_detections.confidence = new_detections.confidence[size_mask]\n if new_detections.tracker_id is not None:\n new_detections.tracker_id = new_detections.tracker_id[size_mask]\n if new_detections.data is not None:\n for key, value in new_detections.data.items():\n new_detections.data[key] = np.array(value)[size_mask]\n\n return new_detections\n\n def _filter_predictions_and_targets_by_size(\n self,\n predictions_list: list[Detections],\n targets_list: list[Detections],\n size_category: ObjectSizeCategory,\n ) -> tuple[list[Detections], list[Detections]]:\n \"\"\"\n Filter predictions and targets by object size category.\n \"\"\"\n new_predictions_list = []\n new_targets_list = []\n for predictions, targets in zip(predictions_list, targets_list):\n new_predictions_list.append(\n self._filter_detections_by_size(predictions, size_category)\n )\n new_targets_list.append(\n self._filter_detections_by_size(targets, size_category)\n )\n return new_predictions_list, new_targets_list\n\n", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[190:219]\n==supervision.metrics.mean_average_recall:[396:426]\n np.zeros((0,), dtype=int),\n targets.class_id,\n )\n )\n\n else:\n if self._metric_target == MetricTarget.BOXES:\n iou = box_iou_batch(target_contents, prediction_contents)\n elif self._metric_target == MetricTarget.MASKS:\n iou = mask_iou_batch(target_contents, prediction_contents)\n elif self._metric_target == MetricTarget.ORIENTED_BOUNDING_BOXES:\n iou = oriented_box_iou_batch(\n target_contents, prediction_contents\n )\n else:\n raise ValueError(\n \"Unsupported metric target for IoU calculation\"\n )\n\n matches = self._match_detection_batch(\n predictions.class_id\n if predictions.class_id is not None\n else np.array([]),\n targets.class_id\n if targets.class_id is not None\n else np.array([]),\n iou,\n iou_thresholds,\n )", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.mean_average_recall:[625:665]\n==supervision.metrics.recall:[392:428]\n result_recall: npt.NDArray[np.float64] = recall\n return result_recall\n\n def _detections_content(self, detections: Detections) -> npt.NDArray[Any]:\n \"\"\"Return boxes, masks or oriented bounding boxes from detections.\"\"\"\n if self._metric_target == MetricTarget.BOXES:\n result_boxes: npt.NDArray[np.float32] = detections.xyxy\n return result_boxes\n if self._metric_target == MetricTarget.MASKS:\n if detections.mask is not None:\n result_masks: npt.NDArray[np.bool_] = detections.mask\n return result_masks\n return self._make_empty_content()\n if self._metric_target == MetricTarget.ORIENTED_BOUNDING_BOXES:\n obb = detections.data.get(ORIENTED_BOX_COORDINATES)\n if obb is not None and len(obb) > 0:\n result_obb: npt.NDArray[np.float32] = np.array(obb, dtype=np.float32)\n return result_obb\n return self._make_empty_content()\n raise ValueError(f\"Invalid metric target: {self._metric_target}\")\n\n def _make_empty_content(self) -> npt.NDArray[Any]:\n if self._metric_target == MetricTarget.BOXES:\n empty_boxes: npt.NDArray[np.float32] = np.empty((0, 4), dtype=np.float32)\n return empty_boxes\n\n if self._metric_target == MetricTarget.MASKS:\n empty_masks: npt.NDArray[np.bool_] = np.empty((0, 0, 0), dtype=bool)\n return empty_masks\n\n if self._metric_target == MetricTarget.ORIENTED_BOUNDING_BOXES:\n empty_obb: npt.NDArray[np.float32] = np.empty((0, 4, 2), dtype=np.float32)\n return empty_obb\n\n raise ValueError(f\"Invalid metric target: {self._metric_target}\")\n\n def _filter_detections_by_size(\n self, detections: Detections, size_category: ObjectSizeCategory\n ) -> Detections:\n \"\"\"Return a copy of detections with contents filtered by object size.\"\"\"", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[435:467]\n==supervision.metrics.recall:[397:428]\n if self._metric_target == MetricTarget.BOXES:\n result_boxes: npt.NDArray[np.float32] = detections.xyxy\n return result_boxes\n if self._metric_target == MetricTarget.MASKS:\n if detections.mask is not None:\n result_masks: npt.NDArray[np.bool_] = detections.mask\n return result_masks\n return self._make_empty_content()\n if self._metric_target == MetricTarget.ORIENTED_BOUNDING_BOXES:\n obb = detections.data.get(ORIENTED_BOX_COORDINATES)\n if obb is not None and len(obb) > 0:\n result_obb: npt.NDArray[np.float32] = np.array(obb, dtype=np.float32)\n return result_obb\n return self._make_empty_content()\n raise ValueError(f\"Invalid metric target: {self._metric_target}\")\n\n def _make_empty_content(self) -> npt.NDArray[Any]:\n if self._metric_target == MetricTarget.BOXES:\n empty_boxes: npt.NDArray[np.float32] = np.empty((0, 4), dtype=np.float32)\n return empty_boxes\n\n if self._metric_target == MetricTarget.MASKS:\n empty_masks: npt.NDArray[np.bool_] = np.empty((0, 0, 0), dtype=bool)\n return empty_masks\n\n if self._metric_target == MetricTarget.ORIENTED_BOUNDING_BOXES:\n empty_obb: npt.NDArray[np.float32] = np.empty((0, 4, 2), dtype=np.float32)\n return empty_obb\n\n raise ValueError(f\"Invalid metric target: {self._metric_target}\")\n", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[697:722]\n==supervision.metrics.precision:[710:735]\n f\"\\n(target: {self.metric_target.value},\"\n f\" averaging: {self.averaging_method.value})\"\n )\n ax.set_title(title, fontweight=\"bold\")\n\n x_positions = range(len(labels))\n bars = ax.bar(x_positions, values, color=colors, align=\"center\")\n\n ax.set_xticks(x_positions)\n ax.set_xticklabels(labels, rotation=45, ha=\"right\")\n\n for bar in bars:\n y_value = bar.get_height()\n ax.text(\n bar.get_x() + bar.get_width() / 2,\n y_value + 0.02,\n f\"{y_value:.2f}\",\n ha=\"center\",\n va=\"bottom\",\n )\n\n plt.rcParams[\"font.family\"] = \"sans-serif\"\n\n plt.tight_layout()\n plt.show()", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.mean_average_recall:[132:164]\n==supervision.metrics.recall:[575:607]\n )\n if self.recall_per_class.size == 0:\n out_str += \" No results\\n\"\n for class_id, recall_of_class in zip(\n self.matched_classes, self.recall_per_class\n ):\n out_str += f\" {class_id}: {recall_of_class}\\n\"\n\n indent = \" \"\n if self.small_objects is not None:\n indented = indent + str(self.small_objects).replace(\"\\n\", f\"\\n{indent}\")\n out_str += f\"\\nSmall objects:\\n{indented}\"\n if self.medium_objects is not None:\n indented = indent + str(self.medium_objects).replace(\"\\n\", f\"\\n{indent}\")\n out_str += f\"\\nMedium objects:\\n{indented}\"\n if self.large_objects is not None:\n indented = indent + str(self.large_objects).replace(\"\\n\", f\"\\n{indent}\")\n out_str += f\"\\nLarge objects:\\n{indented}\"\n\n return out_str\n\n def to_pandas(self) -> pd.DataFrame:\n \"\"\"\n Convert the result to a pandas DataFrame.\n\n Returns:\n The result as a DataFrame.\n \"\"\"\n ensure_pandas_installed()\n import pandas as pd\n\n pandas_data = {", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[699:722]\n==supervision.metrics.mean_average_recall:[233:258]\n )\n ax.set_title(title, fontweight=\"bold\")\n\n x_positions = range(len(labels))\n bars = ax.bar(x_positions, values, color=colors, align=\"center\")\n\n ax.set_xticks(x_positions)\n ax.set_xticklabels(labels, rotation=45, ha=\"right\")\n\n for bar in bars:\n y_value = bar.get_height()\n ax.text(\n bar.get_x() + bar.get_width() / 2,\n y_value + 0.02,\n f\"{y_value:.2f}\",\n ha=\"center\",\n va=\"bottom\",\n )\n\n plt.rcParams[\"font.family\"] = \"sans-serif\"\n\n plt.tight_layout()\n plt.show()", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.annotators.core:[1479:1497]\n==supervision.draw.utils:[133:151]\n border_radius = min(border_radius, min(width, height) // 2)\n\n rectangle_coordinates = [\n ((x1 + border_radius, y1), (x2 - border_radius, y2)),\n ((x1, y1 + border_radius), (x2, y2 - border_radius)),\n ]\n circle_centers = [\n (x1 + border_radius, y1 + border_radius),\n (x2 - border_radius, y1 + border_radius),\n (x1 + border_radius, y2 - border_radius),\n (x2 - border_radius, y2 - border_radius),\n ]\n\n for coordinates in rectangle_coordinates:\n cv2.rectangle(\n img=scene,\n pt1=coordinates[0],\n pt2=coordinates[1],", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[702:722]\n==supervision.metrics.mean_average_precision:[226:248]\n x_positions = range(len(labels))\n bars = ax.bar(x_positions, values, color=colors, align=\"center\")\n\n ax.set_xticks(x_positions)\n ax.set_xticklabels(labels, rotation=45, ha=\"right\")\n\n for bar in bars:\n y_value = bar.get_height()\n ax.text(\n bar.get_x() + bar.get_width() / 2,\n y_value + 0.02,\n f\"{y_value:.2f}\",\n ha=\"center\",\n va=\"bottom\",\n )\n\n plt.rcParams[\"font.family\"] = \"sans-serif\"\n\n plt.tight_layout()\n plt.show()", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[642:668]\n==supervision.metrics.mean_average_recall:[167:192]\n }\n\n if self.small_objects is not None:\n small_objects_df = self.small_objects.to_pandas()\n for key, value in small_objects_df.items():\n pandas_data[f\"small_objects_{key}\"] = value\n if self.medium_objects is not None:\n medium_objects_df = self.medium_objects.to_pandas()\n for key, value in medium_objects_df.items():\n pandas_data[f\"medium_objects_{key}\"] = value\n if self.large_objects is not None:\n large_objects_df = self.large_objects.to_pandas()\n for key, value in large_objects_df.items():\n pandas_data[f\"large_objects_{key}\"] = value\n\n return pd.DataFrame(pandas_data, index=[0])\n\n def plot(self) -> None:\n \"\"\"\n Plot the F1 results.\n\n ![example_plot](\n https://media.roboflow.com/supervision-docs/metrics/f1_plot_example.png\n ){ align=center width=\"800\" }\n \"\"\"\n", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.precision:[655:681]\n==supervision.metrics.recall:[609:635]\n }\n\n if self.small_objects is not None:\n small_objects_df = self.small_objects.to_pandas()\n for key, value in small_objects_df.items():\n pandas_data[f\"small_objects_{key}\"] = value\n if self.medium_objects is not None:\n medium_objects_df = self.medium_objects.to_pandas()\n for key, value in medium_objects_df.items():\n pandas_data[f\"medium_objects_{key}\"] = value\n if self.large_objects is not None:\n large_objects_df = self.large_objects.to_pandas()\n for key, value in large_objects_df.items():\n pandas_data[f\"large_objects_{key}\"] = value\n\n return pd.DataFrame(pandas_data, index=[0])\n\n def plot(self) -> None:\n \"\"\"\n Plot the recall results.\n\n ![example_plot](\n https://media.roboflow.com/supervision-docs/metrics/recall_plot_example.png\n ){ align=center width=\"800\" }\n \"\"\"\n", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[642:657]\n==supervision.metrics.mean_average_precision:[158:174]\n }\n\n if self.small_objects is not None:\n small_objects_df = self.small_objects.to_pandas()\n for key, value in small_objects_df.items():\n pandas_data[f\"small_objects_{key}\"] = value\n if self.medium_objects is not None:\n medium_objects_df = self.medium_objects.to_pandas()\n for key, value in medium_objects_df.items():\n pandas_data[f\"medium_objects_{key}\"] = value\n if self.large_objects is not None:\n large_objects_df = self.large_objects.to_pandas()\n for key, value in large_objects_df.items():\n pandas_data[f\"large_objects_{key}\"] = value\n", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[616:640]\n==supervision.metrics.mean_average_recall:[140:164]\n indent = \" \"\n if self.small_objects is not None:\n indented = indent + str(self.small_objects).replace(\"\\n\", f\"\\n{indent}\")\n out_str += f\"\\nSmall objects:\\n{indented}\"\n if self.medium_objects is not None:\n indented = indent + str(self.medium_objects).replace(\"\\n\", f\"\\n{indent}\")\n out_str += f\"\\nMedium objects:\\n{indented}\"\n if self.large_objects is not None:\n indented = indent + str(self.large_objects).replace(\"\\n\", f\"\\n{indent}\")\n out_str += f\"\\nLarge objects:\\n{indented}\"\n\n return out_str\n\n def to_pandas(self) -> pd.DataFrame:\n \"\"\"\n Convert the result to a pandas DataFrame.\n\n Returns:\n The result as a DataFrame.\n \"\"\"\n ensure_pandas_installed()\n import pandas as pd\n\n pandas_data = {", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.precision:[629:653]\n==supervision.metrics.recall:[583:607]\n indent = \" \"\n if self.small_objects is not None:\n indented = indent + str(self.small_objects).replace(\"\\n\", f\"\\n{indent}\")\n out_str += f\"\\nSmall objects:\\n{indented}\"\n if self.medium_objects is not None:\n indented = indent + str(self.medium_objects).replace(\"\\n\", f\"\\n{indent}\")\n out_str += f\"\\nMedium objects:\\n{indented}\"\n if self.large_objects is not None:\n indented = indent + str(self.large_objects).replace(\"\\n\", f\"\\n{indent}\")\n out_str += f\"\\nLarge objects:\\n{indented}\"\n\n return out_str\n\n def to_pandas(self) -> pd.DataFrame:\n \"\"\"\n Convert the result to a pandas DataFrame.\n\n Returns:\n The result as a DataFrame.\n \"\"\"\n ensure_pandas_installed()\n import pandas as pd\n\n pandas_data = {", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.detection.utils.iou_and_nms:[39:53]\n==supervision.detection.vlm:[58:72]\n if isinstance(value, cls):\n return value\n if isinstance(value, str):\n value = value.lower()\n try:\n return cls(value)\n except ValueError:\n raise ValueError(f\"Invalid value: {value}. Must be one of {cls.list()}\")\n raise ValueError(\n f\"Invalid value type: {type(value)}. Must be an instance of \"\n f\"{cls.__name__} or str.\"\n )\n\n", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[395:423]\n==supervision.metrics.mean_average_recall:[591:620]\n false_negatives = num_true - true_positives\n\n confusion_matrix[class_idx] = np.stack(\n [true_positives, false_positives, false_negatives], axis=1\n )\n\n result_confusion_matrix: npt.NDArray[np.float64] = confusion_matrix\n return result_confusion_matrix\n\n @staticmethod\n def _compute_recall(\n confusion_matrix: npt.NDArray[np.float64],\n ) -> npt.NDArray[np.float64]:\n \"\"\"\n Broadcastable function, computing the recall from the confusion matrix.\n\n Args:\n confusion_matrix: shape (N, ..., 3), where the last dimension\n contains the true positives, false positives, and false negatives.\n\n Returns:\n shape (N, ...), containing the recall for each element.\n \"\"\"\n if not confusion_matrix.shape[-1] == 3:\n raise ValueError(\n f\"Confusion matrix must have shape (..., 3), got \"\n f\"{confusion_matrix.shape}\"\n )\n true_positives = confusion_matrix[..., 0]", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.detection:[1048:1062]\n==supervision.metrics.f1_score:[327:342]\n for i, iou_level in enumerate(iou_thresholds):\n matched_indices = np.where((iou >= iou_level) & correct_class)\n\n if matched_indices[0].shape[0]:\n combined_indices = np.stack(matched_indices, axis=1)\n iou_values = iou[matched_indices][:, None]\n matches = np.hstack([combined_indices, iou_values])\n\n if matched_indices[0].shape[0] > 1:\n matches = matches[matches[:, 2].argsort()[::-1]]\n matches = matches[np.unique(matches[:, 1], return_index=True)[1]]\n matches = matches[np.unique(matches[:, 0], return_index=True)[1]]\n\n correct[matches[:, 1].astype(int), i] = True\n", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[88:117]\n==supervision.metrics.mean_average_precision:[1291:1320]\n self._predictions_list = []\n self._targets_list = []\n\n def update(\n self,\n predictions: Detections | list[Detections],\n targets: Detections | list[Detections],\n ) -> F1Score:\n \"\"\"\n Add new predictions and targets to the metric, but do not compute the result.\n\n Args:\n predictions: The predicted detections.\n targets: The target detections.\n\n Returns:\n The updated metric instance.\n \"\"\"\n if not isinstance(predictions, list):\n predictions = [predictions]\n if not isinstance(targets, list):\n targets = [targets]\n\n if len(predictions) != len(targets):\n raise ValueError(\n f\"The number of predictions ({len(predictions)}) and\"\n f\" targets ({len(targets)}) during the update must be the same.\"\n )\n", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.detection.tools.csv_sink:[115:169]\n==supervision.detection.tools.json_sink:[118:172]\n self.file.close()\n\n @staticmethod\n def _slice_value(value: Any, i: int, n: int) -> Any:\n \"\"\"\n Return the i-th element when the value stores per-detection data.\n\n Dispatch rules:\n - np.ndarray with ndim == 0: return as-is for broadcasting\n - np.ndarray with ndim >= 1: return value[i]\n - list or tuple with len equal to n: return value[i]\n - any other type: return as-is for broadcasting\n\n Args:\n value: Custom-data field value.\n i: Zero-based detection index.\n n: Total number of detections.\n\n Returns:\n Element at position i if value is a per-detection sequence,\n otherwise value unchanged.\n \"\"\"\n if isinstance(value, np.ndarray):\n return value if value.ndim == 0 else value[i]\n if isinstance(value, (list, tuple)) and len(value) == n:\n return value[i]\n return value\n\n @staticmethod\n def parse_detection_data(\n detections: Detections, custom_data: dict[str, Any] | None = None\n ) -> list[dict[str, Any]]:\n \"\"\"\n Convert detections and optional custom data into per-detection rows.\n\n Builds one dictionary per detection containing bounding box coordinates,\n detection attributes, and any values from ``detections.data`` or\n ``custom_data``. List and tuple values in ``custom_data`` with length\n equal to ``len(detections.xyxy)`` are sliced one element per row; all\n other values are broadcast to every row.\n\n Args:\n detections: Detection data to serialize into row dictionaries.\n custom_data: Optional extra fields to include in each row.\n\n Returns:\n A list of dictionaries, one per detection, containing ``xyxy``\n coordinates, ``class_id``, ``confidence``, ``tracker_id``, and any\n values from ``detections.data`` or ``custom_data``.\n \"\"\"\n parsed_rows = []\n n = len(detections.xyxy)\n for i in range(n):\n row = {", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.dataset.formats.pascal_voc:[158:167]\n==supervision.dataset.formats.yolo:[397:406]\n if mask is not None:\n polygons = approximate_mask_with_polygons(\n mask=mask,\n min_image_area_percentage=min_image_area_percentage,\n max_image_area_percentage=max_image_area_percentage,\n approximation_percentage=approximation_percentage,\n )\n for polygon in polygons:\n xyxy = polygon_to_xyxy(polygon=polygon)", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.detection.utils.iou_and_nms:[79:128]\n==supervision.detection.vlm:[62:72]\n try:\n return cls(value)\n except ValueError:\n raise ValueError(f\"Invalid value: {value}. Must be one of {cls.list()}\")\n raise ValueError(\n f\"Invalid value type: {type(value)}. Must be an instance of \"\n f\"{cls.__name__} or str.\"\n )\n\n\ndef box_iou(\n box_true: list[float] | npt.NDArray[np.floating],\n box_detection: list[float] | npt.NDArray[np.floating],\n overlap_metric: OverlapMetric | str = OverlapMetric.IOU,\n) -> float:\n \"\"\"\n Compute overlap metric between two bounding boxes.\n\n Supports standard IOU (intersection-over-union) and IOS\n (intersection-over-smaller-area) metrics. Returns the overlap value in range\n `[0, 1]`.\n\n Args:\n box_true: Ground truth box in format\n `(x_min, y_min, x_max, y_max)`.\n box_detection: Detected box in format\n `(x_min, y_min, x_max, y_max)`.\n overlap_metric: Overlap type.\n Use `OverlapMetric.IOU` for IOU or\n `OverlapMetric.IOS` for IOS. Defaults to `OverlapMetric.IOU`.\n\n Returns:\n Overlap value between boxes in `[0, 1]`.\n\n Raises:\n ValueError: If `overlap_metric` is not IOU or IOS.\n\n Examples:\n ```pycon\n >>> import supervision as sv\n >>> box_true = [100, 100, 200, 200]\n >>> box_detection = [150, 150, 250, 250]\n >>> sv.box_iou(box_true, box_detection, overlap_metric=sv.OverlapMetric.IOU)\n 0.142857...\n >>> sv.box_iou(box_true, box_detection, overlap_metric=sv.OverlapMetric.IOS)\n 0.25\n\n ```\n \"\"\"", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.mean_average_recall:[614:623]\n==supervision.metrics.recall:[376:385]\n if not confusion_matrix.shape[-1] == 3:\n raise ValueError(\n f\"Confusion matrix must have shape (..., 3), got \"\n f\"{confusion_matrix.shape}\"\n )\n true_positives = confusion_matrix[..., 0]\n false_negatives = confusion_matrix[..., 2]\n\n denominator = true_positives + false_negatives", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.annotators.core:[1498:1505]\n==supervision.draw.utils:[152:159]\n thickness=-1,\n )\n for center in circle_centers:\n cv2.circle(\n img=scene,\n center=center,\n radius=border_radius,", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[234:242]\n==supervision.metrics.mean_average_recall:[446:454]\n iou_thresholds=iou_thresholds,\n matched_classes=np.array([], dtype=int),\n small_objects=None,\n medium_objects=None,\n large_objects=None,\n )\n\n concatenated_stats = [np.concatenate(items, 0) for items in zip(*stats)]", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[417:424]\n==supervision.metrics.precision:[420:428]\n if not confusion_matrix.shape[-1] == 3:\n raise ValueError(\n f\"Confusion matrix must have shape (..., 3), got \"\n f\"{confusion_matrix.shape}\"\n )\n true_positives = confusion_matrix[..., 0]\n false_positives = confusion_matrix[..., 1]", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.precision:[237:245]\n==supervision.metrics.recall:[214:222]\n iou_thresholds=iou_thresholds,\n matched_classes=np.array([], dtype=int),\n small_objects=None,\n medium_objects=None,\n large_objects=None,\n )\n\n concatenated_stats = [np.concatenate(items, 0) for items in zip(*stats)]", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.annotators.utils:[99:105]\n==supervision.key_points.annotators:[921:935]\n return (\n center_x - text_w // 2,\n center_y - text_h // 2,\n center_x + text_w // 2,\n center_y + text_h // 2,\n )", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[251:274]\n==supervision.metrics.mean_average_recall:[463:481]\n iou_thresholds=iou_thresholds,\n matched_classes=unique_classes,\n small_objects=None,\n medium_objects=None,\n large_objects=None,\n )\n\n def _compute_f1_for_classes(\n self,\n matches: npt.NDArray[np.bool_],\n prediction_confidence: npt.NDArray[np.float32],\n prediction_class_ids: npt.NDArray[np.int32],\n true_class_ids: npt.NDArray[np.int32],\n ) -> tuple[\n npt.NDArray[np.float64],\n npt.NDArray[np.float64],\n npt.NDArray[np.int32],\n ]:\n \"\"\"Compute F1 scores from concatenated stats across all images.\n\n ``unique_classes`` is the union of GT and predicted classes so that\n predictions of classes absent from GT still count as false positives.\n \"\"\"", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[251:293]\n==supervision.metrics.precision:[254:296]\n iou_thresholds=iou_thresholds,\n matched_classes=unique_classes,\n small_objects=None,\n medium_objects=None,\n large_objects=None,\n )\n\n def _compute_precision_for_classes(\n self,\n matches: npt.NDArray[np.bool_],\n prediction_confidence: npt.NDArray[np.float32],\n prediction_class_ids: npt.NDArray[np.int32],\n true_class_ids: npt.NDArray[np.int32],\n ) -> tuple[\n npt.NDArray[np.float64],\n npt.NDArray[np.float64],\n npt.NDArray[np.int32],\n ]:\n \"\"\"Compute precision scores from concatenated stats across all images.\n\n ``unique_classes`` is the union of GT and predicted classes so that\n predictions of classes absent from GT still count as false positives.\n \"\"\"\n sorted_indices = np.argsort(-prediction_confidence)\n matches = matches[sorted_indices]\n prediction_class_ids = prediction_class_ids[sorted_indices]\n # Predictions whose class never appears in the ground truth are still\n # false positives, so include those classes in the confusion matrix\n # (their true-instance count is zero).\n unique_classes = np.unique(\n np.concatenate((true_class_ids, prediction_class_ids))\n )\n true_classes, true_counts = np.unique(true_class_ids, return_counts=True)\n class_counts = np.zeros(unique_classes.shape[0], dtype=int)\n class_counts[np.searchsorted(unique_classes, true_classes)] = true_counts\n\n # Shape: PxTh,P,C,C -> CxThx3\n confusion_matrix = self._compute_confusion_matrix(\n matches, prediction_class_ids, unique_classes, class_counts\n )\n\n # Shape: CxThx3 -> CxTh", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[688:696]\n==supervision.metrics.precision:[701:709]\n colors += [LEGACY_COLOR_PALETTE[4]] * 2\n\n plt.rcParams[\"font.family\"] = \"monospace\"\n\n _, ax = plt.subplots(figsize=(10, 6))\n ax.set_ylim(0, 1)\n ax.set_ylabel(\"Value\", fontweight=\"bold\")\n title = (", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[251:280]\n==supervision.metrics.recall:[231:252]\n iou_thresholds=iou_thresholds,\n matched_classes=unique_classes,\n small_objects=None,\n medium_objects=None,\n large_objects=None,\n )\n\n def _compute_f1_for_classes(\n self,\n matches: npt.NDArray[np.bool_],\n prediction_confidence: npt.NDArray[np.float32],\n prediction_class_ids: npt.NDArray[np.int32],\n true_class_ids: npt.NDArray[np.int32],\n ) -> tuple[\n npt.NDArray[np.float64],\n npt.NDArray[np.float64],\n npt.NDArray[np.int32],\n ]:\n \"\"\"Compute F1 scores from concatenated stats across all images.\n\n ``unique_classes`` is the union of GT and predicted classes so that\n predictions of classes absent from GT still count as false positives.\n \"\"\"\n sorted_indices = np.argsort(-prediction_confidence)\n matches = matches[sorted_indices]\n prediction_class_ids = prediction_class_ids[sorted_indices]\n # Predictions whose class never appears in the ground truth are still\n # false positives, so include those classes in the confusion matrix\n # (their true-instance count is zero).", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[417:423]\n==supervision.metrics.recall:[376:382]\n if not confusion_matrix.shape[-1] == 3:\n raise ValueError(\n f\"Confusion matrix must have shape (..., 3), got \"\n f\"{confusion_matrix.shape}\"\n )\n true_positives = confusion_matrix[..., 0]", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.mean_average_precision:[216:224]\n==supervision.metrics.mean_average_recall:[223:231]\n ]\n colors += [LEGACY_COLOR_PALETTE[4]] * 3\n\n plt.rcParams[\"font.family\"] = \"monospace\"\n\n _, ax = plt.subplots(figsize=(10, 6))\n ax.set_ylim(0, 1)\n ax.set_ylabel(\"Value\", fontweight=\"bold\")", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.mean_average_recall:[614:620]\n==supervision.metrics.precision:[420:426]\n if not confusion_matrix.shape[-1] == 3:\n raise ValueError(\n f\"Confusion matrix must have shape (..., 3), got \"\n f\"{confusion_matrix.shape}\"\n )\n true_positives = confusion_matrix[..., 0]", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "duplicate-code", + "message": "Similar lines in 2 files\n==supervision.metrics.f1_score:[690:696]\n==supervision.metrics.mean_average_recall:[226:232]\n plt.rcParams[\"font.family\"] = \"monospace\"\n\n _, ax = plt.subplots(figsize=(10, 6))\n ax.set_ylim(0, 1)\n ax.set_ylabel(\"Value\", fontweight=\"bold\")\n title = (", + "message-id": "R0801" + }, + { + "type": "refactor", + "module": "supervision.validators.__init__", + "obj": "", + "line": 1, + "column": 0, + "endLine": null, + "endColumn": null, + "path": "src\\supervision\\validators\\__init__.py", + "symbol": "cyclic-import", + "message": "Cyclic import (supervision -> supervision.detection.tools.polygon_zone)", + "message-id": "R0401" + } +] \ No newline at end of file diff --git a/metrics-before-pylint/pylint_score_antes.txt b/metrics-before-pylint/pylint_score_antes.txt new file mode 100644 index 0000000000..86f64ddd1f --- /dev/null +++ b/metrics-before-pylint/pylint_score_antes.txt @@ -0,0 +1 @@ +Your code has been rated at 7.98/10 (previous run: 7.98/10, +0.00) diff --git a/metrics-before-pylint/pylint_warning_antes.json b/metrics-before-pylint/pylint_warning_antes.json new file mode 100644 index 0000000000..4306e35803 --- /dev/null +++ b/metrics-before-pylint/pylint_warning_antes.json @@ -0,0 +1,1315 @@ +[ + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "BoxAnnotator.annotate", + "line": 214, + "column": 4, + "endLine": 214, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'BoxAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "OrientedBoxAnnotator.annotate", + "line": 301, + "column": 4, + "endLine": 301, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'OrientedBoxAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "MaskAnnotator.annotate", + "line": 451, + "column": 4, + "endLine": 451, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'MaskAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "PolygonAnnotator.annotate", + "line": 539, + "column": 4, + "endLine": 539, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'PolygonAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "ColorAnnotator.annotate", + "line": 630, + "column": 4, + "endLine": 630, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'ColorAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "HaloAnnotator.annotate", + "line": 730, + "column": 4, + "endLine": 730, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'HaloAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "EllipseAnnotator.annotate", + "line": 830, + "column": 4, + "endLine": 830, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'EllipseAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "BoxCornerAnnotator.annotate", + "line": 926, + "column": 4, + "endLine": 926, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'BoxCornerAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "CircleAnnotator.annotate", + "line": 1019, + "column": 4, + "endLine": 1019, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'CircleAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "DotAnnotator.annotate", + "line": 1122, + "column": 4, + "endLine": 1122, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'DotAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "LabelAnnotator.annotate", + "line": 1252, + "column": 4, + "endLine": 1252, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'LabelAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "RichLabelAnnotator.annotate", + "line": 1569, + "column": 4, + "endLine": 1569, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'RichLabelAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "IconAnnotator.annotate", + "line": 1812, + "column": 4, + "endLine": 1812, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'IconAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "BlurAnnotator.annotate", + "line": 1914, + "column": 4, + "endLine": 1914, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'BlurAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "TraceAnnotator.annotate", + "line": 2017, + "column": 4, + "endLine": 2017, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'TraceAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "HeatMapAnnotator.annotate", + "line": 2155, + "column": 4, + "endLine": 2155, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'HeatMapAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "PixelateAnnotator.annotate", + "line": 2250, + "column": 4, + "endLine": 2250, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'PixelateAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "TriangleAnnotator.annotate", + "line": 2364, + "column": 4, + "endLine": 2364, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'TriangleAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "RoundBoxAnnotator.annotate", + "line": 2480, + "column": 4, + "endLine": 2480, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'RoundBoxAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "PercentageBarAnnotator.annotate", + "line": 2624, + "column": 4, + "endLine": 2624, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'PercentageBarAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "CropAnnotator.annotate", + "line": 2823, + "column": 4, + "endLine": 2823, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'CropAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.annotators.core", + "obj": "BackgroundOverlayAnnotator.annotate", + "line": 2978, + "column": 4, + "endLine": 2978, + "endColumn": 16, + "path": "src\\supervision\\annotators\\core.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'BackgroundOverlayAnnotator.annotate' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.dataset.core", + "obj": "DetectionDataset.merge.is_in_memory", + "line": 280, + "column": 23, + "endLine": 280, + "endColumn": 48, + "path": "src\\supervision\\dataset\\core.py", + "symbol": "protected-access", + "message": "Access to a protected member _images_in_memory of a client class", + "message-id": "W0212" + }, + { + "type": "warning", + "module": "supervision.dataset.core", + "obj": "DetectionDataset.merge.is_lazy", + "line": 283, + "column": 23, + "endLine": 283, + "endColumn": 48, + "path": "src\\supervision\\dataset\\core.py", + "symbol": "protected-access", + "message": "Access to a protected member _images_in_memory of a client class", + "message-id": "W0212" + }, + { + "type": "warning", + "module": "supervision.dataset.core", + "obj": "DetectionDataset.merge", + "line": 294, + "column": 36, + "endLine": 294, + "endColumn": 61, + "path": "src\\supervision\\dataset\\core.py", + "symbol": "protected-access", + "message": "Access to a protected member _images_in_memory of a client class", + "message-id": "W0212" + }, + { + "type": "warning", + "module": "supervision.dataset.core", + "obj": "DetectionDataset.as_pascal_voc", + "line": 384, + "column": 21, + "endLine": 384, + "endColumn": 48, + "path": "src\\supervision\\dataset\\core.py", + "symbol": "unspecified-encoding", + "message": "Using open without explicitly specifying an encoding", + "message-id": "W1514" + }, + { + "type": "warning", + "module": "supervision.dataset.utils", + "obj": "save_dataset_images", + "line": 132, + "column": 25, + "endLine": 132, + "endColumn": 50, + "path": "src\\supervision\\dataset\\utils.py", + "symbol": "protected-access", + "message": "Access to a protected member _images_in_memory of a client class", + "message-id": "W0212" + }, + { + "type": "warning", + "module": "supervision.dataset.utils", + "obj": "save_dataset_images", + "line": 133, + "column": 20, + "endLine": 133, + "endColumn": 45, + "path": "src\\supervision\\dataset\\utils.py", + "symbol": "protected-access", + "message": "Access to a protected member _images_in_memory of a client class", + "message-id": "W0212" + }, + { + "type": "warning", + "module": "supervision.dataset.formats.yolo", + "obj": "_extract_class_names.", + "line": 121, + "column": 43, + "endLine": 121, + "endColumn": 59, + "path": "src\\supervision\\dataset\\formats\\yolo.py", + "symbol": "unnecessary-lambda", + "message": "Lambda may not be necessary", + "message-id": "W0108" + }, + { + "type": "warning", + "module": "supervision.detection.compact_mask", + "obj": "CompactMask.merge", + "line": 958, + "column": 22, + "endLine": 958, + "endColumn": 48, + "path": "src\\supervision\\detection\\compact_mask.py", + "symbol": "protected-access", + "message": "Access to a protected member _image_shape of a client class", + "message-id": "W0212" + }, + { + "type": "warning", + "module": "supervision.detection.compact_mask", + "obj": "CompactMask.merge", + "line": 960, + "column": 15, + "endLine": 960, + "endColumn": 30, + "path": "src\\supervision\\detection\\compact_mask.py", + "symbol": "protected-access", + "message": "Access to a protected member _image_shape of a client class", + "message-id": "W0212" + }, + { + "type": "warning", + "module": "supervision.detection.compact_mask", + "obj": "CompactMask.merge", + "line": 963, + "column": 40, + "endLine": 963, + "endColumn": 55, + "path": "src\\supervision\\detection\\compact_mask.py", + "symbol": "protected-access", + "message": "Access to a protected member _image_shape of a client class", + "message-id": "W0212" + }, + { + "type": "warning", + "module": "supervision.detection.compact_mask", + "obj": "CompactMask.merge", + "line": 971, + "column": 28, + "endLine": 971, + "endColumn": 36, + "path": "src\\supervision\\detection\\compact_mask.py", + "symbol": "protected-access", + "message": "Access to a protected member _rles of a client class", + "message-id": "W0212" + }, + { + "type": "warning", + "module": "supervision.detection.compact_mask", + "obj": "CompactMask.merge", + "line": 976, + "column": 13, + "endLine": 976, + "endColumn": 28, + "path": "src\\supervision\\detection\\compact_mask.py", + "symbol": "protected-access", + "message": "Access to a protected member _crop_shapes of a client class", + "message-id": "W0212" + }, + { + "type": "warning", + "module": "supervision.detection.compact_mask", + "obj": "CompactMask.merge", + "line": 979, + "column": 13, + "endLine": 979, + "endColumn": 24, + "path": "src\\supervision\\detection\\compact_mask.py", + "symbol": "protected-access", + "message": "Access to a protected member _offsets of a client class", + "message-id": "W0212" + }, + { + "type": "warning", + "module": "supervision.detection.core", + "obj": "Detections.from_lmm", + "line": 1447, + "column": 16, + "endLine": 1450, + "endColumn": 17, + "path": "src\\supervision\\detection\\core.py", + "symbol": "raise-missing-from", + "message": "Consider explicitly re-raising using 'except ValueError as exc' and 'raise ValueError(f\"Invalid LMM string '{lmm}'. Must be one of {[m.value for m in LMM]}\") from exc'", + "message-id": "W0707" + }, + { + "type": "warning", + "module": "supervision.detection.vlm", + "obj": "LMM.from_value", + "line": 66, + "column": 16, + "endLine": 66, + "endColumn": 88, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "raise-missing-from", + "message": "Consider explicitly re-raising using 'except ValueError as exc' and 'raise ValueError(f'Invalid value: {value}. Must be one of {cls.list()}') from exc'", + "message-id": "W0707" + }, + { + "type": "warning", + "module": "supervision.detection.vlm", + "obj": "VLM.from_value", + "line": 109, + "column": 16, + "endLine": 109, + "endColumn": 88, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "raise-missing-from", + "message": "Consider explicitly re-raising using 'except ValueError as exc' and 'raise ValueError(f'Invalid value: {value}. Must be one of {cls.list()}') from exc'", + "message-id": "W0707" + }, + { + "type": "warning", + "module": "supervision.detection.vlm", + "obj": "_validate_vlm_parameters", + "line": 184, + "column": 12, + "endLine": 186, + "endColumn": 13, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "raise-missing-from", + "message": "Consider explicitly re-raising using 'except ValueError as exc' and 'raise ValueError(f'Invalid vlm value: {vlm}. Must be one of {[e.value for e in VLM]}') from exc'", + "message-id": "W0707" + }, + { + "type": "warning", + "module": "supervision.detection.vlm", + "obj": "recover_truncated_qwen_2_5_vl_response", + "line": 301, + "column": 11, + "endLine": 301, + "endColumn": 20, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "broad-exception-caught", + "message": "Catching too general exception Exception", + "message-id": "W0718" + }, + { + "type": "warning", + "module": "supervision.detection.vlm", + "obj": "from_google_gemini_2_5", + "line": 783, + "column": 27, + "endLine": 783, + "endColumn": 36, + "path": "src\\supervision\\detection\\vlm.py", + "symbol": "broad-exception-caught", + "message": "Catching too general exception Exception", + "message-id": "W0718" + }, + { + "type": "warning", + "module": "supervision.detection.tools.csv_sink", + "obj": "CSVSink.open", + "line": 108, + "column": 20, + "endLine": 108, + "endColumn": 57, + "path": "src\\supervision\\detection\\tools\\csv_sink.py", + "symbol": "unspecified-encoding", + "message": "Using open without explicitly specifying an encoding", + "message-id": "W1514" + }, + { + "type": "warning", + "module": "supervision.detection.tools.csv_sink", + "obj": "CSVSink.append", + "line": 211, + "column": 12, + "endLine": 213, + "endColumn": 13, + "path": "src\\supervision\\detection\\tools\\csv_sink.py", + "symbol": "broad-exception-raised", + "message": "Raising too general exception: Exception", + "message-id": "W0719" + }, + { + "type": "warning", + "module": "supervision.detection.tools.json_sink", + "obj": "JSONSink.open", + "line": 82, + "column": 20, + "endLine": 82, + "endColumn": 45, + "path": "src\\supervision\\detection\\tools\\json_sink.py", + "symbol": "unspecified-encoding", + "message": "Using open without explicitly specifying an encoding", + "message-id": "W1514" + }, + { + "type": "warning", + "module": "supervision.detection.utils.boxes", + "obj": "denormalize_boxes", + "line": 109, + "column": 4, + "endLine": 109, + "endColumn": 50, + "path": "src\\supervision\\detection\\utils\\boxes.py", + "symbol": "unused-argument", + "message": "Unused argument 'normalized_xyxy'", + "message-id": "W0613" + }, + { + "type": "warning", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "OverlapFilter.from_value", + "line": 47, + "column": 16, + "endLine": 47, + "endColumn": 88, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "raise-missing-from", + "message": "Consider explicitly re-raising using 'except ValueError as exc' and 'raise ValueError(f'Invalid value: {value}. Must be one of {cls.list()}') from exc'", + "message-id": "W0707" + }, + { + "type": "warning", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "OverlapMetric.from_value", + "line": 83, + "column": 16, + "endLine": 83, + "endColumn": 88, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "raise-missing-from", + "message": "Consider explicitly re-raising using 'except ValueError as exc' and 'raise ValueError(f'Invalid value: {value}. Must be one of {cls.list()}') from exc'", + "message-id": "W0707" + }, + { + "type": "warning", + "module": "supervision.detection.utils.iou_and_nms", + "obj": "mask_non_max_suppression", + "line": 837, + "column": 4, + "endLine": 837, + "endColumn": 23, + "path": "src\\supervision\\detection\\utils\\iou_and_nms.py", + "symbol": "unused-argument", + "message": "Unused argument 'mask_dimension'", + "message-id": "W0613" + }, + { + "type": "warning", + "module": "supervision.keypoint.annotators", + "obj": "", + "line": 8, + "column": 0, + "endLine": 13, + "endColumn": 1, + "path": "src\\supervision\\keypoint\\annotators.py", + "symbol": "unused-import", + "message": "Unused BaseKeyPointAnnotator imported from supervision.key_points.annotators", + "message-id": "W0611" + }, + { + "type": "warning", + "module": "supervision.keypoint.annotators", + "obj": "", + "line": 8, + "column": 0, + "endLine": 13, + "endColumn": 1, + "path": "src\\supervision\\keypoint\\annotators.py", + "symbol": "unused-import", + "message": "Unused EdgeAnnotator imported from supervision.key_points.annotators", + "message-id": "W0611" + }, + { + "type": "warning", + "module": "supervision.keypoint.annotators", + "obj": "", + "line": 8, + "column": 0, + "endLine": 13, + "endColumn": 1, + "path": "src\\supervision\\keypoint\\annotators.py", + "symbol": "unused-import", + "message": "Unused VertexAnnotator imported from supervision.key_points.annotators", + "message-id": "W0611" + }, + { + "type": "warning", + "module": "supervision.keypoint.annotators", + "obj": "", + "line": 8, + "column": 0, + "endLine": 13, + "endColumn": 1, + "path": "src\\supervision\\keypoint\\annotators.py", + "symbol": "unused-import", + "message": "Unused VertexLabelAnnotator imported from supervision.key_points.annotators", + "message-id": "W0611" + }, + { + "type": "warning", + "module": "supervision.keypoint.core", + "obj": "", + "line": 8, + "column": 0, + "endLine": 8, + "endColumn": 49, + "path": "src\\supervision\\keypoint\\core.py", + "symbol": "unused-import", + "message": "Unused KeyPoints imported from supervision.key_points.core", + "message-id": "W0611" + }, + { + "type": "warning", + "module": "supervision.key_points.core", + "obj": "KeyPoints.__getitem__", + "line": 999, + "column": 12, + "endLine": 999, + "endColumn": 59, + "path": "src\\supervision\\key_points\\core.py", + "symbol": "unbalanced-tuple-unpacking", + "message": "Possible unbalanced tuple unpacking with sequence defined at line 104 of numpy.lib._index_tricks_impl: left side has 2 labels, right side has 0 values", + "message-id": "W0632" + }, + { + "type": "warning", + "module": "supervision.metrics.detection", + "obj": "ConfusionMatrix.evaluate_detection_batch", + "line": 553, + "column": 29, + "endLine": 553, + "endColumn": 32, + "path": "src\\supervision\\metrics\\detection.py", + "symbol": "unused-variable", + "message": "Unused variable 'iou'", + "message-id": "W0612" + }, + { + "type": "warning", + "module": "supervision.metrics.detection", + "obj": "ConfusionMatrix.evaluate_detection_batch", + "line": 553, + "column": 34, + "endLine": 553, + "endColumn": 45, + "path": "src\\supervision\\metrics\\detection.py", + "symbol": "unused-variable", + "message": "Unused variable 'class_match'", + "message-id": "W0612" + }, + { + "type": "warning", + "module": "supervision.metrics.f1_score", + "obj": "F1Score.update", + "line": 92, + "column": 4, + "endLine": 92, + "endColumn": 14, + "path": "src\\supervision\\metrics\\f1_score.py", + "symbol": "arguments-differ", + "message": "Number of parameters was 3 in 'Metric.update' and is now 3 in overriding 'F1Score.update' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.metrics.f1_score", + "obj": "F1Score.update", + "line": 92, + "column": 4, + "endLine": 92, + "endColumn": 14, + "path": "src\\supervision\\metrics\\f1_score.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'F1Score.update' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.metrics.f1_score", + "obj": "F1Score.compute", + "line": 123, + "column": 4, + "endLine": 123, + "endColumn": 15, + "path": "src\\supervision\\metrics\\f1_score.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'F1Score.compute' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.metrics.mean_average_precision", + "obj": "MeanAveragePrecision.update", + "line": 1295, + "column": 4, + "endLine": 1295, + "endColumn": 14, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "arguments-differ", + "message": "Number of parameters was 3 in 'Metric.update' and is now 3 in overriding 'MeanAveragePrecision.update' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.metrics.mean_average_precision", + "obj": "MeanAveragePrecision.update", + "line": 1295, + "column": 4, + "endLine": 1295, + "endColumn": 14, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'MeanAveragePrecision.update' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.metrics.mean_average_precision", + "obj": "MeanAveragePrecision.compute", + "line": 1450, + "column": 4, + "endLine": 1450, + "endColumn": 15, + "path": "src\\supervision\\metrics\\mean_average_precision.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'MeanAveragePrecision.compute' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.metrics.mean_average_recall", + "obj": "MeanAverageRecall.update", + "line": 321, + "column": 4, + "endLine": 321, + "endColumn": 14, + "path": "src\\supervision\\metrics\\mean_average_recall.py", + "symbol": "arguments-differ", + "message": "Number of parameters was 3 in 'Metric.update' and is now 3 in overriding 'MeanAverageRecall.update' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.metrics.mean_average_recall", + "obj": "MeanAverageRecall.update", + "line": 321, + "column": 4, + "endLine": 321, + "endColumn": 14, + "path": "src\\supervision\\metrics\\mean_average_recall.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'MeanAverageRecall.update' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.metrics.mean_average_recall", + "obj": "MeanAverageRecall.compute", + "line": 352, + "column": 4, + "endLine": 352, + "endColumn": 15, + "path": "src\\supervision\\metrics\\mean_average_recall.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'MeanAverageRecall.compute' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.metrics.precision", + "obj": "Precision.update", + "line": 95, + "column": 4, + "endLine": 95, + "endColumn": 14, + "path": "src\\supervision\\metrics\\precision.py", + "symbol": "arguments-differ", + "message": "Number of parameters was 3 in 'Metric.update' and is now 3 in overriding 'Precision.update' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.metrics.precision", + "obj": "Precision.update", + "line": 95, + "column": 4, + "endLine": 95, + "endColumn": 14, + "path": "src\\supervision\\metrics\\precision.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'Precision.update' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.metrics.precision", + "obj": "Precision.compute", + "line": 126, + "column": 4, + "endLine": 126, + "endColumn": 15, + "path": "src\\supervision\\metrics\\precision.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'Precision.compute' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.metrics.recall", + "obj": "Recall.update", + "line": 95, + "column": 4, + "endLine": 95, + "endColumn": 14, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "arguments-differ", + "message": "Number of parameters was 3 in 'Metric.update' and is now 3 in overriding 'Recall.update' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.metrics.recall", + "obj": "Recall.update", + "line": 95, + "column": 4, + "endLine": 95, + "endColumn": 14, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'Recall.update' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.metrics.recall", + "obj": "Recall.compute", + "line": 126, + "column": 4, + "endLine": 126, + "endColumn": 15, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "arguments-differ", + "message": "Variadics removed in overriding 'Recall.compute' method", + "message-id": "W0221" + }, + { + "type": "warning", + "module": "supervision.metrics.recall", + "obj": "Recall._make_empty_content", + "line": 429, + "column": 8, + "endLine": 429, + "endColumn": 73, + "path": "src\\supervision\\metrics\\recall.py", + "symbol": "unreachable", + "message": "Unreachable code", + "message-id": "W0101" + }, + { + "type": "warning", + "module": "supervision.metrics.utils.utils", + "obj": "ensure_pandas_installed", + "line": 5, + "column": 8, + "endLine": 9, + "endColumn": 9, + "path": "src\\supervision\\metrics\\utils\\utils.py", + "symbol": "raise-missing-from", + "message": "Consider explicitly re-raising using 'except ImportError as exc' and 'raise ImportError(\"`metrics` extra is required to run the function. Run `uv pip install 'supervision[metrics]'` or `uv add supervision --extra metrics`.\") from exc'", + "message-id": "W0707" + }, + { + "type": "warning", + "module": "supervision.metrics.utils.utils", + "obj": "ensure_pandas_installed", + "line": 3, + "column": 8, + "endLine": 3, + "endColumn": 21, + "path": "src\\supervision\\metrics\\utils\\utils.py", + "symbol": "unused-import", + "message": "Unused import pandas", + "message-id": "W0611" + }, + { + "type": "warning", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack.update_with_tensors", + "line": 203, + "column": 12, + "endLine": 203, + "endColumn": 28, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "pointless-string-statement", + "message": "String statement has no effect", + "message-id": "W0105" + }, + { + "type": "warning", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack.update_with_tensors", + "line": 218, + "column": 8, + "endLine": 218, + "endColumn": 62, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "pointless-string-statement", + "message": "String statement has no effect", + "message-id": "W0105" + }, + { + "type": "warning", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack.update_with_tensors", + "line": 228, + "column": 8, + "endLine": 228, + "endColumn": 73, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "pointless-string-statement", + "message": "String statement has no effect", + "message-id": "W0105" + }, + { + "type": "warning", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack.update_with_tensors", + "line": 249, + "column": 8, + "endLine": 249, + "endColumn": 73, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "pointless-string-statement", + "message": "String statement has no effect", + "message-id": "W0105" + }, + { + "type": "warning", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack.update_with_tensors", + "line": 252, + "column": 12, + "endLine": 252, + "endColumn": 28, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "pointless-string-statement", + "message": "String statement has no effect", + "message-id": "W0105" + }, + { + "type": "warning", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack.update_with_tensors", + "line": 291, + "column": 8, + "endLine": 291, + "endColumn": 88, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "pointless-string-statement", + "message": "String statement has no effect", + "message-id": "W0105" + }, + { + "type": "warning", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack.update_with_tensors", + "line": 307, + "column": 8, + "endLine": 307, + "endColumn": 39, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "pointless-string-statement", + "message": "String statement has no effect", + "message-id": "W0105" + }, + { + "type": "warning", + "module": "supervision.tracker.byte_tracker.core", + "obj": "ByteTrack.update_with_tensors", + "line": 314, + "column": 8, + "endLine": 314, + "endColumn": 35, + "path": "src\\supervision\\tracker\\byte_tracker\\core.py", + "symbol": "pointless-string-statement", + "message": "String statement has no effect", + "message-id": "W0105" + }, + { + "type": "warning", + "module": "supervision.utils.file", + "obj": "NumpyJsonEncoder.default", + "line": 12, + "column": 4, + "endLine": 12, + "endColumn": 15, + "path": "src\\supervision\\utils\\file.py", + "symbol": "arguments-renamed", + "message": "Parameter 'o' has been renamed to 'obj' in overriding 'NumpyJsonEncoder.default' method", + "message-id": "W0237" + }, + { + "type": "warning", + "module": "supervision.utils.file", + "obj": "read_txt_file", + "line": 120, + "column": 9, + "endLine": 120, + "endColumn": 29, + "path": "src\\supervision\\utils\\file.py", + "symbol": "unspecified-encoding", + "message": "Using open without explicitly specifying an encoding", + "message-id": "W1514" + }, + { + "type": "warning", + "module": "supervision.utils.file", + "obj": "save_text_file", + "line": 137, + "column": 9, + "endLine": 137, + "endColumn": 34, + "path": "src\\supervision\\utils\\file.py", + "symbol": "unspecified-encoding", + "message": "Using open without explicitly specifying an encoding", + "message-id": "W1514" + }, + { + "type": "warning", + "module": "supervision.utils.file", + "obj": "read_json_file", + "line": 166, + "column": 9, + "endLine": 166, + "endColumn": 29, + "path": "src\\supervision\\utils\\file.py", + "symbol": "unspecified-encoding", + "message": "Using open without explicitly specifying an encoding", + "message-id": "W1514" + }, + { + "type": "warning", + "module": "supervision.utils.file", + "obj": "save_json_file", + "line": 182, + "column": 9, + "endLine": 182, + "endColumn": 34, + "path": "src\\supervision\\utils\\file.py", + "symbol": "unspecified-encoding", + "message": "Using open without explicitly specifying an encoding", + "message-id": "W1514" + }, + { + "type": "warning", + "module": "supervision.utils.file", + "obj": "read_yaml_file", + "line": 196, + "column": 9, + "endLine": 196, + "endColumn": 29, + "path": "src\\supervision\\utils\\file.py", + "symbol": "unspecified-encoding", + "message": "Using open without explicitly specifying an encoding", + "message-id": "W1514" + }, + { + "type": "warning", + "module": "supervision.utils.file", + "obj": "save_yaml_file", + "line": 210, + "column": 9, + "endLine": 210, + "endColumn": 34, + "path": "src\\supervision\\utils\\file.py", + "symbol": "unspecified-encoding", + "message": "Using open without explicitly specifying an encoding", + "message-id": "W1514" + }, + { + "type": "warning", + "module": "supervision.utils.internal", + "obj": "SupervisionWarnings", + "line": 18, + "column": 4, + "endLine": 18, + "endColumn": 8, + "path": "src\\supervision\\utils\\internal.py", + "symbol": "unnecessary-pass", + "message": "Unnecessary pass statement", + "message-id": "W0107" + }, + { + "type": "warning", + "module": "supervision.utils.internal", + "obj": "format_warning", + "line": 24, + "column": 4, + "endLine": 24, + "endColumn": 17, + "path": "src\\supervision\\utils\\internal.py", + "symbol": "unused-argument", + "message": "Unused argument 'filename'", + "message-id": "W0613" + }, + { + "type": "warning", + "module": "supervision.utils.internal", + "obj": "format_warning", + "line": 25, + "column": 4, + "endLine": 25, + "endColumn": 15, + "path": "src\\supervision\\utils\\internal.py", + "symbol": "unused-argument", + "message": "Unused argument 'lineno'", + "message-id": "W0613" + }, + { + "type": "warning", + "module": "supervision.utils.internal", + "obj": "format_warning", + "line": 26, + "column": 4, + "endLine": 26, + "endColumn": 20, + "path": "src\\supervision\\utils\\internal.py", + "symbol": "unused-argument", + "message": "Unused argument 'line'", + "message-id": "W0613" + }, + { + "type": "warning", + "module": "supervision.utils.video", + "obj": "VideoInfo.from_video_path", + "line": 62, + "column": 12, + "endLine": 62, + "endColumn": 68, + "path": "src\\supervision\\utils\\video.py", + "symbol": "broad-exception-raised", + "message": "Raising too general exception: Exception", + "message-id": "W0719" + }, + { + "type": "warning", + "module": "supervision.utils.video", + "obj": "VideoSink.__enter__", + "line": 107, + "column": 12, + "endLine": 107, + "endColumn": 25, + "path": "src\\supervision\\utils\\video.py", + "symbol": "attribute-defined-outside-init", + "message": "Attribute '__fourcc' defined outside __init__", + "message-id": "W0201" + }, + { + "type": "warning", + "module": "supervision.utils.video", + "obj": "VideoSink.__enter__", + "line": 110, + "column": 12, + "endLine": 110, + "endColumn": 25, + "path": "src\\supervision\\utils\\video.py", + "symbol": "attribute-defined-outside-init", + "message": "Attribute '__fourcc' defined outside __init__", + "message-id": "W0201" + }, + { + "type": "warning", + "module": "supervision.utils.video", + "obj": "_mux_audio", + "line": 198, + "column": 11, + "endLine": 198, + "endColumn": 20, + "path": "src\\supervision\\utils\\video.py", + "symbol": "broad-exception-caught", + "message": "Catching too general exception Exception", + "message-id": "W0718" + }, + { + "type": "warning", + "module": "supervision.utils.video", + "obj": "_mux_audio", + "line": 162, + "column": 17, + "endLine": 187, + "endColumn": 9, + "path": "src\\supervision\\utils\\video.py", + "symbol": "subprocess-run-check", + "message": "'subprocess.run' used without explicitly defining the value for 'check'.", + "message-id": "W1510" + }, + { + "type": "warning", + "module": "supervision.utils.video", + "obj": "_validate_and_setup_video", + "line": 212, + "column": 8, + "endLine": 212, + "endColumn": 65, + "path": "src\\supervision\\utils\\video.py", + "symbol": "broad-exception-raised", + "message": "Raising too general exception: Exception", + "message-id": "W0719" + }, + { + "type": "warning", + "module": "supervision.utils.video", + "obj": "_validate_and_setup_video", + "line": 215, + "column": 8, + "endLine": 215, + "endColumn": 56, + "path": "src\\supervision\\utils\\video.py", + "symbol": "broad-exception-raised", + "message": "Raising too general exception: Exception", + "message-id": "W0719" + }, + { + "type": "warning", + "module": "supervision.utils.video", + "obj": "process_video", + "line": 417, + "column": 23, + "endLine": 417, + "endColumn": 32, + "path": "src\\supervision\\utils\\video.py", + "symbol": "broad-exception-caught", + "message": "Catching too general exception Exception", + "message-id": "W0718" + } +] \ No newline at end of file diff --git a/metrics-before-pytest/coverage_antes.json b/metrics-before-pytest/coverage_antes.json new file mode 100644 index 0000000000..3f62447dfd --- /dev/null +++ b/metrics-before-pytest/coverage_antes.json @@ -0,0 +1 @@ +{"meta": {"format": 3, "version": "7.13.1", "timestamp": "2026-06-25T18:53:43.962890", "branch_coverage": true, "show_contexts": false}, "files": {"extract_metrics_before_codecarbon.py": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 28, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 28, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 2, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [1, 2, 3, 4, 9, 12, 16, 26, 29, 32, 34, 43, 44, 45, 46, 48, 50, 51, 52, 53, 54, 55, 57, 59, 60, 61, 62, 63], "excluded_lines": [], "executed_branches": [], "missing_branches": [[45, 46], [45, 48]], "functions": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 28, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 28, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 2, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [1, 2, 3, 4, 9, 12, 16, 26, 29, 32, 34, 43, 44, 45, 46, 48, 50, 51, 52, 53, 54, 55, 57, 59, 60, 61, 62, 63], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": [[45, 46], [45, 48]]}}, "classes": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 28, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 28, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 2, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [1, 2, 3, 4, 9, 12, 16, 26, 29, 32, 34, 43, 44, 45, 46, 48, 50, 51, 52, 53, 54, 55, 57, 59, 60, 61, 62, 63], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": [[45, 46], [45, 48]]}}}, "extract_metrics_before_pylint.py": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 58, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 58, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 8, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 8, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [1, 2, 3, 4, 5, 8, 9, 11, 14, 16, 24, 25, 26, 27, 30, 31, 32, 33, 34, 36, 37, 38, 41, 42, 43, 44, 46, 54, 55, 56, 57, 58, 60, 63, 64, 65, 66, 67, 73, 76, 77, 78, 79, 80, 81, 83, 88, 89, 90, 91, 94, 95, 103, 104, 105, 106, 107, 109], "excluded_lines": [], "executed_branches": [], "missing_branches": [[36, 37], [36, 41], [42, 43], [42, 46], [54, 55], [54, 60], [77, 78], [77, 83]], "functions": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 58, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 58, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 8, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 8, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [1, 2, 3, 4, 5, 8, 9, 11, 14, 16, 24, 25, 26, 27, 30, 31, 32, 33, 34, 36, 37, 38, 41, 42, 43, 44, 46, 54, 55, 56, 57, 58, 60, 63, 64, 65, 66, 67, 73, 76, 77, 78, 79, 80, 81, 83, 88, 89, 90, 91, 94, 95, 103, 104, 105, 106, 107, 109], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": [[36, 37], [36, 41], [42, 43], [42, 46], [54, 55], [54, 60], [77, 78], [77, 83]]}}, "classes": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 58, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 58, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 8, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 8, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [1, 2, 3, 4, 5, 8, 9, 11, 14, 16, 24, 25, 26, 27, 30, 31, 32, 33, 34, 36, 37, 38, 41, 42, 43, 44, 46, 54, 55, 56, 57, 58, 60, 63, 64, 65, 66, 67, 73, 76, 77, 78, 79, 80, 81, 83, 88, 89, 90, 91, 94, 95, 103, 104, 105, 106, 107, 109], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": [[36, 37], [36, 41], [42, 43], [42, 46], [54, 55], [54, 60], [77, 78], [77, 83]]}}}, "extract_metrics_before_pytest.py": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 32, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 32, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 8, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 8, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [1, 2, 3, 4, 9, 13, 16, 19, 21, 22, 23, 24, 25, 27, 28, 29, 30, 31, 34, 36, 37, 38, 39, 41, 63, 64, 65, 66, 67, 68, 69, 70], "excluded_lines": [], "executed_branches": [], "missing_branches": [[21, 22], [21, 27], [22, 23], [22, 27], [23, 22], [23, 24], [27, 28], [27, 34]], "functions": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 32, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 32, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 8, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 8, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [1, 2, 3, 4, 9, 13, 16, 19, 21, 22, 23, 24, 25, 27, 28, 29, 30, 31, 34, 36, 37, 38, 39, 41, 63, 64, 65, 66, 67, 68, 69, 70], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": [[21, 22], [21, 27], [22, 23], [22, 27], [23, 22], [23, 24], [27, 28], [27, 34]]}}, "classes": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 32, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 32, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 8, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 8, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [1, 2, 3, 4, 9, 13, 16, 19, 21, 22, 23, 24, 25, 27, 28, 29, 30, 31, 34, 36, 37, 38, 39, 41, 63, 64, 65, 66, 67, 68, 69, 70], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": [[21, 22], [21, 27], [22, 23], [22, 27], [23, 22], [23, 24], [27, 28], [27, 34]]}}}, "extract_metrics_before_radon.py": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 111, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 111, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 34, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 34, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [1, 2, 3, 4, 7, 8, 12, 13, 16, 19, 20, 21, 22, 23, 24, 25, 26, 29, 30, 32, 33, 34, 35, 36, 37, 38, 39, 41, 43, 58, 60, 61, 62, 63, 64, 65, 68, 69, 79, 80, 81, 82, 83, 84, 96, 97, 98, 101, 103, 104, 105, 106, 107, 108, 109, 110, 111, 113, 114, 115, 116, 130, 145, 147, 148, 150, 151, 152, 153, 154, 155, 157, 158, 159, 160, 161, 164, 165, 167, 168, 169, 170, 171, 174, 176, 177, 178, 179, 180, 181, 182, 184, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 202, 203, 204, 205, 206, 207, 209], "excluded_lines": [], "executed_branches": [], "missing_branches": [[68, 69], [68, 79], [81, 82], [81, 98], [82, 83], [82, 84], [96, 81], [96, 97], [103, 104], [103, 145], [105, 106], [105, 113], [107, 108], [107, 109], [113, 114], [113, 130], [147, 148], [147, 174], [152, 153], [152, 155], [157, 147], [157, 158], [160, 161], [160, 165], [168, 169], [168, 171], [176, 177], [176, 184], [178, 179], [178, 182], [189, 190], [189, 192], [192, 193], [192, 194]], "functions": {"normalizar_caminho": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [8], "excluded_lines": [], "start_line": 7, "executed_branches": [], "missing_branches": []}, "rodar_radon": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 2, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [13, 16], "excluded_lines": [], "start_line": 12, "executed_branches": [], "missing_branches": []}, "extrair_funcoes": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 8, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 8, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 6, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [80, 81, 82, 83, 84, 96, 97, 98], "excluded_lines": [], "start_line": 79, "executed_branches": [], "missing_branches": [[81, 82], [81, 98], [82, 83], [82, 84], [96, 81], [96, 97]]}, "salvar_csv": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 11, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 11, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 4, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199], "excluded_lines": [], "start_line": 188, "executed_branches": [], "missing_branches": [[189, 190], [189, 192], [192, 193], [192, 194]]}, "": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 89, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 89, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 24, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 24, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [1, 2, 3, 4, 7, 12, 19, 20, 21, 22, 23, 24, 25, 26, 29, 30, 32, 33, 34, 35, 36, 37, 38, 39, 41, 43, 58, 60, 61, 62, 63, 64, 65, 68, 69, 79, 101, 103, 104, 105, 106, 107, 108, 109, 110, 111, 113, 114, 115, 116, 130, 145, 147, 148, 150, 151, 152, 153, 154, 155, 157, 158, 159, 160, 161, 164, 165, 167, 168, 169, 170, 171, 174, 176, 177, 178, 179, 180, 181, 182, 184, 188, 202, 203, 204, 205, 206, 207, 209], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": [[68, 69], [68, 79], [103, 104], [103, 145], [105, 106], [105, 113], [107, 108], [107, 109], [113, 114], [113, 130], [147, 148], [147, 174], [152, 153], [152, 155], [157, 147], [157, 158], [160, 161], [160, 165], [168, 169], [168, 171], [176, 177], [176, 184], [178, 179], [178, 182]]}}, "classes": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 111, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 111, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 34, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 34, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [1, 2, 3, 4, 7, 8, 12, 13, 16, 19, 20, 21, 22, 23, 24, 25, 26, 29, 30, 32, 33, 34, 35, 36, 37, 38, 39, 41, 43, 58, 60, 61, 62, 63, 64, 65, 68, 69, 79, 80, 81, 82, 83, 84, 96, 97, 98, 101, 103, 104, 105, 106, 107, 108, 109, 110, 111, 113, 114, 115, 116, 130, 145, 147, 148, 150, 151, 152, 153, 154, 155, 157, 158, 159, 160, 161, 164, 165, 167, 168, 169, 170, 171, 174, 176, 177, 178, 179, 180, 181, 182, 184, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 202, 203, 204, 205, 206, 207, 209], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": [[68, 69], [68, 79], [81, 82], [81, 98], [82, 83], [82, 84], [96, 81], [96, 97], [103, 104], [103, 145], [105, 106], [105, 113], [107, 108], [107, 109], [113, 114], [113, 130], [147, 148], [147, 174], [152, 153], [152, 155], [157, 147], [157, 158], [160, 161], [160, 165], [168, 169], [168, 171], [176, 177], [176, 184], [178, 179], [178, 182], [189, 190], [189, 192], [192, 193], [192, 194]]}}}, "extract_score_before_pylint.py": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 13, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 13, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 4, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [1, 2, 4, 5, 7, 9, 16, 17, 18, 19, 20, 21, 23], "excluded_lines": [], "executed_branches": [], "missing_branches": [[18, 19], [18, 23], [19, 18], [19, 20]], "functions": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 13, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 13, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 4, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [1, 2, 4, 5, 7, 9, 16, 17, 18, 19, 20, 21, 23], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": [[18, 19], [18, 23], [19, 18], [19, 20]]}}, "classes": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 13, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 13, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 4, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [1, 2, 4, 5, 7, 9, 16, 17, 18, 19, 20, 21, 23], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": [[18, 19], [18, 23], [19, 18], [19, 20]]}}}, "src\\supervision\\__init__.py": {"executed_lines": [1, 3, 5, 9, 34, 40, 41, 46, 47, 48, 49, 54, 55, 56, 57, 58, 59, 67, 82, 97, 104, 108, 109, 110, 111, 122, 123, 124, 133, 134, 135, 136, 137, 138, 149, 150, 158], "summary": {"covered_lines": 37, "num_statements": 39, "percent_covered": 94.87179487179488, "percent_covered_display": "95", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 94.87179487179488, "percent_statements_covered_display": "95", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [6, 7], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"": {"executed_lines": [1, 3, 5, 9, 34, 40, 41, 46, 47, 48, 49, 54, 55, 56, 57, 58, 59, 67, 82, 97, 104, 108, 109, 110, 111, 122, 123, 124, 133, 134, 135, 136, 137, 138, 149, 150, 158], "summary": {"covered_lines": 37, "num_statements": 39, "percent_covered": 94.87179487179488, "percent_covered_display": "95", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 94.87179487179488, "percent_statements_covered_display": "95", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [6, 7], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 3, 5, 9, 34, 40, 41, 46, 47, 48, 49, 54, 55, 56, 57, 58, 59, 67, 82, 97, 104, 108, 109, 110, 111, 122, 123, 124, 133, 134, 135, 136, 137, 138, 149, 150, 158], "summary": {"covered_lines": 37, "num_statements": 39, "percent_covered": 94.87179487179488, "percent_covered_display": "95", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 94.87179487179488, "percent_statements_covered_display": "95", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [6, 7], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "src\\supervision\\annotators\\__init__.py": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "src\\supervision\\annotators\\base.py": {"executed_lines": [1, 2, 4, 7, 8, 9], "summary": {"covered_lines": 6, "num_statements": 7, "percent_covered": 85.71428571428571, "percent_covered_display": "86", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 85.71428571428571, "percent_statements_covered_display": "86", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [12], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"BaseAnnotator.annotate": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [12], "excluded_lines": [], "start_line": 9, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 2, 4, 7, 8, 9], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"BaseAnnotator": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [12], "excluded_lines": [], "start_line": 7, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 2, 4, 7, 8, 9], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "src\\supervision\\annotators\\core.py": {"executed_lines": [1, 3, 4, 5, 7, 8, 9, 10, 11, 12, 14, 15, 29, 30, 31, 32, 33, 38, 39, 40, 41, 42, 46, 52, 54, 67, 74, 75, 76, 77, 80, 83, 103, 137, 138, 139, 140, 141, 142, 143, 144, 145, 147, 190, 195, 209, 210, 211, 213, 214, 255, 257, 258, 259, 267, 274, 277, 282, 296, 297, 298, 300, 301, 342, 344, 345, 365, 393, 394, 395, 396, 399, 400, 401, 407, 408, 409, 410, 411, 412, 413, 414, 416, 417, 418, 419, 420, 423, 432, 446, 447, 448, 450, 451, 493, 495, 496, 498, 499, 505, 508, 511, 520, 534, 535, 536, 538, 539, 580, 582, 583, 585, 586, 587, 595, 596, 603, 606, 611, 625, 626, 627, 629, 630, 671, 673, 674, 675, 676, 684, 692, 695, 698, 707, 724, 725, 726, 727, 729, 730, 772, 774, 775, 776, 777, 784, 786, 787, 788, 789, 790, 792, 793, 794, 795, 796, 797, 800, 805, 823, 824, 825, 826, 827, 829, 830, 871, 873, 874, 875, 883, 884, 885, 896, 899, 904, 920, 921, 922, 923, 925, 926, 967, 969, 970, 971, 979, 981, 982, 983, 987, 988, 991, 994, 999, 1014, 1015, 1016, 1018, 1019, 1061, 1063, 1064, 1065, 1066, 1067, 1075, 1083, 1086, 1092, 1114, 1115, 1116, 1117, 1118, 1119, 1121, 1122, 1163, 1165, 1166, 1167, 1175, 1177, 1178, 1194, 1197, 1202, 1237, 1238, 1239, 1251, 1252, 1303, 1305, 1307, 1308, 1312, 1323, 1331, 1333, 1338, 1339, 1343, 1344, 1349, 1350, 1351, 1353, 1354, 1360, 1361, 1364, 1365, 1370, 1371, 1373, 1379, 1385, 1387, 1395, 1401, 1407, 1408, 1414, 1421, 1423, 1431, 1432, 1434, 1435, 1446, 1453, 1454, 1456, 1467, 1469, 1470, 1476, 1477, 1478, 1480, 1482, 1486, 1493, 1494, 1501, 1502, 1509, 1512, 1518, 1553, 1554, 1555, 1556, 1568, 1569, 1619, 1620, 1622, 1623, 1624, 1628, 1639, 1647, 1649, 1652, 1654, 1658, 1659, 1664, 1667, 1668, 1670, 1671, 1672, 1673, 1675, 1676, 1679, 1682, 1683, 1685, 1692, 1694, 1696, 1699, 1701, 1709, 1714, 1720, 1721, 1727, 1734, 1735, 1736, 1739, 1747, 1748, 1749, 1751, 1752, 1760, 1761, 1762, 1764, 1765, 1768, 1771, 1772, 1776, 1777, 1788, 1793, 1811, 1812, 1883, 1884, 1897, 1902, 1909, 1910, 1911, 1913, 1914, 1952, 1954, 1955, 1959, 1960, 1961, 1962, 1963, 1968, 1969, 1971, 1974, 1985, 2010, 2011, 2012, 2013, 2014, 2016, 2017, 2065, 2067, 2072, 2076, 2077, 2078, 2079, 2081, 2082, 2090, 2091, 2093, 2094, 2097, 2098, 2099, 2100, 2101, 2102, 2106, 2108, 2109, 2116, 2119, 2126, 2146, 2147, 2148, 2149, 2150, 2151, 2152, 2154, 2155, 2198, 2200, 2201, 2203, 2204, 2205, 2206, 2213, 2214, 2215, 2216, 2217, 2218, 2219, 2220, 2221, 2222, 2223, 2224, 2225, 2228, 2231, 2236, 2245, 2246, 2247, 2249, 2250, 2286, 2288, 2289, 2293, 2294, 2295, 2296, 2298, 2303, 2304, 2305, 2307, 2308, 2309, 2311, 2314, 2320, 2322, 2325, 2331, 2355, 2356, 2357, 2358, 2359, 2360, 2361, 2363, 2364, 2405, 2407, 2408, 2409, 2417, 2418, 2427, 2428, 2444, 2447, 2453, 2472, 2473, 2474, 2475, 2477, 2479, 2480, 2522, 2524, 2525, 2526, 2535, 2541, 2548, 2555, 2556, 2558, 2561, 2572, 2580, 2583, 2588, 2610, 2611, 2612, 2613, 2614, 2615, 2617, 2623, 2624, 2674, 2676, 2678, 2679, 2680, 2681, 2686, 2688, 2691, 2692, 2694, 2702, 2712, 2719, 2721, 2722, 2725, 2726, 2728, 2730, 2731, 2750, 2751, 2755, 2756, 2764, 2769, 2774, 2777, 2778, 2783, 2790, 2795, 2816, 2817, 2818, 2819, 2820, 2822, 2823, 2867, 2869, 2872, 2875, 2879, 2880, 2881, 2884, 2885, 2893, 2901, 2903, 2904, 2907, 2908, 2910, 2912, 2913, 2945, 2960, 2973, 2974, 2975, 2977, 2978, 3012, 3014, 3016, 3020, 3021, 3022, 3024, 3025, 3026, 3028, 3029, 3032, 3043, 3069, 3070, 3071, 3073, 3074, 3075, 3076, 3077, 3078, 3080, 3081, 3117, 3119, 3120, 3122, 3123, 3125, 3129, 3134, 3135, 3137, 3138, 3139, 3141, 3142, 3143, 3144, 3146, 3149, 3152, 3156, 3158, 3160, 3161, 3162, 3163, 3164, 3165, 3171, 3172, 3173, 3174, 3175, 3176, 3182, 3183, 3186, 3187, 3190, 3191, 3193, 3194, 3195, 3196, 3198, 3199, 3213, 3214, 3226, 3234, 3235, 3236, 3237, 3239, 3240, 3241, 3242, 3243, 3245, 3251, 3252, 3253, 3254], "summary": {"covered_lines": 669, "num_statements": 819, "percent_covered": 77.07362534948741, "percent_covered_display": "77", "missing_lines": 150, "excluded_lines": 10, "percent_statements_covered": 81.68498168498168, "percent_statements_covered_display": "82", "num_branches": 254, "num_partial_branches": 46, "covered_branches": 158, "missing_branches": 96, "percent_branches_covered": 62.20472440944882, "percent_branches_covered_display": "62"}, "missing_lines": [165, 168, 174, 176, 178, 180, 183, 187, 256, 343, 346, 348, 349, 350, 359, 361, 494, 581, 672, 773, 872, 968, 1062, 1164, 1179, 1187, 1304, 1313, 1314, 1315, 1317, 1437, 1443, 1444, 1629, 1630, 1631, 1633, 1680, 1773, 1774, 1779, 1780, 1781, 1782, 1785, 1807, 1808, 1809, 1855, 1856, 1857, 1858, 1864, 1868, 1869, 1872, 1873, 1874, 1875, 1877, 1878, 1880, 1881, 1885, 1886, 1887, 1890, 1894, 1953, 2066, 2068, 2080, 2103, 2104, 2199, 2287, 2406, 2429, 2437, 2476, 2523, 2675, 2689, 2729, 2732, 2733, 2734, 2735, 2736, 2737, 2741, 2742, 2743, 2744, 2745, 2746, 2747, 2748, 2757, 2765, 2770, 2775, 2787, 2868, 2911, 2917, 2918, 2919, 2920, 2924, 2925, 2929, 2930, 2934, 2935, 2936, 2937, 2941, 2942, 3013, 3118, 3126, 3127, 3130, 3131, 3188, 3202, 3203, 3204, 3206, 3208, 3209, 3210, 3211, 3217, 3218, 3219, 3220, 3222, 3223, 3224, 3256, 3263, 3264, 3265, 3267, 3274, 3286, 3294], "excluded_lines": [57, 58, 59, 60, 61, 62, 63, 64, 65, 66], "executed_branches": [[74, 75], [74, 77], [255, 257], [257, 258], [257, 274], [342, 344], [344, 345], [394, 395], [394, 396], [400, 401], [400, 420], [407, 408], [407, 416], [413, 400], [413, 414], [418, 400], [418, 419], [493, 495], [495, 496], [495, 498], [580, 582], [582, 583], [582, 585], [585, 586], [585, 603], [595, 585], [595, 596], [671, 673], [674, 675], [674, 692], [772, 774], [774, 775], [774, 776], [790, 792], [790, 793], [871, 873], [873, 874], [873, 896], [967, 969], [969, 970], [969, 991], [981, 969], [981, 982], [1061, 1063], [1063, 1064], [1063, 1083], [1163, 1165], [1166, 1167], [1166, 1194], [1178, 1166], [1303, 1305], [1312, 1323], [1343, 1344], [1343, 1385], [1353, 1354], [1353, 1364], [1407, -1387], [1407, 1408], [1434, 1407], [1434, 1435], [1435, 1446], [1493, 1494], [1493, 1501], [1501, 1502], [1501, 1509], [1628, 1639], [1658, 1659], [1658, 1696], [1670, 1671], [1670, 1679], [1679, 1682], [1720, -1701], [1720, 1721], [1751, 1720], [1751, 1752], [1776, 1777], [1909, 1910], [1909, 1911], [1952, 1954], [1959, 1960], [1959, 1971], [1960, 1961], [1960, 1962], [2065, 2067], [2067, 2072], [2077, 2078], [2077, 2116], [2079, 2081], [2093, 2094], [2093, 2108], [2097, 2098], [2097, 2106], [2108, 2077], [2108, 2109], [2198, 2200], [2200, 2201], [2200, 2203], [2204, 2205], [2204, 2213], [2216, 2217], [2216, 2218], [2219, 2220], [2245, 2246], [2245, 2247], [2286, 2288], [2293, 2294], [2293, 2322], [2294, 2295], [2294, 2296], [2303, 2304], [2303, 2311], [2304, 2305], [2304, 2307], [2405, 2407], [2408, 2409], [2408, 2444], [2428, 2408], [2475, 2477], [2522, 2524], [2524, 2525], [2524, 2580], [2558, 2524], [2558, 2561], [2674, 2676], [2679, 2680], [2679, 2719], [2688, 2691], [2728, 2730], [2730, 2731], [2755, 2756], [2755, 2764], [2756, -2750], [2764, 2769], [2769, 2774], [2774, -2750], [2867, 2869], [2879, 2880], [2879, 2901], [2910, 2912], [2912, 2913], [3012, 3014], [3020, 3021], [3020, 3024], [3021, 3022], [3021, 3028], [3024, 3025], [3024, 3028], [3117, 3119], [3119, 3120], [3119, 3122], [3125, 3129], [3129, 3134], [3187, 3190], [3193, 3194], [3193, 3196], [3252, -3226], [3252, 3253], [3253, 3254]], "missing_branches": [[174, 176], [174, 187], [255, 256], [342, 343], [344, 346], [348, 349], [348, 361], [493, 494], [580, 581], [671, 672], [772, 773], [871, 872], [967, 968], [1061, 1062], [1163, 1164], [1178, 1179], [1303, 1304], [1312, 1313], [1435, 1437], [1628, 1629], [1679, 1680], [1776, 1779], [1855, 1856], [1855, 1857], [1857, 1858], [1857, 1864], [1868, 1869], [1868, 1881], [1872, 1873], [1872, 1874], [1886, 1887], [1886, 1890], [1952, 1953], [2065, 2066], [2067, 2068], [2079, 2080], [2198, 2199], [2219, 2221], [2286, 2287], [2405, 2406], [2428, 2429], [2475, 2476], [2522, 2523], [2674, 2675], [2688, 2689], [2728, 2729], [2730, 2732], [2732, 2733], [2732, 2734], [2734, 2735], [2734, 2736], [2736, 2737], [2736, 2741], [2741, 2742], [2741, 2743], [2743, 2744], [2743, 2745], [2745, 2746], [2745, 2747], [2747, -2721], [2747, 2748], [2756, 2757], [2764, 2765], [2769, 2770], [2774, 2775], [2867, 2868], [2910, 2911], [2912, 2917], [2917, 2918], [2917, 2919], [2919, 2920], [2919, 2924], [2924, 2925], [2924, 2929], [2929, 2930], [2929, 2934], [2934, 2935], [2934, 2936], [2936, 2937], [2936, 2941], [2941, -2903], [2941, 2942], [3012, 3013], [3117, 3118], [3125, 3126], [3129, 3130], [3187, 3188], [3203, 3204], [3203, 3206], [3208, 3209], [3208, 3211], [3218, 3219], [3218, 3220], [3222, 3223], [3222, 3224], [3253, 3256]], "functions": {"_normalize_color_input": {"executed_lines": [74, 75, 76, 77], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 67, "executed_branches": [[74, 75], [74, 77]], "missing_branches": []}, "_BaseLabelAnnotator.__init__": {"executed_lines": [137, 138, 139, 140, 141, 142, 143, 144, 145], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 103, "executed_branches": [], "missing_branches": []}, "_BaseLabelAnnotator._adjust_labels_in_frame": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 8, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 8, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 2, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [165, 168, 174, 176, 178, 180, 183, 187], "excluded_lines": [], "start_line": 147, "executed_branches": [], "missing_branches": [[174, 176], [174, 187]]}, "BoxAnnotator.__init__": {"executed_lines": [209, 210, 211], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 195, "executed_branches": [], "missing_branches": []}, "BoxAnnotator.annotate": {"executed_lines": [255, 257, 258, 259, 267, 274], "summary": {"covered_lines": 6, "num_statements": 7, "percent_covered": 81.81818181818181, "percent_covered_display": "82", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 85.71428571428571, "percent_statements_covered_display": "86", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [256], "excluded_lines": [], "start_line": 214, "executed_branches": [[255, 257], [257, 258], [257, 274]], "missing_branches": [[255, 256]]}, "OrientedBoxAnnotator.__init__": {"executed_lines": [296, 297, 298], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 282, "executed_branches": [], "missing_branches": []}, "OrientedBoxAnnotator.annotate": {"executed_lines": [342, 344, 345], "summary": {"covered_lines": 3, "num_statements": 10, "percent_covered": 31.25, "percent_covered_display": "31", "missing_lines": 7, "excluded_lines": 0, "percent_statements_covered": 30.0, "percent_statements_covered_display": "30", "num_branches": 6, "num_partial_branches": 2, "covered_branches": 2, "missing_branches": 4, "percent_branches_covered": 33.333333333333336, "percent_branches_covered_display": "33"}, "missing_lines": [343, 346, 348, 349, 350, 359, 361], "excluded_lines": [], "start_line": 301, "executed_branches": [[342, 344], [344, 345]], "missing_branches": [[342, 343], [344, 346], [348, 349], [348, 361]]}, "_paint_masks_by_area": {"executed_lines": [393, 394, 395, 396, 399, 400, 401, 407, 408, 409, 410, 411, 412, 413, 414, 416, 417, 418, 419, 420], "summary": {"covered_lines": 20, "num_statements": 20, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 10, "num_partial_branches": 0, "covered_branches": 10, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 365, "executed_branches": [[394, 395], [394, 396], [400, 401], [400, 420], [407, 408], [407, 416], [413, 400], [413, 414], [418, 400], [418, 419]], "missing_branches": []}, "MaskAnnotator.__init__": {"executed_lines": [446, 447, 448], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 432, "executed_branches": [], "missing_branches": []}, "MaskAnnotator.annotate": {"executed_lines": [493, 495, 496, 498, 499, 505, 508], "summary": {"covered_lines": 7, "num_statements": 8, "percent_covered": 83.33333333333333, "percent_covered_display": "83", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 87.5, "percent_statements_covered_display": "88", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [494], "excluded_lines": [], "start_line": 451, "executed_branches": [[493, 495], [495, 496], [495, 498]], "missing_branches": [[493, 494]]}, "PolygonAnnotator.__init__": {"executed_lines": [534, 535, 536], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 520, "executed_branches": [], "missing_branches": []}, "PolygonAnnotator.annotate": {"executed_lines": [580, 582, 583, 585, 586, 587, 595, 596, 603], "summary": {"covered_lines": 9, "num_statements": 10, "percent_covered": 88.88888888888889, "percent_covered_display": "89", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 90.0, "percent_statements_covered_display": "90", "num_branches": 8, "num_partial_branches": 1, "covered_branches": 7, "missing_branches": 1, "percent_branches_covered": 87.5, "percent_branches_covered_display": "88"}, "missing_lines": [581], "excluded_lines": [], "start_line": 539, "executed_branches": [[580, 582], [582, 583], [582, 585], [585, 586], [585, 603], [595, 585], [595, 596]], "missing_branches": [[580, 581]]}, "ColorAnnotator.__init__": {"executed_lines": [625, 626, 627], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 611, "executed_branches": [], "missing_branches": []}, "ColorAnnotator.annotate": {"executed_lines": [671, 673, 674, 675, 676, 684, 692, 695], "summary": {"covered_lines": 8, "num_statements": 9, "percent_covered": 84.61538461538461, "percent_covered_display": "85", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 88.88888888888889, "percent_statements_covered_display": "89", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [672], "excluded_lines": [], "start_line": 630, "executed_branches": [[671, 673], [674, 675], [674, 692]], "missing_branches": [[671, 672]]}, "HaloAnnotator.__init__": {"executed_lines": [724, 725, 726, 727], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 707, "executed_branches": [], "missing_branches": []}, "HaloAnnotator.annotate": {"executed_lines": [772, 774, 775, 776, 777, 784, 786, 787, 788, 789, 790, 792, 793, 794, 795, 796, 797], "summary": {"covered_lines": 17, "num_statements": 18, "percent_covered": 91.66666666666667, "percent_covered_display": "92", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 94.44444444444444, "percent_statements_covered_display": "94", "num_branches": 6, "num_partial_branches": 1, "covered_branches": 5, "missing_branches": 1, "percent_branches_covered": 83.33333333333333, "percent_branches_covered_display": "83"}, "missing_lines": [773], "excluded_lines": [], "start_line": 730, "executed_branches": [[772, 774], [774, 775], [774, 776], [790, 792], [790, 793]], "missing_branches": [[772, 773]]}, "EllipseAnnotator.__init__": {"executed_lines": [823, 824, 825, 826, 827], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 805, "executed_branches": [], "missing_branches": []}, "EllipseAnnotator.annotate": {"executed_lines": [871, 873, 874, 875, 883, 884, 885, 896], "summary": {"covered_lines": 8, "num_statements": 9, "percent_covered": 84.61538461538461, "percent_covered_display": "85", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 88.88888888888889, "percent_statements_covered_display": "89", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [872], "excluded_lines": [], "start_line": 830, "executed_branches": [[871, 873], [873, 874], [873, 896]], "missing_branches": [[871, 872]]}, "BoxCornerAnnotator.__init__": {"executed_lines": [920, 921, 922, 923], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 904, "executed_branches": [], "missing_branches": []}, "BoxCornerAnnotator.annotate": {"executed_lines": [967, 969, 970, 971, 979, 981, 982, 983, 987, 988, 991], "summary": {"covered_lines": 11, "num_statements": 12, "percent_covered": 88.88888888888889, "percent_covered_display": "89", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 91.66666666666667, "percent_statements_covered_display": "92", "num_branches": 6, "num_partial_branches": 1, "covered_branches": 5, "missing_branches": 1, "percent_branches_covered": 83.33333333333333, "percent_branches_covered_display": "83"}, "missing_lines": [968], "excluded_lines": [], "start_line": 926, "executed_branches": [[967, 969], [969, 970], [969, 991], [981, 969], [981, 982]], "missing_branches": [[967, 968]]}, "CircleAnnotator.__init__": {"executed_lines": [1014, 1015, 1016], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 999, "executed_branches": [], "missing_branches": []}, "CircleAnnotator.annotate": {"executed_lines": [1061, 1063, 1064, 1065, 1066, 1067, 1075, 1083], "summary": {"covered_lines": 8, "num_statements": 9, "percent_covered": 84.61538461538461, "percent_covered_display": "85", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 88.88888888888889, "percent_statements_covered_display": "89", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [1062], "excluded_lines": [], "start_line": 1019, "executed_branches": [[1061, 1063], [1063, 1064], [1063, 1083]], "missing_branches": [[1061, 1062]]}, "DotAnnotator.__init__": {"executed_lines": [1114, 1115, 1116, 1117, 1118, 1119], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1092, "executed_branches": [], "missing_branches": []}, "DotAnnotator.annotate": {"executed_lines": [1163, 1165, 1166, 1167, 1175, 1177, 1178, 1194], "summary": {"covered_lines": 8, "num_statements": 11, "percent_covered": 70.58823529411765, "percent_covered_display": "71", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 72.72727272727273, "percent_statements_covered_display": "73", "num_branches": 6, "num_partial_branches": 2, "covered_branches": 4, "missing_branches": 2, "percent_branches_covered": 66.66666666666667, "percent_branches_covered_display": "67"}, "missing_lines": [1164, 1179, 1187], "excluded_lines": [], "start_line": 1122, "executed_branches": [[1163, 1165], [1166, 1167], [1166, 1194], [1178, 1166]], "missing_branches": [[1163, 1164], [1178, 1179]]}, "LabelAnnotator.__init__": {"executed_lines": [1237, 1238, 1239], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1202, "executed_branches": [], "missing_branches": []}, "LabelAnnotator.annotate": {"executed_lines": [1303, 1305, 1307, 1308, 1312, 1323, 1331], "summary": {"covered_lines": 7, "num_statements": 12, "percent_covered": 56.25, "percent_covered_display": "56", "missing_lines": 5, "excluded_lines": 0, "percent_statements_covered": 58.333333333333336, "percent_statements_covered_display": "58", "num_branches": 4, "num_partial_branches": 2, "covered_branches": 2, "missing_branches": 2, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [1304, 1313, 1314, 1315, 1317], "excluded_lines": [], "start_line": 1252, "executed_branches": [[1303, 1305], [1312, 1323]], "missing_branches": [[1303, 1304], [1312, 1313]]}, "LabelAnnotator._get_label_properties": {"executed_lines": [1338, 1339, 1343, 1344, 1349, 1350, 1351, 1353, 1354, 1360, 1361, 1364, 1365, 1370, 1371, 1373, 1379, 1385], "summary": {"covered_lines": 18, "num_statements": 18, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1333, "executed_branches": [[1343, 1344], [1343, 1385], [1353, 1354], [1353, 1364]], "missing_branches": []}, "LabelAnnotator._draw_labels": {"executed_lines": [1395, 1401, 1407, 1408, 1414, 1421, 1423, 1431, 1432, 1434, 1435, 1446, 1453, 1454, 1456, 1467], "summary": {"covered_lines": 16, "num_statements": 19, "percent_covered": 84.0, "percent_covered_display": "84", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 84.21052631578948, "percent_statements_covered_display": "84", "num_branches": 6, "num_partial_branches": 1, "covered_branches": 5, "missing_branches": 1, "percent_branches_covered": 83.33333333333333, "percent_branches_covered_display": "83"}, "missing_lines": [1437, 1443, 1444], "excluded_lines": [], "start_line": 1387, "executed_branches": [[1407, -1387], [1407, 1408], [1434, 1407], [1434, 1435], [1435, 1446]], "missing_branches": [[1435, 1437]]}, "LabelAnnotator.draw_rounded_rectangle": {"executed_lines": [1476, 1477, 1478, 1480, 1482, 1486, 1493, 1494, 1501, 1502, 1509], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1470, "executed_branches": [[1493, 1494], [1493, 1501], [1501, 1502], [1501, 1509]], "missing_branches": []}, "RichLabelAnnotator.__init__": {"executed_lines": [1553, 1554, 1555, 1556], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1518, "executed_branches": [], "missing_branches": []}, "RichLabelAnnotator.annotate": {"executed_lines": [1619, 1620, 1622, 1623, 1624, 1628, 1639, 1647], "summary": {"covered_lines": 8, "num_statements": 12, "percent_covered": 64.28571428571429, "percent_covered_display": "64", "missing_lines": 4, "excluded_lines": 0, "percent_statements_covered": 66.66666666666667, "percent_statements_covered_display": "67", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [1629, 1630, 1631, 1633], "excluded_lines": [], "start_line": 1569, "executed_branches": [[1628, 1639]], "missing_branches": [[1628, 1629]]}, "RichLabelAnnotator._get_label_properties": {"executed_lines": [1652, 1654, 1658, 1659, 1664, 1667, 1668, 1670, 1671, 1672, 1673, 1675, 1676, 1679, 1682, 1683, 1685, 1692, 1694, 1696, 1699], "summary": {"covered_lines": 21, "num_statements": 22, "percent_covered": 92.85714285714286, "percent_covered_display": "93", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 95.45454545454545, "percent_statements_covered_display": "95", "num_branches": 6, "num_partial_branches": 1, "covered_branches": 5, "missing_branches": 1, "percent_branches_covered": 83.33333333333333, "percent_branches_covered_display": "83"}, "missing_lines": [1680], "excluded_lines": [], "start_line": 1649, "executed_branches": [[1658, 1659], [1658, 1696], [1670, 1671], [1670, 1679], [1679, 1682]], "missing_branches": [[1679, 1680]]}, "RichLabelAnnotator._draw_labels": {"executed_lines": [1709, 1714, 1720, 1721, 1727, 1734, 1735, 1736, 1739, 1747, 1748, 1749, 1751, 1752, 1760, 1761, 1762], "summary": {"covered_lines": 17, "num_statements": 17, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1701, "executed_branches": [[1720, -1701], [1720, 1721], [1751, 1720], [1751, 1752]], "missing_branches": []}, "RichLabelAnnotator._load_font": {"executed_lines": [1768, 1776, 1777], "summary": {"covered_lines": 3, "num_statements": 8, "percent_covered": 40.0, "percent_covered_display": "40", "missing_lines": 5, "excluded_lines": 0, "percent_statements_covered": 37.5, "percent_statements_covered_display": "38", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [1779, 1780, 1781, 1782, 1785], "excluded_lines": [], "start_line": 1765, "executed_branches": [[1776, 1777]], "missing_branches": [[1776, 1779]]}, "RichLabelAnnotator._load_font.load_default_font": {"executed_lines": [1771, 1772], "summary": {"covered_lines": 2, "num_statements": 4, "percent_covered": 50.0, "percent_covered_display": "50", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 50.0, "percent_statements_covered_display": "50", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [1773, 1774], "excluded_lines": [], "start_line": 1768, "executed_branches": [], "missing_branches": []}, "IconAnnotator.__init__": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 3, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [1807, 1808, 1809], "excluded_lines": [], "start_line": 1793, "executed_branches": [], "missing_branches": []}, "IconAnnotator.annotate": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 15, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 15, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 8, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 8, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [1855, 1856, 1857, 1858, 1864, 1868, 1869, 1872, 1873, 1874, 1875, 1877, 1878, 1880, 1881], "excluded_lines": [], "start_line": 1812, "executed_branches": [], "missing_branches": [[1855, 1856], [1855, 1857], [1857, 1858], [1857, 1864], [1868, 1869], [1868, 1881], [1872, 1873], [1872, 1874]]}, "IconAnnotator._load_icon": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 5, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 5, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 2, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [1885, 1886, 1887, 1890, 1894], "excluded_lines": [], "start_line": 1884, "executed_branches": [], "missing_branches": [[1886, 1887], [1886, 1890]]}, "BlurAnnotator.__init__": {"executed_lines": [1909, 1910, 1911], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1902, "executed_branches": [[1909, 1910], [1909, 1911]], "missing_branches": []}, "BlurAnnotator.annotate": {"executed_lines": [1952, 1954, 1955, 1959, 1960, 1961, 1962, 1963, 1968, 1969, 1971], "summary": {"covered_lines": 11, "num_statements": 12, "percent_covered": 88.88888888888889, "percent_covered_display": "89", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 91.66666666666667, "percent_statements_covered_display": "92", "num_branches": 6, "num_partial_branches": 1, "covered_branches": 5, "missing_branches": 1, "percent_branches_covered": 83.33333333333333, "percent_branches_covered_display": "83"}, "missing_lines": [1953], "excluded_lines": [], "start_line": 1914, "executed_branches": [[1952, 1954], [1959, 1960], [1959, 1971], [1960, 1961], [1960, 1962]], "missing_branches": [[1952, 1953]]}, "TraceAnnotator.__init__": {"executed_lines": [2010, 2011, 2012, 2013, 2014], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1985, "executed_branches": [], "missing_branches": []}, "TraceAnnotator.annotate": {"executed_lines": [2065, 2067, 2072, 2076, 2077, 2078, 2079, 2081, 2082, 2090, 2091, 2093, 2094, 2097, 2098, 2099, 2100, 2101, 2102, 2106, 2108, 2109, 2116], "summary": {"covered_lines": 23, "num_statements": 28, "percent_covered": 80.95238095238095, "percent_covered_display": "81", "missing_lines": 5, "excluded_lines": 0, "percent_statements_covered": 82.14285714285714, "percent_statements_covered_display": "82", "num_branches": 14, "num_partial_branches": 3, "covered_branches": 11, "missing_branches": 3, "percent_branches_covered": 78.57142857142857, "percent_branches_covered_display": "79"}, "missing_lines": [2066, 2068, 2080, 2103, 2104], "excluded_lines": [], "start_line": 2017, "executed_branches": [[2065, 2067], [2067, 2072], [2077, 2078], [2077, 2116], [2079, 2081], [2093, 2094], [2093, 2108], [2097, 2098], [2097, 2106], [2108, 2077], [2108, 2109]], "missing_branches": [[2065, 2066], [2067, 2068], [2079, 2080]]}, "HeatMapAnnotator.__init__": {"executed_lines": [2146, 2147, 2148, 2149, 2150, 2151, 2152], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 2126, "executed_branches": [], "missing_branches": []}, "HeatMapAnnotator.annotate": {"executed_lines": [2198, 2200, 2201, 2203, 2204, 2205, 2206, 2213, 2214, 2215, 2216, 2217, 2218, 2219, 2220, 2221, 2222, 2223, 2224, 2225, 2228], "summary": {"covered_lines": 21, "num_statements": 22, "percent_covered": 90.625, "percent_covered_display": "91", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 95.45454545454545, "percent_statements_covered_display": "95", "num_branches": 10, "num_partial_branches": 2, "covered_branches": 8, "missing_branches": 2, "percent_branches_covered": 80.0, "percent_branches_covered_display": "80"}, "missing_lines": [2199], "excluded_lines": [], "start_line": 2155, "executed_branches": [[2198, 2200], [2200, 2201], [2200, 2203], [2204, 2205], [2204, 2213], [2216, 2217], [2216, 2218], [2219, 2220]], "missing_branches": [[2198, 2199], [2219, 2221]]}, "PixelateAnnotator.__init__": {"executed_lines": [2245, 2246, 2247], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 2236, "executed_branches": [[2245, 2246], [2245, 2247]], "missing_branches": []}, "PixelateAnnotator.annotate": {"executed_lines": [2286, 2288, 2289, 2293, 2294, 2295, 2296, 2298, 2303, 2304, 2305, 2307, 2308, 2309, 2311, 2314, 2320, 2322], "summary": {"covered_lines": 18, "num_statements": 19, "percent_covered": 93.10344827586206, "percent_covered_display": "93", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 94.73684210526316, "percent_statements_covered_display": "95", "num_branches": 10, "num_partial_branches": 1, "covered_branches": 9, "missing_branches": 1, "percent_branches_covered": 90.0, "percent_branches_covered_display": "90"}, "missing_lines": [2287], "excluded_lines": [], "start_line": 2250, "executed_branches": [[2286, 2288], [2293, 2294], [2293, 2322], [2294, 2295], [2294, 2296], [2303, 2304], [2303, 2311], [2304, 2305], [2304, 2307]], "missing_branches": [[2286, 2287]]}, "TriangleAnnotator.__init__": {"executed_lines": [2355, 2356, 2357, 2358, 2359, 2360, 2361], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 2331, "executed_branches": [], "missing_branches": []}, "TriangleAnnotator.annotate": {"executed_lines": [2405, 2407, 2408, 2409, 2417, 2418, 2427, 2428, 2444], "summary": {"covered_lines": 9, "num_statements": 12, "percent_covered": 72.22222222222223, "percent_covered_display": "72", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 75.0, "percent_statements_covered_display": "75", "num_branches": 6, "num_partial_branches": 2, "covered_branches": 4, "missing_branches": 2, "percent_branches_covered": 66.66666666666667, "percent_branches_covered_display": "67"}, "missing_lines": [2406, 2429, 2437], "excluded_lines": [], "start_line": 2364, "executed_branches": [[2405, 2407], [2408, 2409], [2408, 2444], [2428, 2408]], "missing_branches": [[2405, 2406], [2428, 2429]]}, "RoundBoxAnnotator.__init__": {"executed_lines": [2472, 2473, 2474, 2475, 2477], "summary": {"covered_lines": 5, "num_statements": 6, "percent_covered": 75.0, "percent_covered_display": "75", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 83.33333333333333, "percent_statements_covered_display": "83", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [2476], "excluded_lines": [], "start_line": 2453, "executed_branches": [[2475, 2477]], "missing_branches": [[2475, 2476]]}, "RoundBoxAnnotator.annotate": {"executed_lines": [2522, 2524, 2525, 2526, 2535, 2541, 2548, 2555, 2556, 2558, 2561, 2572, 2580], "summary": {"covered_lines": 13, "num_statements": 14, "percent_covered": 90.0, "percent_covered_display": "90", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 92.85714285714286, "percent_statements_covered_display": "93", "num_branches": 6, "num_partial_branches": 1, "covered_branches": 5, "missing_branches": 1, "percent_branches_covered": 83.33333333333333, "percent_branches_covered_display": "83"}, "missing_lines": [2523], "excluded_lines": [], "start_line": 2480, "executed_branches": [[2522, 2524], [2524, 2525], [2524, 2580], [2558, 2524], [2558, 2561]], "missing_branches": [[2522, 2523]]}, "PercentageBarAnnotator.__init__": {"executed_lines": [2610, 2611, 2612, 2613, 2614, 2615, 2617], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 2588, "executed_branches": [], "missing_branches": []}, "PercentageBarAnnotator.annotate": {"executed_lines": [2674, 2676, 2678, 2679, 2680, 2681, 2686, 2688, 2691, 2692, 2694, 2702, 2712, 2719], "summary": {"covered_lines": 14, "num_statements": 16, "percent_covered": 81.81818181818181, "percent_covered_display": "82", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 87.5, "percent_statements_covered_display": "88", "num_branches": 6, "num_partial_branches": 2, "covered_branches": 4, "missing_branches": 2, "percent_branches_covered": 66.66666666666667, "percent_branches_covered_display": "67"}, "missing_lines": [2675, 2689], "excluded_lines": [], "start_line": 2624, "executed_branches": [[2674, 2676], [2679, 2680], [2679, 2719], [2688, 2691]], "missing_branches": [[2674, 2675], [2688, 2689]]}, "PercentageBarAnnotator.calculate_border_coordinates": {"executed_lines": [2725, 2726, 2728, 2730, 2731], "summary": {"covered_lines": 5, "num_statements": 20, "percent_covered": 18.42105263157895, "percent_covered_display": "18", "missing_lines": 15, "excluded_lines": 0, "percent_statements_covered": 25.0, "percent_statements_covered_display": "25", "num_branches": 18, "num_partial_branches": 2, "covered_branches": 2, "missing_branches": 16, "percent_branches_covered": 11.11111111111111, "percent_branches_covered_display": "11"}, "missing_lines": [2729, 2732, 2733, 2734, 2735, 2736, 2737, 2741, 2742, 2743, 2744, 2745, 2746, 2747, 2748], "excluded_lines": [], "start_line": 2722, "executed_branches": [[2728, 2730], [2730, 2731]], "missing_branches": [[2728, 2729], [2730, 2732], [2732, 2733], [2732, 2734], [2734, 2735], [2734, 2736], [2736, 2737], [2736, 2741], [2741, 2742], [2741, 2743], [2743, 2744], [2743, 2745], [2745, 2746], [2745, 2747], [2747, -2721], [2747, 2748]]}, "PercentageBarAnnotator._validate_custom_values": {"executed_lines": [2755, 2756, 2764, 2769, 2774], "summary": {"covered_lines": 5, "num_statements": 9, "percent_covered": 57.89473684210526, "percent_covered_display": "58", "missing_lines": 4, "excluded_lines": 0, "percent_statements_covered": 55.55555555555556, "percent_statements_covered_display": "56", "num_branches": 10, "num_partial_branches": 4, "covered_branches": 6, "missing_branches": 4, "percent_branches_covered": 60.0, "percent_branches_covered_display": "60"}, "missing_lines": [2757, 2765, 2770, 2775], "excluded_lines": [], "start_line": 2751, "executed_branches": [[2755, 2756], [2755, 2764], [2756, -2750], [2764, 2769], [2769, 2774], [2774, -2750]], "missing_branches": [[2756, 2757], [2764, 2765], [2769, 2770], [2774, 2775]]}, "PercentageBarAnnotator.validate_custom_values": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [2787], "excluded_lines": [], "start_line": 2783, "executed_branches": [], "missing_branches": []}, "CropAnnotator.__init__": {"executed_lines": [2816, 2817, 2818, 2819, 2820], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 2795, "executed_branches": [], "missing_branches": []}, "CropAnnotator.annotate": {"executed_lines": [2867, 2869, 2872, 2875, 2879, 2880, 2881, 2884, 2885, 2893, 2901], "summary": {"covered_lines": 11, "num_statements": 12, "percent_covered": 87.5, "percent_covered_display": "88", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 91.66666666666667, "percent_statements_covered_display": "92", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [2868], "excluded_lines": [], "start_line": 2823, "executed_branches": [[2867, 2869], [2879, 2880], [2879, 2901]], "missing_branches": [[2867, 2868]]}, "CropAnnotator.calculate_crop_coordinates": {"executed_lines": [2907, 2908, 2910, 2912, 2913], "summary": {"covered_lines": 5, "num_statements": 20, "percent_covered": 18.42105263157895, "percent_covered_display": "18", "missing_lines": 15, "excluded_lines": 0, "percent_statements_covered": 25.0, "percent_statements_covered_display": "25", "num_branches": 18, "num_partial_branches": 2, "covered_branches": 2, "missing_branches": 16, "percent_branches_covered": 11.11111111111111, "percent_branches_covered_display": "11"}, "missing_lines": [2911, 2917, 2918, 2919, 2920, 2924, 2925, 2929, 2930, 2934, 2935, 2936, 2937, 2941, 2942], "excluded_lines": [], "start_line": 2904, "executed_branches": [[2910, 2912], [2912, 2913]], "missing_branches": [[2910, 2911], [2912, 2917], [2917, 2918], [2917, 2919], [2919, 2920], [2919, 2924], [2924, 2925], [2924, 2929], [2929, 2930], [2929, 2934], [2934, 2935], [2934, 2936], [2936, 2937], [2936, 2941], [2941, -2903], [2941, 2942]]}, "BackgroundOverlayAnnotator.__init__": {"executed_lines": [2973, 2974, 2975], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 2960, "executed_branches": [], "missing_branches": []}, "BackgroundOverlayAnnotator.annotate": {"executed_lines": [3012, 3014, 3016, 3020, 3021, 3022, 3024, 3025, 3026, 3028, 3029], "summary": {"covered_lines": 11, "num_statements": 12, "percent_covered": 90.0, "percent_covered_display": "90", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 91.66666666666667, "percent_statements_covered_display": "92", "num_branches": 8, "num_partial_branches": 1, "covered_branches": 7, "missing_branches": 1, "percent_branches_covered": 87.5, "percent_branches_covered_display": "88"}, "missing_lines": [3013], "excluded_lines": [], "start_line": 2978, "executed_branches": [[3012, 3014], [3020, 3021], [3020, 3024], [3021, 3022], [3021, 3028], [3024, 3025], [3024, 3028]], "missing_branches": [[3012, 3013]]}, "ComparisonAnnotator.__init__": {"executed_lines": [3069, 3070, 3071, 3073, 3074, 3075, 3076, 3077, 3078], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 3043, "executed_branches": [], "missing_branches": []}, "ComparisonAnnotator.annotate": {"executed_lines": [3117, 3119, 3120, 3122, 3123, 3125, 3129, 3134, 3135, 3137, 3138, 3139, 3141, 3142, 3143, 3144, 3146, 3149, 3152, 3156, 3158], "summary": {"covered_lines": 21, "num_statements": 26, "percent_covered": 76.47058823529412, "percent_covered_display": "76", "missing_lines": 5, "excluded_lines": 0, "percent_statements_covered": 80.76923076923077, "percent_statements_covered_display": "81", "num_branches": 8, "num_partial_branches": 3, "covered_branches": 5, "missing_branches": 3, "percent_branches_covered": 62.5, "percent_branches_covered_display": "62"}, "missing_lines": [3118, 3126, 3127, 3130, 3131], "excluded_lines": [], "start_line": 3081, "executed_branches": [[3117, 3119], [3119, 3120], [3119, 3122], [3125, 3129], [3129, 3134]], "missing_branches": [[3117, 3118], [3125, 3126], [3129, 3130]]}, "ComparisonAnnotator._use_obb": {"executed_lines": [3162, 3163, 3164, 3165], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 3161, "executed_branches": [], "missing_branches": []}, "ComparisonAnnotator._use_mask": {"executed_lines": [3173, 3174, 3175, 3176], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 3172, "executed_branches": [], "missing_branches": []}, "ComparisonAnnotator._mask_from_xyxy": {"executed_lines": [3186, 3187, 3190, 3191, 3193, 3194, 3195, 3196], "summary": {"covered_lines": 8, "num_statements": 9, "percent_covered": 84.61538461538461, "percent_covered_display": "85", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 88.88888888888889, "percent_statements_covered_display": "89", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [3188], "excluded_lines": [], "start_line": 3183, "executed_branches": [[3187, 3190], [3193, 3194], [3193, 3196]], "missing_branches": [[3187, 3188]]}, "ComparisonAnnotator._mask_from_obb": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 8, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 8, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 4, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [3202, 3203, 3204, 3206, 3208, 3209, 3210, 3211], "excluded_lines": [], "start_line": 3199, "executed_branches": [], "missing_branches": [[3203, 3204], [3203, 3206], [3208, 3209], [3208, 3211]]}, "ComparisonAnnotator._mask_from_mask": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 7, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 7, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 4, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [3217, 3218, 3219, 3220, 3222, 3223, 3224], "excluded_lines": [], "start_line": 3214, "executed_branches": [], "missing_branches": [[3218, 3219], [3218, 3220], [3222, 3223], [3222, 3224]]}, "ComparisonAnnotator._draw_labels": {"executed_lines": [3234, 3235, 3236, 3237, 3239, 3240, 3241, 3242, 3243, 3245, 3251, 3252, 3253, 3254], "summary": {"covered_lines": 14, "num_statements": 22, "percent_covered": 65.38461538461539, "percent_covered_display": "65", "missing_lines": 8, "excluded_lines": 0, "percent_statements_covered": 63.63636363636363, "percent_statements_covered_display": "64", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [3256, 3263, 3264, 3265, 3267, 3274, 3286, 3294], "excluded_lines": [], "start_line": 3226, "executed_branches": [[3252, -3226], [3252, 3253], [3253, 3254]], "missing_branches": [[3253, 3256]]}, "": {"executed_lines": [1, 3, 4, 5, 7, 8, 9, 10, 11, 12, 14, 15, 29, 30, 31, 32, 33, 38, 39, 40, 41, 42, 46, 52, 54, 67, 80, 83, 103, 147, 190, 195, 213, 214, 277, 282, 300, 301, 365, 423, 432, 450, 451, 511, 520, 538, 539, 606, 611, 629, 630, 698, 707, 729, 730, 800, 805, 829, 830, 899, 904, 925, 926, 994, 999, 1018, 1019, 1086, 1092, 1121, 1122, 1197, 1202, 1251, 1252, 1333, 1387, 1469, 1470, 1512, 1518, 1568, 1569, 1649, 1701, 1764, 1765, 1788, 1793, 1811, 1812, 1883, 1884, 1897, 1902, 1913, 1914, 1974, 1985, 2016, 2017, 2119, 2126, 2154, 2155, 2231, 2236, 2249, 2250, 2325, 2331, 2363, 2364, 2447, 2453, 2479, 2480, 2583, 2588, 2623, 2624, 2721, 2722, 2750, 2751, 2777, 2778, 2783, 2790, 2795, 2822, 2823, 2903, 2904, 2945, 2960, 2977, 2978, 3032, 3043, 3080, 3081, 3160, 3161, 3171, 3172, 3182, 3183, 3198, 3199, 3213, 3214, 3226], "summary": {"covered_lines": 153, "num_statements": 153, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 8, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [57, 59, 60, 61, 62, 63, 65, 66], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"_BaseLabelAnnotator": {"executed_lines": [137, 138, 139, 140, 141, 142, 143, 144, 145], "summary": {"covered_lines": 9, "num_statements": 17, "percent_covered": 47.36842105263158, "percent_covered_display": "47", "missing_lines": 8, "excluded_lines": 0, "percent_statements_covered": 52.94117647058823, "percent_statements_covered_display": "53", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 2, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [165, 168, 174, 176, 178, 180, 183, 187], "excluded_lines": [], "start_line": 83, "executed_branches": [], "missing_branches": [[174, 176], [174, 187]]}, "BoxAnnotator": {"executed_lines": [209, 210, 211, 255, 257, 258, 259, 267, 274], "summary": {"covered_lines": 9, "num_statements": 10, "percent_covered": 85.71428571428571, "percent_covered_display": "86", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 90.0, "percent_statements_covered_display": "90", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [256], "excluded_lines": [], "start_line": 190, "executed_branches": [[255, 257], [257, 258], [257, 274]], "missing_branches": [[255, 256]]}, "OrientedBoxAnnotator": {"executed_lines": [296, 297, 298, 342, 344, 345], "summary": {"covered_lines": 6, "num_statements": 13, "percent_covered": 42.10526315789474, "percent_covered_display": "42", "missing_lines": 7, "excluded_lines": 0, "percent_statements_covered": 46.15384615384615, "percent_statements_covered_display": "46", "num_branches": 6, "num_partial_branches": 2, "covered_branches": 2, "missing_branches": 4, "percent_branches_covered": 33.333333333333336, "percent_branches_covered_display": "33"}, "missing_lines": [343, 346, 348, 349, 350, 359, 361], "excluded_lines": [], "start_line": 277, "executed_branches": [[342, 344], [344, 345]], "missing_branches": [[342, 343], [344, 346], [348, 349], [348, 361]]}, "MaskAnnotator": {"executed_lines": [446, 447, 448, 493, 495, 496, 498, 499, 505, 508], "summary": {"covered_lines": 10, "num_statements": 11, "percent_covered": 86.66666666666667, "percent_covered_display": "87", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 90.9090909090909, "percent_statements_covered_display": "91", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [494], "excluded_lines": [], "start_line": 423, "executed_branches": [[493, 495], [495, 496], [495, 498]], "missing_branches": [[493, 494]]}, "PolygonAnnotator": {"executed_lines": [534, 535, 536, 580, 582, 583, 585, 586, 587, 595, 596, 603], "summary": {"covered_lines": 12, "num_statements": 13, "percent_covered": 90.47619047619048, "percent_covered_display": "90", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 92.3076923076923, "percent_statements_covered_display": "92", "num_branches": 8, "num_partial_branches": 1, "covered_branches": 7, "missing_branches": 1, "percent_branches_covered": 87.5, "percent_branches_covered_display": "88"}, "missing_lines": [581], "excluded_lines": [], "start_line": 511, "executed_branches": [[580, 582], [582, 583], [582, 585], [585, 586], [585, 603], [595, 585], [595, 596]], "missing_branches": [[580, 581]]}, "ColorAnnotator": {"executed_lines": [625, 626, 627, 671, 673, 674, 675, 676, 684, 692, 695], "summary": {"covered_lines": 11, "num_statements": 12, "percent_covered": 87.5, "percent_covered_display": "88", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 91.66666666666667, "percent_statements_covered_display": "92", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [672], "excluded_lines": [], "start_line": 606, "executed_branches": [[671, 673], [674, 675], [674, 692]], "missing_branches": [[671, 672]]}, "HaloAnnotator": {"executed_lines": [724, 725, 726, 727, 772, 774, 775, 776, 777, 784, 786, 787, 788, 789, 790, 792, 793, 794, 795, 796, 797], "summary": {"covered_lines": 21, "num_statements": 22, "percent_covered": 92.85714285714286, "percent_covered_display": "93", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 95.45454545454545, "percent_statements_covered_display": "95", "num_branches": 6, "num_partial_branches": 1, "covered_branches": 5, "missing_branches": 1, "percent_branches_covered": 83.33333333333333, "percent_branches_covered_display": "83"}, "missing_lines": [773], "excluded_lines": [], "start_line": 698, "executed_branches": [[772, 774], [774, 775], [774, 776], [790, 792], [790, 793]], "missing_branches": [[772, 773]]}, "EllipseAnnotator": {"executed_lines": [823, 824, 825, 826, 827, 871, 873, 874, 875, 883, 884, 885, 896], "summary": {"covered_lines": 13, "num_statements": 14, "percent_covered": 88.88888888888889, "percent_covered_display": "89", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 92.85714285714286, "percent_statements_covered_display": "93", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [872], "excluded_lines": [], "start_line": 800, "executed_branches": [[871, 873], [873, 874], [873, 896]], "missing_branches": [[871, 872]]}, "BoxCornerAnnotator": {"executed_lines": [920, 921, 922, 923, 967, 969, 970, 971, 979, 981, 982, 983, 987, 988, 991], "summary": {"covered_lines": 15, "num_statements": 16, "percent_covered": 90.9090909090909, "percent_covered_display": "91", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 93.75, "percent_statements_covered_display": "94", "num_branches": 6, "num_partial_branches": 1, "covered_branches": 5, "missing_branches": 1, "percent_branches_covered": 83.33333333333333, "percent_branches_covered_display": "83"}, "missing_lines": [968], "excluded_lines": [], "start_line": 899, "executed_branches": [[967, 969], [969, 970], [969, 991], [981, 969], [981, 982]], "missing_branches": [[967, 968]]}, "CircleAnnotator": {"executed_lines": [1014, 1015, 1016, 1061, 1063, 1064, 1065, 1066, 1067, 1075, 1083], "summary": {"covered_lines": 11, "num_statements": 12, "percent_covered": 87.5, "percent_covered_display": "88", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 91.66666666666667, "percent_statements_covered_display": "92", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [1062], "excluded_lines": [], "start_line": 994, "executed_branches": [[1061, 1063], [1063, 1064], [1063, 1083]], "missing_branches": [[1061, 1062]]}, "DotAnnotator": {"executed_lines": [1114, 1115, 1116, 1117, 1118, 1119, 1163, 1165, 1166, 1167, 1175, 1177, 1178, 1194], "summary": {"covered_lines": 14, "num_statements": 17, "percent_covered": 78.26086956521739, "percent_covered_display": "78", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 82.3529411764706, "percent_statements_covered_display": "82", "num_branches": 6, "num_partial_branches": 2, "covered_branches": 4, "missing_branches": 2, "percent_branches_covered": 66.66666666666667, "percent_branches_covered_display": "67"}, "missing_lines": [1164, 1179, 1187], "excluded_lines": [], "start_line": 1086, "executed_branches": [[1163, 1165], [1166, 1167], [1166, 1194], [1178, 1166]], "missing_branches": [[1163, 1164], [1178, 1179]]}, "LabelAnnotator": {"executed_lines": [1237, 1238, 1239, 1303, 1305, 1307, 1308, 1312, 1323, 1331, 1338, 1339, 1343, 1344, 1349, 1350, 1351, 1353, 1354, 1360, 1361, 1364, 1365, 1370, 1371, 1373, 1379, 1385, 1395, 1401, 1407, 1408, 1414, 1421, 1423, 1431, 1432, 1434, 1435, 1446, 1453, 1454, 1456, 1467, 1476, 1477, 1478, 1480, 1482, 1486, 1493, 1494, 1501, 1502, 1509], "summary": {"covered_lines": 55, "num_statements": 63, "percent_covered": 86.41975308641975, "percent_covered_display": "86", "missing_lines": 8, "excluded_lines": 0, "percent_statements_covered": 87.3015873015873, "percent_statements_covered_display": "87", "num_branches": 18, "num_partial_branches": 3, "covered_branches": 15, "missing_branches": 3, "percent_branches_covered": 83.33333333333333, "percent_branches_covered_display": "83"}, "missing_lines": [1304, 1313, 1314, 1315, 1317, 1437, 1443, 1444], "excluded_lines": [], "start_line": 1197, "executed_branches": [[1303, 1305], [1312, 1323], [1343, 1344], [1343, 1385], [1353, 1354], [1353, 1364], [1407, -1387], [1407, 1408], [1434, 1407], [1434, 1435], [1435, 1446], [1493, 1494], [1493, 1501], [1501, 1502], [1501, 1509]], "missing_branches": [[1303, 1304], [1312, 1313], [1435, 1437]]}, "RichLabelAnnotator": {"executed_lines": [1553, 1554, 1555, 1556, 1619, 1620, 1622, 1623, 1624, 1628, 1639, 1647, 1652, 1654, 1658, 1659, 1664, 1667, 1668, 1670, 1671, 1672, 1673, 1675, 1676, 1679, 1682, 1683, 1685, 1692, 1694, 1696, 1699, 1709, 1714, 1720, 1721, 1727, 1734, 1735, 1736, 1739, 1747, 1748, 1749, 1751, 1752, 1760, 1761, 1762, 1768, 1771, 1772, 1776, 1777], "summary": {"covered_lines": 55, "num_statements": 67, "percent_covered": 81.48148148148148, "percent_covered_display": "81", "missing_lines": 12, "excluded_lines": 0, "percent_statements_covered": 82.08955223880596, "percent_statements_covered_display": "82", "num_branches": 14, "num_partial_branches": 3, "covered_branches": 11, "missing_branches": 3, "percent_branches_covered": 78.57142857142857, "percent_branches_covered_display": "79"}, "missing_lines": [1629, 1630, 1631, 1633, 1680, 1773, 1774, 1779, 1780, 1781, 1782, 1785], "excluded_lines": [], "start_line": 1512, "executed_branches": [[1628, 1639], [1658, 1659], [1658, 1696], [1670, 1671], [1670, 1679], [1679, 1682], [1720, -1701], [1720, 1721], [1751, 1720], [1751, 1752], [1776, 1777]], "missing_branches": [[1628, 1629], [1679, 1680], [1776, 1779]]}, "IconAnnotator": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 23, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 23, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 10, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 10, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [1807, 1808, 1809, 1855, 1856, 1857, 1858, 1864, 1868, 1869, 1872, 1873, 1874, 1875, 1877, 1878, 1880, 1881, 1885, 1886, 1887, 1890, 1894], "excluded_lines": [], "start_line": 1788, "executed_branches": [], "missing_branches": [[1855, 1856], [1855, 1857], [1857, 1858], [1857, 1864], [1868, 1869], [1868, 1881], [1872, 1873], [1872, 1874], [1886, 1887], [1886, 1890]]}, "BlurAnnotator": {"executed_lines": [1909, 1910, 1911, 1952, 1954, 1955, 1959, 1960, 1961, 1962, 1963, 1968, 1969, 1971], "summary": {"covered_lines": 14, "num_statements": 15, "percent_covered": 91.30434782608695, "percent_covered_display": "91", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 93.33333333333333, "percent_statements_covered_display": "93", "num_branches": 8, "num_partial_branches": 1, "covered_branches": 7, "missing_branches": 1, "percent_branches_covered": 87.5, "percent_branches_covered_display": "88"}, "missing_lines": [1953], "excluded_lines": [], "start_line": 1897, "executed_branches": [[1909, 1910], [1909, 1911], [1952, 1954], [1959, 1960], [1959, 1971], [1960, 1961], [1960, 1962]], "missing_branches": [[1952, 1953]]}, "TraceAnnotator": {"executed_lines": [2010, 2011, 2012, 2013, 2014, 2065, 2067, 2072, 2076, 2077, 2078, 2079, 2081, 2082, 2090, 2091, 2093, 2094, 2097, 2098, 2099, 2100, 2101, 2102, 2106, 2108, 2109, 2116], "summary": {"covered_lines": 28, "num_statements": 33, "percent_covered": 82.97872340425532, "percent_covered_display": "83", "missing_lines": 5, "excluded_lines": 0, "percent_statements_covered": 84.84848484848484, "percent_statements_covered_display": "85", "num_branches": 14, "num_partial_branches": 3, "covered_branches": 11, "missing_branches": 3, "percent_branches_covered": 78.57142857142857, "percent_branches_covered_display": "79"}, "missing_lines": [2066, 2068, 2080, 2103, 2104], "excluded_lines": [], "start_line": 1974, "executed_branches": [[2065, 2067], [2067, 2072], [2077, 2078], [2077, 2116], [2079, 2081], [2093, 2094], [2093, 2108], [2097, 2098], [2097, 2106], [2108, 2077], [2108, 2109]], "missing_branches": [[2065, 2066], [2067, 2068], [2079, 2080]]}, "HeatMapAnnotator": {"executed_lines": [2146, 2147, 2148, 2149, 2150, 2151, 2152, 2198, 2200, 2201, 2203, 2204, 2205, 2206, 2213, 2214, 2215, 2216, 2217, 2218, 2219, 2220, 2221, 2222, 2223, 2224, 2225, 2228], "summary": {"covered_lines": 28, "num_statements": 29, "percent_covered": 92.3076923076923, "percent_covered_display": "92", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 96.55172413793103, "percent_statements_covered_display": "97", "num_branches": 10, "num_partial_branches": 2, "covered_branches": 8, "missing_branches": 2, "percent_branches_covered": 80.0, "percent_branches_covered_display": "80"}, "missing_lines": [2199], "excluded_lines": [], "start_line": 2119, "executed_branches": [[2198, 2200], [2200, 2201], [2200, 2203], [2204, 2205], [2204, 2213], [2216, 2217], [2216, 2218], [2219, 2220]], "missing_branches": [[2198, 2199], [2219, 2221]]}, "PixelateAnnotator": {"executed_lines": [2245, 2246, 2247, 2286, 2288, 2289, 2293, 2294, 2295, 2296, 2298, 2303, 2304, 2305, 2307, 2308, 2309, 2311, 2314, 2320, 2322], "summary": {"covered_lines": 21, "num_statements": 22, "percent_covered": 94.11764705882354, "percent_covered_display": "94", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 95.45454545454545, "percent_statements_covered_display": "95", "num_branches": 12, "num_partial_branches": 1, "covered_branches": 11, "missing_branches": 1, "percent_branches_covered": 91.66666666666667, "percent_branches_covered_display": "92"}, "missing_lines": [2287], "excluded_lines": [], "start_line": 2231, "executed_branches": [[2245, 2246], [2245, 2247], [2286, 2288], [2293, 2294], [2293, 2322], [2294, 2295], [2294, 2296], [2303, 2304], [2303, 2311], [2304, 2305], [2304, 2307]], "missing_branches": [[2286, 2287]]}, "TriangleAnnotator": {"executed_lines": [2355, 2356, 2357, 2358, 2359, 2360, 2361, 2405, 2407, 2408, 2409, 2417, 2418, 2427, 2428, 2444], "summary": {"covered_lines": 16, "num_statements": 19, "percent_covered": 80.0, "percent_covered_display": "80", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 84.21052631578948, "percent_statements_covered_display": "84", "num_branches": 6, "num_partial_branches": 2, "covered_branches": 4, "missing_branches": 2, "percent_branches_covered": 66.66666666666667, "percent_branches_covered_display": "67"}, "missing_lines": [2406, 2429, 2437], "excluded_lines": [], "start_line": 2325, "executed_branches": [[2405, 2407], [2408, 2409], [2408, 2444], [2428, 2408]], "missing_branches": [[2405, 2406], [2428, 2429]]}, "RoundBoxAnnotator": {"executed_lines": [2472, 2473, 2474, 2475, 2477, 2522, 2524, 2525, 2526, 2535, 2541, 2548, 2555, 2556, 2558, 2561, 2572, 2580], "summary": {"covered_lines": 18, "num_statements": 20, "percent_covered": 85.71428571428571, "percent_covered_display": "86", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 90.0, "percent_statements_covered_display": "90", "num_branches": 8, "num_partial_branches": 2, "covered_branches": 6, "missing_branches": 2, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [2476, 2523], "excluded_lines": [], "start_line": 2447, "executed_branches": [[2475, 2477], [2522, 2524], [2524, 2525], [2524, 2580], [2558, 2524], [2558, 2561]], "missing_branches": [[2475, 2476], [2522, 2523]]}, "PercentageBarAnnotator": {"executed_lines": [2610, 2611, 2612, 2613, 2614, 2615, 2617, 2674, 2676, 2678, 2679, 2680, 2681, 2686, 2688, 2691, 2692, 2694, 2702, 2712, 2719, 2725, 2726, 2728, 2730, 2731, 2755, 2756, 2764, 2769, 2774], "summary": {"covered_lines": 31, "num_statements": 53, "percent_covered": 49.42528735632184, "percent_covered_display": "49", "missing_lines": 22, "excluded_lines": 0, "percent_statements_covered": 58.490566037735846, "percent_statements_covered_display": "58", "num_branches": 34, "num_partial_branches": 8, "covered_branches": 12, "missing_branches": 22, "percent_branches_covered": 35.294117647058826, "percent_branches_covered_display": "35"}, "missing_lines": [2675, 2689, 2729, 2732, 2733, 2734, 2735, 2736, 2737, 2741, 2742, 2743, 2744, 2745, 2746, 2747, 2748, 2757, 2765, 2770, 2775, 2787], "excluded_lines": [], "start_line": 2583, "executed_branches": [[2674, 2676], [2679, 2680], [2679, 2719], [2688, 2691], [2728, 2730], [2730, 2731], [2755, 2756], [2755, 2764], [2756, -2750], [2764, 2769], [2769, 2774], [2774, -2750]], "missing_branches": [[2674, 2675], [2688, 2689], [2728, 2729], [2730, 2732], [2732, 2733], [2732, 2734], [2734, 2735], [2734, 2736], [2736, 2737], [2736, 2741], [2741, 2742], [2741, 2743], [2743, 2744], [2743, 2745], [2745, 2746], [2745, 2747], [2747, -2721], [2747, 2748], [2756, 2757], [2764, 2765], [2769, 2770], [2774, 2775]]}, "CropAnnotator": {"executed_lines": [2816, 2817, 2818, 2819, 2820, 2867, 2869, 2872, 2875, 2879, 2880, 2881, 2884, 2885, 2893, 2901, 2907, 2908, 2910, 2912, 2913], "summary": {"covered_lines": 21, "num_statements": 37, "percent_covered": 44.067796610169495, "percent_covered_display": "44", "missing_lines": 16, "excluded_lines": 0, "percent_statements_covered": 56.75675675675676, "percent_statements_covered_display": "57", "num_branches": 22, "num_partial_branches": 3, "covered_branches": 5, "missing_branches": 17, "percent_branches_covered": 22.727272727272727, "percent_branches_covered_display": "23"}, "missing_lines": [2868, 2911, 2917, 2918, 2919, 2920, 2924, 2925, 2929, 2930, 2934, 2935, 2936, 2937, 2941, 2942], "excluded_lines": [], "start_line": 2790, "executed_branches": [[2867, 2869], [2879, 2880], [2879, 2901], [2910, 2912], [2912, 2913]], "missing_branches": [[2867, 2868], [2910, 2911], [2912, 2917], [2917, 2918], [2917, 2919], [2919, 2920], [2919, 2924], [2924, 2925], [2924, 2929], [2929, 2930], [2929, 2934], [2934, 2935], [2934, 2936], [2936, 2937], [2936, 2941], [2941, -2903], [2941, 2942]]}, "BackgroundOverlayAnnotator": {"executed_lines": [2973, 2974, 2975, 3012, 3014, 3016, 3020, 3021, 3022, 3024, 3025, 3026, 3028, 3029], "summary": {"covered_lines": 14, "num_statements": 15, "percent_covered": 91.30434782608695, "percent_covered_display": "91", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 93.33333333333333, "percent_statements_covered_display": "93", "num_branches": 8, "num_partial_branches": 1, "covered_branches": 7, "missing_branches": 1, "percent_branches_covered": 87.5, "percent_branches_covered_display": "88"}, "missing_lines": [3013], "excluded_lines": [], "start_line": 2945, "executed_branches": [[3012, 3014], [3020, 3021], [3020, 3024], [3021, 3022], [3021, 3028], [3024, 3025], [3024, 3028]], "missing_branches": [[3012, 3013]]}, "ComparisonAnnotator": {"executed_lines": [3069, 3070, 3071, 3073, 3074, 3075, 3076, 3077, 3078, 3117, 3119, 3120, 3122, 3123, 3125, 3129, 3134, 3135, 3137, 3138, 3139, 3141, 3142, 3143, 3144, 3146, 3149, 3152, 3156, 3158, 3162, 3163, 3164, 3165, 3173, 3174, 3175, 3176, 3186, 3187, 3190, 3191, 3193, 3194, 3195, 3196, 3234, 3235, 3236, 3237, 3239, 3240, 3241, 3242, 3243, 3245, 3251, 3252, 3253, 3254], "summary": {"covered_lines": 60, "num_statements": 89, "percent_covered": 62.83185840707964, "percent_covered_display": "63", "missing_lines": 29, "excluded_lines": 0, "percent_statements_covered": 67.41573033707866, "percent_statements_covered_display": "67", "num_branches": 24, "num_partial_branches": 5, "covered_branches": 11, "missing_branches": 13, "percent_branches_covered": 45.833333333333336, "percent_branches_covered_display": "46"}, "missing_lines": [3118, 3126, 3127, 3130, 3131, 3188, 3202, 3203, 3204, 3206, 3208, 3209, 3210, 3211, 3217, 3218, 3219, 3220, 3222, 3223, 3224, 3256, 3263, 3264, 3265, 3267, 3274, 3286, 3294], "excluded_lines": [], "start_line": 3032, "executed_branches": [[3117, 3119], [3119, 3120], [3119, 3122], [3125, 3129], [3129, 3134], [3187, 3190], [3193, 3194], [3193, 3196], [3252, -3226], [3252, 3253], [3253, 3254]], "missing_branches": [[3117, 3118], [3125, 3126], [3129, 3130], [3187, 3188], [3203, 3204], [3203, 3206], [3208, 3209], [3208, 3211], [3218, 3219], [3218, 3220], [3222, 3223], [3222, 3224], [3253, 3256]]}, "": {"executed_lines": [1, 3, 4, 5, 7, 8, 9, 10, 11, 12, 14, 15, 29, 30, 31, 32, 33, 38, 39, 40, 41, 42, 46, 52, 54, 67, 74, 75, 76, 77, 80, 83, 103, 147, 190, 195, 213, 214, 277, 282, 300, 301, 365, 393, 394, 395, 396, 399, 400, 401, 407, 408, 409, 410, 411, 412, 413, 414, 416, 417, 418, 419, 420, 423, 432, 450, 451, 511, 520, 538, 539, 606, 611, 629, 630, 698, 707, 729, 730, 800, 805, 829, 830, 899, 904, 925, 926, 994, 999, 1018, 1019, 1086, 1092, 1121, 1122, 1197, 1202, 1251, 1252, 1333, 1387, 1469, 1470, 1512, 1518, 1568, 1569, 1649, 1701, 1764, 1765, 1788, 1793, 1811, 1812, 1883, 1884, 1897, 1902, 1913, 1914, 1974, 1985, 2016, 2017, 2119, 2126, 2154, 2155, 2231, 2236, 2249, 2250, 2325, 2331, 2363, 2364, 2447, 2453, 2479, 2480, 2583, 2588, 2623, 2624, 2721, 2722, 2750, 2751, 2777, 2778, 2783, 2790, 2795, 2822, 2823, 2903, 2904, 2945, 2960, 2977, 2978, 3032, 3043, 3080, 3081, 3160, 3161, 3171, 3172, 3182, 3183, 3198, 3199, 3213, 3214, 3226], "summary": {"covered_lines": 177, "num_statements": 177, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 10, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 12, "num_partial_branches": 0, "covered_branches": 12, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [57, 58, 59, 60, 61, 62, 63, 64, 65, 66], "start_line": 1, "executed_branches": [[74, 75], [74, 77], [394, 395], [394, 396], [400, 401], [400, 420], [407, 408], [407, 416], [413, 400], [413, 414], [418, 400], [418, 419]], "missing_branches": []}}}, "src\\supervision\\annotators\\utils.py": {"executed_lines": [1, 3, 4, 5, 6, 8, 9, 10, 12, 13, 14, 15, 17, 18, 21, 31, 32, 33, 35, 36, 40, 45, 46, 51, 52, 53, 57, 58, 59, 60, 61, 62, 68, 69, 70, 71, 76, 80, 85, 86, 88, 89, 133, 134, 135, 136, 139, 145, 150, 156, 159, 172, 173, 175, 176, 178, 179, 181, 182, 184, 185, 187, 188, 192, 200, 202, 205, 218, 226, 231, 235, 252, 253, 255, 256, 263, 266, 332, 333, 339, 340, 341, 343, 344, 345, 347, 348, 351, 352, 358, 364, 366, 368, 375, 377, 378, 381, 384, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 412, 425, 426, 427, 430, 441, 444, 467], "summary": {"covered_lines": 119, "num_statements": 168, "percent_covered": 67.6470588235294, "percent_covered_display": "68", "missing_lines": 49, "excluded_lines": 0, "percent_statements_covered": 70.83333333333333, "percent_statements_covered_display": "71", "num_branches": 70, "num_partial_branches": 8, "covered_branches": 42, "missing_branches": 28, "percent_branches_covered": 60.0, "percent_branches_covered_display": "60"}, "missing_lines": [37, 77, 90, 91, 92, 93, 99, 100, 106, 107, 108, 109, 110, 111, 117, 118, 124, 125, 155, 189, 190, 219, 232, 257, 258, 259, 260, 262, 310, 311, 314, 315, 317, 318, 319, 322, 323, 325, 326, 327, 329, 359, 369, 370, 371, 372, 373, 464, 487], "excluded_lines": [], "executed_branches": [[45, 46], [45, 51], [51, 52], [51, 58], [52, 53], [52, 57], [58, 59], [58, 60], [60, 61], [60, 69], [61, 62], [61, 68], [69, 70], [70, 71], [70, 76], [88, 89], [134, 135], [134, 136], [150, 156], [172, 173], [172, 175], [175, 176], [175, 178], [178, 179], [178, 181], [181, 182], [181, 184], [187, 188], [187, 202], [188, 192], [218, -205], [252, 253], [252, 255], [256, 263], [358, 364], [368, 375], [398, 399], [398, 400], [400, 401], [400, 402], [425, 426], [425, 427]], "missing_branches": [[69, 77], [88, 90], [90, 91], [90, 92], [92, 93], [92, 99], [99, 100], [99, 106], [106, 107], [106, 108], [108, 109], [108, 110], [110, 111], [110, 117], [117, 118], [117, 124], [124, -80], [124, 125], [150, 155], [188, 189], [218, 219], [256, 257], [257, 258], [257, 259], [259, 260], [259, 262], [358, 359], [368, 369]], "functions": {"ColorLookup.list": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [37], "excluded_lines": [], "start_line": 36, "executed_branches": [], "missing_branches": []}, "resolve_color_idx": {"executed_lines": [45, 46, 51, 52, 53, 57, 58, 59, 60, 61, 62, 68, 69, 70, 71, 76], "summary": {"covered_lines": 16, "num_statements": 17, "percent_covered": 93.93939393939394, "percent_covered_display": "94", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 94.11764705882354, "percent_statements_covered_display": "94", "num_branches": 16, "num_partial_branches": 1, "covered_branches": 15, "missing_branches": 1, "percent_branches_covered": 93.75, "percent_branches_covered_display": "94"}, "missing_lines": [77], "excluded_lines": [], "start_line": 40, "executed_branches": [[45, 46], [45, 51], [51, 52], [51, 58], [52, 53], [52, 57], [58, 59], [58, 60], [60, 61], [60, 69], [61, 62], [61, 68], [69, 70], [70, 71], [70, 76]], "missing_branches": [[69, 77]]}, "resolve_text_background_xyxy": {"executed_lines": [85, 86, 88, 89], "summary": {"covered_lines": 4, "num_statements": 20, "percent_covered": 13.157894736842104, "percent_covered_display": "13", "missing_lines": 16, "excluded_lines": 0, "percent_statements_covered": 20.0, "percent_statements_covered_display": "20", "num_branches": 18, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 17, "percent_branches_covered": 5.555555555555555, "percent_branches_covered_display": "6"}, "missing_lines": [90, 91, 92, 93, 99, 100, 106, 107, 108, 109, 110, 111, 117, 118, 124, 125], "excluded_lines": [], "start_line": 80, "executed_branches": [[88, 89]], "missing_branches": [[88, 90], [90, 91], [90, 92], [92, 93], [92, 99], [99, 100], [99, 106], [106, 107], [106, 108], [108, 109], [108, 110], [110, 111], [110, 117], [117, 118], [117, 124], [124, -80], [124, 125]]}, "get_color_by_index": {"executed_lines": [134, 135, 136], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 133, "executed_branches": [[134, 135], [134, 136]], "missing_branches": []}, "resolve_color": {"executed_lines": [145, 150, 156], "summary": {"covered_lines": 3, "num_statements": 4, "percent_covered": 66.66666666666667, "percent_covered_display": "67", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 75.0, "percent_statements_covered_display": "75", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [155], "excluded_lines": [], "start_line": 139, "executed_branches": [[150, 156]], "missing_branches": [[150, 155]]}, "wrap_text": {"executed_lines": [172, 173, 175, 176, 178, 179, 181, 182, 184, 185, 187, 188, 192, 200, 202], "summary": {"covered_lines": 15, "num_statements": 17, "percent_covered": 89.65517241379311, "percent_covered_display": "90", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 88.23529411764706, "percent_statements_covered_display": "88", "num_branches": 12, "num_partial_branches": 1, "covered_branches": 11, "missing_branches": 1, "percent_branches_covered": 91.66666666666667, "percent_branches_covered_display": "92"}, "missing_lines": [189, 190], "excluded_lines": [], "start_line": 159, "executed_branches": [[172, 173], [172, 175], [175, 176], [175, 178], [178, 179], [178, 181], [181, 182], [181, 184], [187, 188], [187, 202], [188, 192]], "missing_branches": [[188, 189]]}, "_validate_labels": {"executed_lines": [218], "summary": {"covered_lines": 1, "num_statements": 2, "percent_covered": 50.0, "percent_covered_display": "50", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 50.0, "percent_statements_covered_display": "50", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [219], "excluded_lines": [], "start_line": 205, "executed_branches": [[218, -205]], "missing_branches": [[218, 219]]}, "validate_labels": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [232], "excluded_lines": [], "start_line": 231, "executed_branches": [], "missing_branches": []}, "get_labels_text": {"executed_lines": [252, 253, 255, 256, 263], "summary": {"covered_lines": 5, "num_statements": 10, "percent_covered": 44.44444444444444, "percent_covered_display": "44", "missing_lines": 5, "excluded_lines": 0, "percent_statements_covered": 50.0, "percent_statements_covered_display": "50", "num_branches": 8, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 5, "percent_branches_covered": 37.5, "percent_branches_covered_display": "38"}, "missing_lines": [257, 258, 259, 260, 262], "excluded_lines": [], "start_line": 235, "executed_branches": [[252, 253], [252, 255], [256, 263]], "missing_branches": [[256, 257], [257, 258], [257, 259], [259, 260], [259, 262]]}, "snap_boxes": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 13, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 13, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [310, 311, 314, 315, 317, 318, 319, 322, 323, 325, 326, 327, 329], "excluded_lines": [], "start_line": 266, "executed_branches": [], "missing_branches": []}, "Trace.__init__": {"executed_lines": [339, 340, 341, 343, 344, 345], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 333, "executed_branches": [], "missing_branches": []}, "Trace.put": {"executed_lines": [348, 351, 352, 358, 364, 366, 368, 375], "summary": {"covered_lines": 8, "num_statements": 14, "percent_covered": 55.55555555555556, "percent_covered_display": "56", "missing_lines": 6, "excluded_lines": 0, "percent_statements_covered": 57.142857142857146, "percent_statements_covered_display": "57", "num_branches": 4, "num_partial_branches": 2, "covered_branches": 2, "missing_branches": 2, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [359, 369, 370, 371, 372, 373], "excluded_lines": [], "start_line": 347, "executed_branches": [[358, 364], [368, 375]], "missing_branches": [[358, 359], [368, 369]]}, "Trace.get": {"executed_lines": [378, 381], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 377, "executed_branches": [], "missing_branches": []}, "hex_to_rgba": {"executed_lines": [397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409], "summary": {"covered_lines": 13, "num_statements": 13, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 384, "executed_branches": [[398, 399], [398, 400], [400, 401], [400, 402]], "missing_branches": []}, "rgba_to_hex": {"executed_lines": [425, 426, 427], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 412, "executed_branches": [[425, 426], [425, 427]], "missing_branches": []}, "is_valid_hex": {"executed_lines": [441], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 430, "executed_branches": [], "missing_branches": []}, "calculate_dynamic_kernel_size": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [464], "excluded_lines": [], "start_line": 444, "executed_branches": [], "missing_branches": []}, "calculate_dynamic_pixel_size": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [487], "excluded_lines": [], "start_line": 467, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 5, 6, 8, 9, 10, 12, 13, 14, 15, 17, 18, 21, 31, 32, 33, 35, 36, 40, 80, 133, 139, 159, 205, 226, 231, 235, 266, 332, 333, 347, 377, 384, 412, 430, 444, 467], "summary": {"covered_lines": 39, "num_statements": 39, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"ColorLookup": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [37], "excluded_lines": [], "start_line": 21, "executed_branches": [], "missing_branches": []}, "Trace": {"executed_lines": [339, 340, 341, 343, 344, 345, 348, 351, 352, 358, 364, 366, 368, 375, 378, 381], "summary": {"covered_lines": 16, "num_statements": 22, "percent_covered": 69.23076923076923, "percent_covered_display": "69", "missing_lines": 6, "excluded_lines": 0, "percent_statements_covered": 72.72727272727273, "percent_statements_covered_display": "73", "num_branches": 4, "num_partial_branches": 2, "covered_branches": 2, "missing_branches": 2, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [359, 369, 370, 371, 372, 373], "excluded_lines": [], "start_line": 332, "executed_branches": [[358, 364], [368, 375]], "missing_branches": [[358, 359], [368, 369]]}, "": {"executed_lines": [1, 3, 4, 5, 6, 8, 9, 10, 12, 13, 14, 15, 17, 18, 21, 31, 32, 33, 35, 36, 40, 45, 46, 51, 52, 53, 57, 58, 59, 60, 61, 62, 68, 69, 70, 71, 76, 80, 85, 86, 88, 89, 133, 134, 135, 136, 139, 145, 150, 156, 159, 172, 173, 175, 176, 178, 179, 181, 182, 184, 185, 187, 188, 192, 200, 202, 205, 218, 226, 231, 235, 252, 253, 255, 256, 263, 266, 332, 333, 347, 377, 384, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 412, 425, 426, 427, 430, 441, 444, 467], "summary": {"covered_lines": 103, "num_statements": 145, "percent_covered": 67.77251184834124, "percent_covered_display": "68", "missing_lines": 42, "excluded_lines": 0, "percent_statements_covered": 71.03448275862068, "percent_statements_covered_display": "71", "num_branches": 66, "num_partial_branches": 6, "covered_branches": 40, "missing_branches": 26, "percent_branches_covered": 60.60606060606061, "percent_branches_covered_display": "61"}, "missing_lines": [77, 90, 91, 92, 93, 99, 100, 106, 107, 108, 109, 110, 111, 117, 118, 124, 125, 155, 189, 190, 219, 232, 257, 258, 259, 260, 262, 310, 311, 314, 315, 317, 318, 319, 322, 323, 325, 326, 327, 329, 464, 487], "excluded_lines": [], "start_line": 1, "executed_branches": [[45, 46], [45, 51], [51, 52], [51, 58], [52, 53], [52, 57], [58, 59], [58, 60], [60, 61], [60, 69], [61, 62], [61, 68], [69, 70], [70, 71], [70, 76], [88, 89], [134, 135], [134, 136], [150, 156], [172, 173], [172, 175], [175, 176], [175, 178], [178, 179], [178, 181], [181, 182], [181, 184], [187, 188], [187, 202], [188, 192], [218, -205], [252, 253], [252, 255], [256, 263], [398, 399], [398, 400], [400, 401], [400, 402], [425, 426], [425, 427]], "missing_branches": [[69, 77], [88, 90], [90, 91], [90, 92], [92, 93], [92, 99], [99, 100], [99, 106], [106, 107], [106, 108], [108, 109], [108, 110], [110, 111], [110, 117], [117, 118], [117, 124], [124, -80], [124, 125], [150, 155], [188, 189], [218, 219], [256, 257], [257, 258], [257, 259], [259, 260], [259, 262]]}}}, "src\\supervision\\assets\\__init__.py": {"executed_lines": [1, 2, 4], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"": {"executed_lines": [1, 2, 4], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 2, 4], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "src\\supervision\\assets\\downloader.py": {"executed_lines": [1, 3, 4, 5, 6, 8, 9, 11, 12, 14, 17, 31, 32, 34, 35, 36, 38, 41, 63, 65, 66, 67, 68, 71, 73, 74, 75, 77, 80, 81, 83, 84, 85, 86, 88, 90, 91, 95], "summary": {"covered_lines": 38, "num_statements": 38, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 8, "num_partial_branches": 0, "covered_branches": 8, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [[31, 32], [31, 34], [65, 66], [65, 90], [66, 67], [66, 83], [83, 84], [83, 88]], "missing_branches": [], "functions": {"is_md5_hash_matching": {"executed_lines": [31, 32, 34, 35, 36, 38], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 17, "executed_branches": [[31, 32], [31, 34]], "missing_branches": []}, "download_assets": {"executed_lines": [63, 65, 66, 67, 68, 71, 73, 74, 75, 77, 80, 81, 83, 84, 85, 86, 88, 90, 91, 95], "summary": {"covered_lines": 20, "num_statements": 20, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 6, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 41, "executed_branches": [[65, 66], [65, 90], [66, 67], [66, 83], [83, 84], [83, 88]], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 5, 6, 8, 9, 11, 12, 14, 17, 41], "summary": {"covered_lines": 12, "num_statements": 12, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 3, 4, 5, 6, 8, 9, 11, 12, 14, 17, 31, 32, 34, 35, 36, 38, 41, 63, 65, 66, 67, 68, 71, 73, 74, 75, 77, 80, 81, 83, 84, 85, 86, 88, 90, 91, 95], "summary": {"covered_lines": 38, "num_statements": 38, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 8, "num_partial_branches": 0, "covered_branches": 8, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [[31, 32], [31, 34], [65, 66], [65, 90], [66, 67], [66, 83], [83, 84], [83, 88]], "missing_branches": []}}}, "src\\supervision\\assets\\list.py": {"executed_lines": [1, 3, 4, 7, 8, 9, 11, 12, 13, 14, 15, 16, 18, 19, 20, 23, 42, 43, 47, 48, 49, 50, 51, 52, 53, 54, 57, 69, 70, 73], "summary": {"covered_lines": 30, "num_statements": 30, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"Assets.__new__": {"executed_lines": [12, 13, 14, 15, 16], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 11, "executed_branches": [], "missing_branches": []}, "Assets.list": {"executed_lines": [20], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 19, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 7, 8, 9, 11, 18, 19, 23, 42, 43, 47, 48, 49, 50, 51, 52, 53, 54, 57, 69, 70, 73], "summary": {"covered_lines": 24, "num_statements": 24, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"Assets": {"executed_lines": [12, 13, 14, 15, 16, 20], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 7, "executed_branches": [], "missing_branches": []}, "VideoAssets": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 23, "executed_branches": [], "missing_branches": []}, "ImageAssets": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 57, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 7, 8, 9, 11, 18, 19, 23, 42, 43, 47, 48, 49, 50, 51, 52, 53, 54, 57, 69, 70, 73], "summary": {"covered_lines": 24, "num_statements": 24, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "src\\supervision\\classification\\__init__.py": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "src\\supervision\\classification\\core.py": {"executed_lines": [1, 3, 4, 6, 7, 13, 17, 18, 22, 26, 27, 28, 29, 32, 33, 34, 35, 37, 41, 43, 44, 46, 52, 53, 81, 83, 84, 92, 93, 120, 121, 155, 157, 158, 166, 192, 195, 196, 197, 198, 200], "summary": {"covered_lines": 41, "num_statements": 50, "percent_covered": 77.41935483870968, "percent_covered_display": "77", "missing_lines": 9, "excluded_lines": 2, "percent_statements_covered": 82.0, "percent_statements_covered_display": "82", "num_branches": 12, "num_partial_branches": 5, "covered_branches": 7, "missing_branches": 5, "percent_branches_covered": 58.333333333333336, "percent_branches_covered_display": "58"}, "missing_lines": [19, 50, 89, 90, 117, 118, 163, 164, 193], "excluded_lines": [9, 10], "executed_branches": [[18, -13], [26, 27], [28, -22], [28, 29], [83, 84], [157, 158], [192, 195]], "missing_branches": [[18, 19], [26, -22], [83, 89], [157, 163], [192, 193]], "functions": {"_validate_class_ids": {"executed_lines": [17, 18], "summary": {"covered_lines": 2, "num_statements": 3, "percent_covered": 60.0, "percent_covered_display": "60", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 66.66666666666667, "percent_statements_covered_display": "67", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [19], "excluded_lines": [], "start_line": 13, "executed_branches": [[18, -13]], "missing_branches": [[18, 19]]}, "_validate_confidence": {"executed_lines": [26, 27, 28, 29], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 87.5, "percent_covered_display": "88", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [], "excluded_lines": [], "start_line": 22, "executed_branches": [[26, 27], [28, -22], [28, 29]], "missing_branches": [[26, -22]]}, "Classifications.__post_init__": {"executed_lines": [41, 43, 44], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 37, "executed_branches": [], "missing_branches": []}, "Classifications.__len__": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [50], "excluded_lines": [], "start_line": 46, "executed_branches": [], "missing_branches": []}, "Classifications.from_clip": {"executed_lines": [81, 83, 84], "summary": {"covered_lines": 3, "num_statements": 5, "percent_covered": 57.142857142857146, "percent_covered_display": "57", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 60.0, "percent_statements_covered_display": "60", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [89, 90], "excluded_lines": [], "start_line": 53, "executed_branches": [[83, 84]], "missing_branches": [[83, 89]]}, "Classifications.from_ultralytics": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 2, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [117, 118], "excluded_lines": [], "start_line": 93, "executed_branches": [], "missing_branches": []}, "Classifications.from_timm": {"executed_lines": [155, 157, 158], "summary": {"covered_lines": 3, "num_statements": 5, "percent_covered": 57.142857142857146, "percent_covered_display": "57", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 60.0, "percent_statements_covered_display": "60", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [163, 164], "excluded_lines": [], "start_line": 121, "executed_branches": [[157, 158]], "missing_branches": [[157, 163]]}, "Classifications.get_top_k": {"executed_lines": [192, 195, 196, 197, 198, 200], "summary": {"covered_lines": 6, "num_statements": 7, "percent_covered": 77.77777777777777, "percent_covered_display": "78", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 85.71428571428571, "percent_statements_covered_display": "86", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [193], "excluded_lines": [], "start_line": 166, "executed_branches": [[192, 195]], "missing_branches": [[192, 193]]}, "": {"executed_lines": [1, 3, 4, 6, 7, 13, 22, 32, 33, 34, 35, 37, 46, 52, 53, 92, 93, 120, 121, 166], "summary": {"covered_lines": 20, "num_statements": 20, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 2, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [9, 10], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"Classifications": {"executed_lines": [41, 43, 44, 81, 83, 84, 155, 157, 158, 192, 195, 196, 197, 198, 200], "summary": {"covered_lines": 15, "num_statements": 23, "percent_covered": 62.06896551724138, "percent_covered_display": "62", "missing_lines": 8, "excluded_lines": 0, "percent_statements_covered": 65.21739130434783, "percent_statements_covered_display": "65", "num_branches": 6, "num_partial_branches": 3, "covered_branches": 3, "missing_branches": 3, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [50, 89, 90, 117, 118, 163, 164, 193], "excluded_lines": [], "start_line": 33, "executed_branches": [[83, 84], [157, 158], [192, 195]], "missing_branches": [[83, 89], [157, 163], [192, 193]]}, "": {"executed_lines": [1, 3, 4, 6, 7, 13, 17, 18, 22, 26, 27, 28, 29, 32, 33, 34, 35, 37, 46, 52, 53, 92, 93, 120, 121, 166], "summary": {"covered_lines": 26, "num_statements": 27, "percent_covered": 90.9090909090909, "percent_covered_display": "91", "missing_lines": 1, "excluded_lines": 2, "percent_statements_covered": 96.29629629629629, "percent_statements_covered_display": "96", "num_branches": 6, "num_partial_branches": 2, "covered_branches": 4, "missing_branches": 2, "percent_branches_covered": 66.66666666666667, "percent_branches_covered_display": "67"}, "missing_lines": [19], "excluded_lines": [9, 10], "start_line": 1, "executed_branches": [[18, -13], [26, 27], [28, -22], [28, 29]], "missing_branches": [[18, 19], [26, -22]]}}}, "src\\supervision\\config.py": {"executed_lines": [1, 2, 13], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"": {"executed_lines": [1, 2, 13], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 2, 13], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "src\\supervision\\dataset\\__init__.py": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "src\\supervision\\dataset\\core.py": {"executed_lines": [1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 14, 15, 16, 20, 24, 29, 36, 37, 38, 41, 42, 43, 46, 47, 56, 74, 80, 82, 86, 88, 89, 90, 91, 92, 97, 99, 101, 103, 105, 106, 108, 110, 111, 113, 119, 120, 121, 122, 124, 131, 132, 133, 135, 136, 139, 142, 145, 152, 155, 157, 200, 209, 213, 214, 215, 216, 218, 223, 228, 230, 231, 279, 280, 282, 283, 285, 286, 287, 292, 293, 294, 296, 299, 300, 301, 302, 305, 307, 311, 312, 313, 314, 315, 318, 319, 324, 330, 387, 388, 441, 442, 493, 500, 504, 547, 561, 565, 566, 574, 575, 577, 578, 619, 624, 626, 709, 710, 713, 714, 723, 726, 727, 740, 766, 775, 778, 789, 802, 824, 897, 921, 922], "summary": {"covered_lines": 132, "num_statements": 228, "percent_covered": 52.515723270440255, "percent_covered_display": "53", "missing_lines": 96, "excluded_lines": 0, "percent_statements_covered": 57.89473684210526, "percent_statements_covered_display": "58", "num_branches": 90, "num_partial_branches": 15, "covered_branches": 35, "missing_branches": 55, "percent_branches_covered": 38.888888888888886, "percent_branches_covered_display": "39"}, "missing_lines": [44, 53, 83, 104, 107, 137, 140, 143, 146, 150, 153, 210, 211, 288, 361, 362, 366, 367, 368, 369, 370, 373, 374, 384, 385, 431, 437, 552, 554, 562, 746, 748, 749, 752, 755, 757, 758, 759, 760, 768, 769, 770, 771, 772, 773, 776, 784, 785, 786, 787, 798, 799, 800, 803, 804, 806, 807, 809, 810, 812, 813, 817, 819, 820, 822, 866, 875, 876, 877, 879, 880, 881, 882, 884, 889, 895, 905, 907, 908, 910, 911, 912, 917, 918, 919, 949, 950, 952, 953, 955, 956, 958, 959, 960, 961, 965], "excluded_lines": [], "executed_branches": [[82, 86], [88, 89], [88, 97], [90, 91], [90, 97], [91, 92], [103, 105], [106, 108], [131, -124], [131, 132], [136, 139], [139, 142], [142, 145], [145, 152], [152, 155], [209, 213], [287, 292], [293, 294], [293, 296], [300, 301], [300, 305], [312, 313], [312, 314], [314, 315], [314, 324], [318, 314], [318, 319], [547, 561], [561, 565], [565, 566], [574, 575], [709, 710], [709, 713], [713, 714], [713, 723]], "missing_branches": [[82, 83], [91, 90], [103, 104], [106, 107], [136, 137], [139, 140], [142, 143], [145, 146], [146, 150], [146, 152], [152, 153], [209, 210], [287, 288], [361, 362], [361, 366], [366, -330], [366, 367], [368, -330], [368, 369], [547, 552], [561, 562], [565, 574], [574, -504], [748, 749], [748, 752], [758, -740], [758, 759], [768, 769], [768, 770], [771, 772], [771, 773], [798, -789], [798, 799], [803, 804], [803, 806], [806, 807], [806, 809], [809, 810], [809, 812], [812, 813], [812, 819], [813, 817], [813, 819], [819, 820], [819, 822], [875, 876], [875, 879], [907, 908], [907, 910], [910, -897], [910, 911], [955, 956], [955, 965], [958, 955], [958, 959]], "functions": {"BaseDataset.__len__": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [44], "excluded_lines": [], "start_line": 43, "executed_branches": [], "missing_branches": []}, "BaseDataset.split": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [53], "excluded_lines": [], "start_line": 47, "executed_branches": [], "missing_branches": []}, "DetectionDataset.__init__": {"executed_lines": [80, 82, 86, 88, 89, 90, 91, 92, 97, 99], "summary": {"covered_lines": 10, "num_statements": 11, "percent_covered": 84.21052631578948, "percent_covered_display": "84", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 90.9090909090909, "percent_statements_covered_display": "91", "num_branches": 8, "num_partial_branches": 2, "covered_branches": 6, "missing_branches": 2, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [83], "excluded_lines": [], "start_line": 74, "executed_branches": [[82, 86], [88, 89], [88, 97], [90, 91], [90, 97], [91, 92]], "missing_branches": [[82, 83], [91, 90]]}, "DetectionDataset._get_image": {"executed_lines": [103, 105, 106, 108], "summary": {"covered_lines": 4, "num_statements": 6, "percent_covered": 60.0, "percent_covered_display": "60", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 66.66666666666667, "percent_statements_covered_display": "67", "num_branches": 4, "num_partial_branches": 2, "covered_branches": 2, "missing_branches": 2, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [104, 107], "excluded_lines": [], "start_line": 101, "executed_branches": [[103, 105], [106, 108]], "missing_branches": [[103, 104], [106, 107]]}, "DetectionDataset.__len__": {"executed_lines": [111], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 110, "executed_branches": [], "missing_branches": []}, "DetectionDataset.__getitem__": {"executed_lines": [119, 120, 121, 122], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 113, "executed_branches": [], "missing_branches": []}, "DetectionDataset.__iter__": {"executed_lines": [131, 132, 133], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 124, "executed_branches": [[131, -124], [131, 132]], "missing_branches": []}, "DetectionDataset.__eq__": {"executed_lines": [136, 139, 142, 145, 152, 155], "summary": {"covered_lines": 6, "num_statements": 12, "percent_covered": 45.833333333333336, "percent_covered_display": "46", "missing_lines": 6, "excluded_lines": 0, "percent_statements_covered": 50.0, "percent_statements_covered_display": "50", "num_branches": 12, "num_partial_branches": 5, "covered_branches": 5, "missing_branches": 7, "percent_branches_covered": 41.666666666666664, "percent_branches_covered_display": "42"}, "missing_lines": [137, 140, 143, 146, 150, 153], "excluded_lines": [], "start_line": 135, "executed_branches": [[136, 139], [139, 142], [142, 145], [145, 152], [152, 155]], "missing_branches": [[136, 137], [139, 140], [142, 143], [145, 146], [146, 150], [146, 152], [152, 153]]}, "DetectionDataset.split": {"executed_lines": [200, 209, 213, 214, 215, 216, 218, 223, 228], "summary": {"covered_lines": 9, "num_statements": 11, "percent_covered": 76.92307692307692, "percent_covered_display": "77", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 81.81818181818181, "percent_statements_covered_display": "82", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [210, 211], "excluded_lines": [], "start_line": 157, "executed_branches": [[209, 213]], "missing_branches": [[209, 210]]}, "DetectionDataset.merge": {"executed_lines": [279, 282, 285, 286, 287, 292, 293, 294, 296, 299, 300, 301, 302, 305, 307, 311, 312, 313, 314, 315, 318, 319, 324], "summary": {"covered_lines": 23, "num_statements": 24, "percent_covered": 94.44444444444444, "percent_covered_display": "94", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 95.83333333333333, "percent_statements_covered_display": "96", "num_branches": 12, "num_partial_branches": 1, "covered_branches": 11, "missing_branches": 1, "percent_branches_covered": 91.66666666666667, "percent_branches_covered_display": "92"}, "missing_lines": [288], "excluded_lines": [], "start_line": 231, "executed_branches": [[287, 292], [293, 294], [293, 296], [300, 301], [300, 305], [312, 313], [312, 314], [314, 315], [314, 324], [318, 314], [318, 319]], "missing_branches": [[287, 288]]}, "DetectionDataset.merge.is_in_memory": {"executed_lines": [280], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 279, "executed_branches": [], "missing_branches": []}, "DetectionDataset.merge.is_lazy": {"executed_lines": [283], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 282, "executed_branches": [], "missing_branches": []}, "DetectionDataset.as_pascal_voc": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 11, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 11, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 6, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [361, 362, 366, 367, 368, 369, 370, 373, 374, 384, 385], "excluded_lines": [], "start_line": 330, "executed_branches": [], "missing_branches": [[361, 362], [361, 366], [366, -330], [366, 367], [368, -330], [368, 369]]}, "DetectionDataset.from_pascal_voc": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 2, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [431, 437], "excluded_lines": [], "start_line": 388, "executed_branches": [], "missing_branches": []}, "DetectionDataset.from_yolo": {"executed_lines": [493, 500], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 442, "executed_branches": [], "missing_branches": []}, "DetectionDataset.as_yolo": {"executed_lines": [547, 561, 565, 566, 574, 575], "summary": {"covered_lines": 6, "num_statements": 9, "percent_covered": 58.8235294117647, "percent_covered_display": "59", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 66.66666666666667, "percent_statements_covered_display": "67", "num_branches": 8, "num_partial_branches": 4, "covered_branches": 4, "missing_branches": 4, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [552, 554, 562], "excluded_lines": [], "start_line": 504, "executed_branches": [[547, 561], [561, 565], [565, 566], [574, 575]], "missing_branches": [[547, 552], [561, 562], [565, 574], [574, -504]]}, "DetectionDataset.from_coco": {"executed_lines": [619, 624], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 578, "executed_branches": [], "missing_branches": []}, "DetectionDataset.as_coco": {"executed_lines": [709, 710, 713, 714, 723], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 626, "executed_branches": [[709, 710], [709, 713], [713, 714], [713, 723]], "missing_branches": []}, "ClassificationDataset.__init__": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 9, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 9, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 4, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [746, 748, 749, 752, 755, 757, 758, 759, 760], "excluded_lines": [], "start_line": 740, "executed_branches": [], "missing_branches": [[748, 749], [748, 752], [758, -740], [758, 759]]}, "ClassificationDataset._get_image": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 6, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 6, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 4, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [768, 769, 770, 771, 772, 773], "excluded_lines": [], "start_line": 766, "executed_branches": [], "missing_branches": [[768, 769], [768, 770], [771, 772], [771, 773]]}, "ClassificationDataset.__len__": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [776], "excluded_lines": [], "start_line": 775, "executed_branches": [], "missing_branches": []}, "ClassificationDataset.__getitem__": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 4, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 4, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [784, 785, 786, 787], "excluded_lines": [], "start_line": 778, "executed_branches": [], "missing_branches": []}, "ClassificationDataset.__iter__": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 3, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 2, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [798, 799, 800], "excluded_lines": [], "start_line": 789, "executed_branches": [], "missing_branches": [[798, -789], [798, 799]]}, "ClassificationDataset.__eq__": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 12, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 12, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 12, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 12, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [803, 804, 806, 807, 809, 810, 812, 813, 817, 819, 820, 822], "excluded_lines": [], "start_line": 802, "executed_branches": [], "missing_branches": [[803, 804], [803, 806], [806, 807], [806, 809], [809, 810], [809, 812], [812, 813], [812, 819], [813, 817], [813, 819], [819, 820], [819, 822]]}, "ClassificationDataset.split": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 11, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 11, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 2, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [866, 875, 876, 877, 879, 880, 881, 882, 884, 889, 895], "excluded_lines": [], "start_line": 824, "executed_branches": [], "missing_branches": [[875, 876], [875, 879]]}, "ClassificationDataset.as_folder_structure": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 9, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 9, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 4, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [905, 907, 908, 910, 911, 912, 917, 918, 919], "excluded_lines": [], "start_line": 897, "executed_branches": [], "missing_branches": [[907, 908], [907, 910], [910, -897], [910, 911]]}, "ClassificationDataset.from_folder_structure": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 11, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 11, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 4, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [949, 950, 952, 953, 955, 956, 958, 959, 960, 961, 965], "excluded_lines": [], "start_line": 922, "executed_branches": [], "missing_branches": [[955, 956], [955, 965], [958, 955], [958, 959]]}, "": {"executed_lines": [1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 14, 15, 16, 20, 24, 29, 36, 37, 38, 41, 42, 43, 46, 47, 56, 74, 101, 110, 113, 124, 135, 157, 230, 231, 330, 387, 388, 441, 442, 504, 577, 578, 626, 726, 727, 740, 766, 775, 778, 789, 802, 824, 897, 921, 922], "summary": {"covered_lines": 55, "num_statements": 55, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"BaseDataset": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 2, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [44, 53], "excluded_lines": [], "start_line": 41, "executed_branches": [], "missing_branches": []}, "DetectionDataset": {"executed_lines": [80, 82, 86, 88, 89, 90, 91, 92, 97, 99, 103, 105, 106, 108, 111, 119, 120, 121, 122, 131, 132, 133, 136, 139, 142, 145, 152, 155, 200, 209, 213, 214, 215, 216, 218, 223, 228, 279, 280, 282, 283, 285, 286, 287, 292, 293, 294, 296, 299, 300, 301, 302, 305, 307, 311, 312, 313, 314, 315, 318, 319, 324, 493, 500, 547, 561, 565, 566, 574, 575, 619, 624, 709, 710, 713, 714, 723], "summary": {"covered_lines": 77, "num_statements": 105, "percent_covered": 68.71165644171779, "percent_covered_display": "69", "missing_lines": 28, "excluded_lines": 0, "percent_statements_covered": 73.33333333333333, "percent_statements_covered_display": "73", "num_branches": 58, "num_partial_branches": 15, "covered_branches": 35, "missing_branches": 23, "percent_branches_covered": 60.3448275862069, "percent_branches_covered_display": "60"}, "missing_lines": [83, 104, 107, 137, 140, 143, 146, 150, 153, 210, 211, 288, 361, 362, 366, 367, 368, 369, 370, 373, 374, 384, 385, 431, 437, 552, 554, 562], "excluded_lines": [], "start_line": 56, "executed_branches": [[82, 86], [88, 89], [88, 97], [90, 91], [90, 97], [91, 92], [103, 105], [106, 108], [131, -124], [131, 132], [136, 139], [139, 142], [142, 145], [145, 152], [152, 155], [209, 213], [287, 292], [293, 294], [293, 296], [300, 301], [300, 305], [312, 313], [312, 314], [314, 315], [314, 324], [318, 314], [318, 319], [547, 561], [561, 565], [565, 566], [574, 575], [709, 710], [709, 713], [713, 714], [713, 723]], "missing_branches": [[82, 83], [91, 90], [103, 104], [106, 107], [136, 137], [139, 140], [142, 143], [145, 146], [146, 150], [146, 152], [152, 153], [209, 210], [287, 288], [361, 362], [361, 366], [366, -330], [366, 367], [368, -330], [368, 369], [547, 552], [561, 562], [565, 574], [574, -504]]}, "ClassificationDataset": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 66, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 66, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 32, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 32, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [746, 748, 749, 752, 755, 757, 758, 759, 760, 768, 769, 770, 771, 772, 773, 776, 784, 785, 786, 787, 798, 799, 800, 803, 804, 806, 807, 809, 810, 812, 813, 817, 819, 820, 822, 866, 875, 876, 877, 879, 880, 881, 882, 884, 889, 895, 905, 907, 908, 910, 911, 912, 917, 918, 919, 949, 950, 952, 953, 955, 956, 958, 959, 960, 961, 965], "excluded_lines": [], "start_line": 727, "executed_branches": [], "missing_branches": [[748, 749], [748, 752], [758, -740], [758, 759], [768, 769], [768, 770], [771, 772], [771, 773], [798, -789], [798, 799], [803, 804], [803, 806], [806, 807], [806, 809], [809, 810], [809, 812], [812, 813], [812, 819], [813, 817], [813, 819], [819, 820], [819, 822], [875, 876], [875, 879], [907, 908], [907, 910], [910, -897], [910, 911], [955, 956], [955, 965], [958, 955], [958, 959]]}, "": {"executed_lines": [1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 14, 15, 16, 20, 24, 29, 36, 37, 38, 41, 42, 43, 46, 47, 56, 74, 101, 110, 113, 124, 135, 157, 230, 231, 330, 387, 388, 441, 442, 504, 577, 578, 626, 726, 727, 740, 766, 775, 778, 789, 802, 824, 897, 921, 922], "summary": {"covered_lines": 55, "num_statements": 55, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "src\\supervision\\dataset\\formats\\__init__.py": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "src\\supervision\\dataset\\formats\\coco.py": {"executed_lines": [1, 2, 3, 4, 6, 7, 9, 10, 14, 15, 20, 21, 26, 29, 30, 36, 39, 42, 48, 74, 84, 87, 88, 89, 90, 91, 92, 93, 96, 99, 100, 101, 103, 104, 105, 108, 109, 111, 112, 115, 117, 120, 122, 123, 124, 127, 136, 140, 142, 145, 177, 178, 180, 183, 184, 185, 187, 188, 189, 192, 193, 197, 198, 202, 205, 208, 209, 210, 212, 217, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 292, 297, 298, 305, 313, 315, 317, 324, 327, 328, 329, 332, 340, 342, 343, 352, 353, 354, 357, 396, 431, 432, 434, 438, 439, 443, 444, 445, 447, 448, 453, 454, 455, 456, 462, 463, 469, 470, 475, 476, 482, 485, 492, 497, 498, 500, 503, 504, 507, 568, 569, 574, 575, 583, 584, 585, 587, 588, 589, 590, 591, 600, 601, 610, 611, 613, 620, 621], "summary": {"covered_lines": 148, "num_statements": 160, "percent_covered": 92.5233644859813, "percent_covered_display": "93", "missing_lines": 12, "excluded_lines": 2, "percent_statements_covered": 92.5, "percent_statements_covered_display": "92", "num_branches": 54, "num_partial_branches": 4, "covered_branches": 50, "missing_branches": 4, "percent_branches_covered": 92.5925925925926, "percent_branches_covered_display": "93"}, "missing_lines": [118, 119, 128, 133, 331, 338, 388, 389, 390, 393, 457, 458], "excluded_lines": [23, 24], "executed_branches": [[88, 89], [88, 93], [90, 91], [90, 92], [103, 104], [103, 142], [105, 108], [105, 111], [111, 112], [111, 117], [117, 120], [123, 124], [123, 140], [127, 136], [177, 178], [177, 180], [188, 189], [188, 197], [197, 198], [197, 202], [208, 209], [208, 210], [282, 283], [282, 354], [283, 284], [283, 285], [287, 288], [287, 324], [289, 290], [289, 292], [297, 298], [297, 305], [313, 315], [313, 317], [328, 329], [328, 342], [329, 332], [332, 340], [447, 448], [447, 500], [462, 463], [462, 469], [469, 470], [469, 475], [475, 476], [475, 482], [568, 569], [568, 574], [588, 589], [588, 613]], "missing_branches": [[117, 118], [127, 128], [329, 331], [332, 338]], "functions": {"coco_categories_to_classes": {"executed_lines": [30], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 29, "executed_branches": [], "missing_branches": []}, "build_coco_class_index_mapping": {"executed_lines": [39, 42], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 36, "executed_branches": [], "missing_branches": []}, "classes_to_coco_categories": {"executed_lines": [74], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 48, "executed_branches": [], "missing_branches": []}, "group_coco_annotations_by_image_id": {"executed_lines": [87, 88, 89, 90, 91, 92, 93], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 84, "executed_branches": [[88, 89], [88, 93], [90, 91], [90, 92]], "missing_branches": []}, "coco_annotations_to_masks": {"executed_lines": [99, 100, 101, 103, 104, 105, 108, 109, 111, 112, 115, 117, 120, 122, 123, 124, 127, 136, 140, 142], "summary": {"covered_lines": 20, "num_statements": 24, "percent_covered": 83.33333333333333, "percent_covered_display": "83", "missing_lines": 4, "excluded_lines": 0, "percent_statements_covered": 83.33333333333333, "percent_statements_covered_display": "83", "num_branches": 12, "num_partial_branches": 2, "covered_branches": 10, "missing_branches": 2, "percent_branches_covered": 83.33333333333333, "percent_branches_covered_display": "83"}, "missing_lines": [118, 119, 128, 133], "excluded_lines": [], "start_line": 96, "executed_branches": [[103, 104], [103, 142], [105, 108], [105, 111], [111, 112], [111, 117], [117, 120], [123, 124], [123, 140], [127, 136]], "missing_branches": [[117, 118], [127, 128]]}, "coco_annotations_to_detections": {"executed_lines": [177, 178, 180, 183, 184, 185, 187, 188, 189, 192, 193, 197, 198, 202, 205, 208, 209, 210, 212], "summary": {"covered_lines": 19, "num_statements": 19, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 8, "num_partial_branches": 0, "covered_branches": 8, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 145, "executed_branches": [[177, 178], [177, 180], [188, 189], [188, 197], [197, 198], [197, 202], [208, 209], [208, 210]], "missing_branches": []}, "detections_to_coco_annotations": {"executed_lines": [281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 292, 297, 298, 305, 313, 315, 317, 324, 327, 328, 329, 332, 340, 342, 343, 352, 353, 354], "summary": {"covered_lines": 28, "num_statements": 30, "percent_covered": 91.66666666666667, "percent_covered_display": "92", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 93.33333333333333, "percent_statements_covered_display": "93", "num_branches": 18, "num_partial_branches": 2, "covered_branches": 16, "missing_branches": 2, "percent_branches_covered": 88.88888888888889, "percent_branches_covered_display": "89"}, "missing_lines": [331, 338], "excluded_lines": [], "start_line": 217, "executed_branches": [[282, 283], [282, 354], [283, 284], [283, 285], [287, 288], [287, 324], [289, 290], [289, 292], [297, 298], [297, 305], [313, 315], [313, 317], [328, 329], [328, 342], [329, 332], [332, 340]], "missing_branches": [[329, 331], [332, 338]]}, "get_coco_class_index_mapping": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 4, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 4, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [388, 389, 390, 393], "excluded_lines": [], "start_line": 357, "executed_branches": [], "missing_branches": []}, "load_coco_annotations": {"executed_lines": [431, 432, 434, 438, 439, 443, 444, 445, 447, 448, 453, 454, 455, 456, 462, 463, 469, 470, 475, 476, 482, 485, 492, 497, 498, 500], "summary": {"covered_lines": 26, "num_statements": 28, "percent_covered": 94.44444444444444, "percent_covered_display": "94", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 92.85714285714286, "percent_statements_covered_display": "93", "num_branches": 8, "num_partial_branches": 0, "covered_branches": 8, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [457, 458], "excluded_lines": [], "start_line": 396, "executed_branches": [[447, 448], [447, 500], [462, 463], [462, 469], [469, 470], [469, 475], [475, 476], [475, 482]], "missing_branches": []}, "_with_seg_mask": {"executed_lines": [504], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 503, "executed_branches": [], "missing_branches": []}, "save_coco_annotations": {"executed_lines": [568, 569, 574, 575, 583, 584, 585, 587, 588, 589, 590, 591, 600, 601, 610, 611, 613, 620, 621], "summary": {"covered_lines": 19, "num_statements": 19, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 507, "executed_branches": [[568, 569], [568, 574], [588, 589], [588, 613]], "missing_branches": []}, "": {"executed_lines": [1, 2, 3, 4, 6, 7, 9, 10, 14, 15, 20, 21, 26, 29, 36, 48, 84, 96, 145, 217, 357, 396, 503, 507], "summary": {"covered_lines": 24, "num_statements": 24, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 2, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [23, 24], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 2, 3, 4, 6, 7, 9, 10, 14, 15, 20, 21, 26, 29, 30, 36, 39, 42, 48, 74, 84, 87, 88, 89, 90, 91, 92, 93, 96, 99, 100, 101, 103, 104, 105, 108, 109, 111, 112, 115, 117, 120, 122, 123, 124, 127, 136, 140, 142, 145, 177, 178, 180, 183, 184, 185, 187, 188, 189, 192, 193, 197, 198, 202, 205, 208, 209, 210, 212, 217, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 292, 297, 298, 305, 313, 315, 317, 324, 327, 328, 329, 332, 340, 342, 343, 352, 353, 354, 357, 396, 431, 432, 434, 438, 439, 443, 444, 445, 447, 448, 453, 454, 455, 456, 462, 463, 469, 470, 475, 476, 482, 485, 492, 497, 498, 500, 503, 504, 507, 568, 569, 574, 575, 583, 584, 585, 587, 588, 589, 590, 591, 600, 601, 610, 611, 613, 620, 621], "summary": {"covered_lines": 148, "num_statements": 160, "percent_covered": 92.5233644859813, "percent_covered_display": "93", "missing_lines": 12, "excluded_lines": 2, "percent_statements_covered": 92.5, "percent_statements_covered_display": "92", "num_branches": 54, "num_partial_branches": 4, "covered_branches": 50, "missing_branches": 4, "percent_branches_covered": 92.5925925925926, "percent_branches_covered_display": "93"}, "missing_lines": [118, 119, 128, 133, 331, 338, 388, 389, 390, 393, 457, 458], "excluded_lines": [23, 24], "start_line": 1, "executed_branches": [[88, 89], [88, 93], [90, 91], [90, 92], [103, 104], [103, 142], [105, 108], [105, 111], [111, 112], [111, 117], [117, 120], [123, 124], [123, 140], [127, 136], [177, 178], [177, 180], [188, 189], [188, 197], [197, 198], [197, 202], [208, 209], [208, 210], [282, 283], [282, 354], [283, 284], [283, 285], [287, 288], [287, 324], [289, 290], [289, 292], [297, 298], [297, 305], [313, 315], [313, 317], [328, 329], [328, 342], [329, 332], [332, 340], [447, 448], [447, 500], [462, 463], [462, 469], [469, 470], [469, 475], [475, 476], [475, 482], [568, 569], [568, 574], [588, 589], [588, 613]], "missing_branches": [[117, 118], [127, 128], [329, 331], [332, 338]]}}}, "src\\supervision\\dataset\\formats\\pascal_voc.py": {"executed_lines": [1, 3, 4, 5, 7, 8, 9, 10, 11, 13, 14, 15, 16, 19, 49, 51, 52, 58, 60, 61, 62, 63, 64, 65, 66, 67, 68, 70, 72, 73, 74, 75, 76, 77, 78, 79, 81, 84, 118, 121, 124, 125, 128, 129, 132, 133, 134, 137, 138, 139, 140, 141, 142, 143, 146, 147, 150, 151, 153, 158, 159, 173, 174, 177, 178, 181, 235, 272, 273, 274, 275, 278, 279, 280, 281, 283, 284, 286, 287, 288, 289, 291, 293, 296, 297, 299, 301, 305, 307, 308, 311, 312, 314, 317, 319, 320, 322, 326, 332, 335, 336, 339, 340, 341, 342, 344, 345, 351, 352, 353, 355], "summary": {"covered_lines": 111, "num_statements": 140, "percent_covered": 75.55555555555556, "percent_covered_display": "76", "missing_lines": 29, "excluded_lines": 1, "percent_statements_covered": 79.28571428571429, "percent_statements_covered_display": "79", "num_branches": 40, "num_partial_branches": 7, "covered_branches": 25, "missing_branches": 15, "percent_branches_covered": 62.5, "percent_branches_covered_display": "62"}, "missing_lines": [152, 154, 160, 166, 167, 168, 171, 203, 210, 211, 213, 214, 215, 216, 217, 218, 220, 221, 223, 224, 225, 226, 227, 230, 232, 285, 321, 343, 354], "excluded_lines": [241], "executed_branches": [[70, 72], [70, 81], [74, 75], [74, 81], [150, 151], [150, 177], [151, 153], [153, 158], [159, 173], [279, 280], [279, 311], [284, 286], [296, 297], [296, 307], [307, 279], [307, 308], [311, 312], [311, 314], [319, 320], [319, 322], [320, 319], [341, 342], [341, 345], [342, 344], [353, 355]], "missing_branches": [[151, 152], [153, 154], [159, 160], [166, 150], [166, 167], [213, 214], [213, 232], [216, 217], [216, 220], [224, 225], [224, 226], [284, 285], [320, 321], [342, 343], [353, 354]], "functions": {"object_to_pascal_voc": {"executed_lines": [49, 51, 52, 58, 60, 61, 62, 63, 64, 65, 66, 67, 68, 70, 72, 73, 74, 75, 76, 77, 78, 79, 81], "summary": {"covered_lines": 23, "num_statements": 23, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 19, "executed_branches": [[70, 72], [70, 81], [74, 75], [74, 81]], "missing_branches": []}, "detections_to_pascal_voc": {"executed_lines": [118, 121, 124, 125, 128, 129, 132, 133, 134, 137, 138, 139, 140, 141, 142, 143, 146, 147, 150, 151, 153, 158, 159, 173, 174, 177, 178], "summary": {"covered_lines": 27, "num_statements": 34, "percent_covered": 72.72727272727273, "percent_covered_display": "73", "missing_lines": 7, "excluded_lines": 0, "percent_statements_covered": 79.41176470588235, "percent_statements_covered_display": "79", "num_branches": 10, "num_partial_branches": 3, "covered_branches": 5, "missing_branches": 5, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [152, 154, 160, 166, 167, 168, 171], "excluded_lines": [], "start_line": 84, "executed_branches": [[150, 151], [150, 177], [151, 153], [153, 158], [159, 173]], "missing_branches": [[151, 152], [153, 154], [159, 160], [166, 150], [166, 167]]}, "load_pascal_voc_annotations": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 18, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 18, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 6, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [203, 210, 211, 213, 214, 215, 216, 217, 218, 220, 221, 223, 224, 225, 226, 227, 230, 232], "excluded_lines": [], "start_line": 181, "executed_branches": [], "missing_branches": [[213, 214], [213, 232], [216, 217], [216, 220], [224, 225], [224, 226]]}, "detections_from_xml_obj": {"executed_lines": [272, 273, 274, 275, 278, 279, 280, 281, 283, 284, 286, 287, 288, 289, 291, 293, 296, 297, 299, 301, 305, 307, 308, 311, 312, 314, 317, 319, 320, 322, 326, 332], "summary": {"covered_lines": 32, "num_statements": 34, "percent_covered": 91.66666666666667, "percent_covered_display": "92", "missing_lines": 2, "excluded_lines": 1, "percent_statements_covered": 94.11764705882354, "percent_statements_covered_display": "94", "num_branches": 14, "num_partial_branches": 2, "covered_branches": 12, "missing_branches": 2, "percent_branches_covered": 85.71428571428571, "percent_branches_covered_display": "86"}, "missing_lines": [285, 321], "excluded_lines": [241], "start_line": 235, "executed_branches": [[279, 280], [279, 311], [284, 286], [296, 297], [296, 307], [307, 279], [307, 308], [311, 312], [311, 314], [319, 320], [319, 322], [320, 319]], "missing_branches": [[284, 285], [320, 321]]}, "_with_poly_mask": {"executed_lines": [336], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 335, "executed_branches": [], "missing_branches": []}, "parse_polygon_points": {"executed_lines": [340, 341, 342, 344, 345], "summary": {"covered_lines": 5, "num_statements": 6, "percent_covered": 80.0, "percent_covered_display": "80", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 83.33333333333333, "percent_statements_covered_display": "83", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [343], "excluded_lines": [], "start_line": 339, "executed_branches": [[341, 342], [341, 345], [342, 344]], "missing_branches": [[342, 343]]}, "_get_required_text": {"executed_lines": [352, 353, 355], "summary": {"covered_lines": 3, "num_statements": 4, "percent_covered": 66.66666666666667, "percent_covered_display": "67", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 75.0, "percent_statements_covered_display": "75", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [354], "excluded_lines": [], "start_line": 351, "executed_branches": [[353, 355]], "missing_branches": [[353, 354]]}, "": {"executed_lines": [1, 3, 4, 5, 7, 8, 9, 10, 11, 13, 14, 15, 16, 19, 84, 181, 235, 335, 339, 351], "summary": {"covered_lines": 20, "num_statements": 20, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 3, 4, 5, 7, 8, 9, 10, 11, 13, 14, 15, 16, 19, 49, 51, 52, 58, 60, 61, 62, 63, 64, 65, 66, 67, 68, 70, 72, 73, 74, 75, 76, 77, 78, 79, 81, 84, 118, 121, 124, 125, 128, 129, 132, 133, 134, 137, 138, 139, 140, 141, 142, 143, 146, 147, 150, 151, 153, 158, 159, 173, 174, 177, 178, 181, 235, 272, 273, 274, 275, 278, 279, 280, 281, 283, 284, 286, 287, 288, 289, 291, 293, 296, 297, 299, 301, 305, 307, 308, 311, 312, 314, 317, 319, 320, 322, 326, 332, 335, 336, 339, 340, 341, 342, 344, 345, 351, 352, 353, 355], "summary": {"covered_lines": 111, "num_statements": 140, "percent_covered": 75.55555555555556, "percent_covered_display": "76", "missing_lines": 29, "excluded_lines": 1, "percent_statements_covered": 79.28571428571429, "percent_statements_covered_display": "79", "num_branches": 40, "num_partial_branches": 7, "covered_branches": 25, "missing_branches": 15, "percent_branches_covered": 62.5, "percent_branches_covered_display": "62"}, "missing_lines": [152, 154, 160, 166, 167, 168, 171, 203, 210, 211, 213, 214, 215, 216, 217, 218, 220, 221, 223, 224, 225, 226, 227, 230, 232, 285, 321, 343, 354], "excluded_lines": [241], "start_line": 1, "executed_branches": [[70, 72], [70, 81], [74, 75], [74, 81], [150, 151], [150, 177], [151, 153], [153, 158], [159, 173], [279, 280], [279, 311], [284, 286], [296, 297], [296, 307], [307, 279], [307, 308], [311, 312], [311, 314], [319, 320], [319, 322], [320, 319], [341, 342], [341, 345], [342, 344], [353, 355]], "missing_branches": [[151, 152], [153, 154], [159, 160], [166, 150], [166, 167], [213, 214], [213, 232], [216, 217], [216, 220], [224, 225], [224, 226], [284, 285], [320, 321], [342, 343], [353, 354]]}}}, "src\\supervision\\dataset\\formats\\yolo.py": {"executed_lines": [1, 3, 4, 5, 6, 8, 9, 10, 12, 13, 14, 15, 16, 28, 29, 30, 41, 42, 47, 48, 51, 54, 66, 67, 70, 90, 91, 96, 97, 98, 100, 102, 104, 105, 106, 107, 108, 111, 112, 113, 114, 115, 120, 121, 123, 124, 125, 126, 133, 134, 135, 138, 144, 145, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 165, 166, 167, 168, 170, 171, 172, 173, 174, 176, 177, 179, 183, 184, 187, 217, 218, 224, 242, 243, 245, 246, 247, 248, 249, 250, 253, 254, 255, 256, 257, 263, 264, 270, 271, 274, 280, 281, 282, 283, 284, 285, 286, 287, 288, 290, 291, 292, 293, 296, 347, 352, 360, 369, 370, 371, 373, 374, 378, 380, 381, 382, 389, 395, 396, 398, 399, 405, 406, 407, 413, 415, 418, 419, 422, 456, 457, 458, 459, 460, 463, 471, 474, 475, 476, 477], "summary": {"covered_lines": 157, "num_statements": 165, "percent_covered": 92.5764192139738, "percent_covered_display": "93", "missing_lines": 8, "excluded_lines": 2, "percent_statements_covered": 95.15151515151516, "percent_statements_covered_display": "95", "num_branches": 64, "num_partial_branches": 9, "covered_branches": 55, "missing_branches": 9, "percent_branches_covered": 85.9375, "percent_branches_covered_display": "86"}, "missing_lines": [92, 103, 109, 127, 258, 361, 372, 383], "excluded_lines": [24, 25], "executed_branches": [[91, 96], [97, 98], [97, 125], [102, 104], [104, 105], [104, 106], [106, 107], [112, 113], [112, 120], [120, 121], [120, 123], [125, 126], [144, 145], [144, 147], [149, 150], [149, 165], [152, 153], [152, 157], [155, 149], [155, 156], [157, 158], [160, 161], [160, 162], [162, 149], [162, 163], [170, 171], [170, 176], [176, 177], [176, 179], [217, 218], [217, 224], [245, 246], [245, 271], [248, 249], [248, 253], [257, 263], [281, 282], [281, 290], [347, 352], [347, 360], [360, 369], [370, 371], [370, 419], [371, 373], [373, 374], [373, 378], [380, 381], [380, 398], [382, 389], [398, 399], [398, 415], [405, 370], [405, 406], [457, -422], [457, 458]], "missing_branches": [[91, 92], [102, 103], [106, 109], [125, 127], [157, 149], [257, 258], [360, 361], [371, 372], [382, 383]], "functions": {"_parse_box": {"executed_lines": [29, 30], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 28, "executed_branches": [], "missing_branches": []}, "_box_to_polygon": {"executed_lines": [42], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 41, "executed_branches": [], "missing_branches": []}, "_parse_polygon": {"executed_lines": [48], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 47, "executed_branches": [], "missing_branches": []}, "_polygons_to_masks": {"executed_lines": [54], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 51, "executed_branches": [], "missing_branches": []}, "_with_seg_mask": {"executed_lines": [67], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 66, "executed_branches": [], "missing_branches": []}, "_extract_class_names": {"executed_lines": [90, 91, 96, 97, 98, 100, 111, 112, 113, 114, 115, 120, 121, 123, 124, 125, 126], "summary": {"covered_lines": 17, "num_statements": 19, "percent_covered": 86.20689655172414, "percent_covered_display": "86", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 89.47368421052632, "percent_statements_covered_display": "89", "num_branches": 10, "num_partial_branches": 2, "covered_branches": 8, "missing_branches": 2, "percent_branches_covered": 80.0, "percent_branches_covered_display": "80"}, "missing_lines": [92, 127], "excluded_lines": [], "start_line": 70, "executed_branches": [[91, 96], [97, 98], [97, 125], [112, 113], [112, 120], [120, 121], [120, 123], [125, 126]], "missing_branches": [[91, 92], [125, 127]]}, "_extract_class_names._is_int_like": {"executed_lines": [102, 104, 105, 106, 107, 108], "summary": {"covered_lines": 6, "num_statements": 8, "percent_covered": 71.42857142857143, "percent_covered_display": "71", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 75.0, "percent_statements_covered_display": "75", "num_branches": 6, "num_partial_branches": 2, "covered_branches": 4, "missing_branches": 2, "percent_branches_covered": 66.66666666666667, "percent_branches_covered_display": "67"}, "missing_lines": [103, 109], "excluded_lines": [], "start_line": 100, "executed_branches": [[102, 104], [104, 105], [104, 106], [106, 107]], "missing_branches": [[102, 103], [106, 109]]}, "_image_name_to_annotation_name": {"executed_lines": [134, 135], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 133, "executed_branches": [], "missing_branches": []}, "yolo_annotations_to_detections": {"executed_lines": [144, 145, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 165, 166, 167, 168, 170, 171, 172, 173, 174, 176, 177, 179, 183, 184], "summary": {"covered_lines": 33, "num_statements": 33, "percent_covered": 98.03921568627452, "percent_covered_display": "98", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 18, "num_partial_branches": 1, "covered_branches": 17, "missing_branches": 1, "percent_branches_covered": 94.44444444444444, "percent_branches_covered_display": "94"}, "missing_lines": [], "excluded_lines": [], "start_line": 138, "executed_branches": [[144, 145], [144, 147], [149, 150], [149, 165], [152, 153], [152, 157], [155, 149], [155, 156], [157, 158], [160, 161], [160, 162], [162, 149], [162, 163], [170, 171], [170, 176], [176, 177], [176, 179]], "missing_branches": [[157, 149]]}, "load_yolo_annotations": {"executed_lines": [217, 218, 224, 242, 243, 245, 246, 247, 248, 249, 250, 253, 254, 255, 256, 257, 263, 264, 270, 271], "summary": {"covered_lines": 20, "num_statements": 21, "percent_covered": 93.10344827586206, "percent_covered_display": "93", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 95.23809523809524, "percent_statements_covered_display": "95", "num_branches": 8, "num_partial_branches": 1, "covered_branches": 7, "missing_branches": 1, "percent_branches_covered": 87.5, "percent_branches_covered_display": "88"}, "missing_lines": [258], "excluded_lines": [], "start_line": 187, "executed_branches": [[217, 218], [217, 224], [245, 246], [245, 271], [248, 249], [248, 253], [257, 263]], "missing_branches": [[257, 258]]}, "object_to_yolo": {"executed_lines": [280, 281, 282, 283, 284, 285, 286, 287, 288, 290, 291, 292, 293], "summary": {"covered_lines": 13, "num_statements": 13, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 274, "executed_branches": [[281, 282], [281, 290]], "missing_branches": []}, "detections_to_yolo_annotations": {"executed_lines": [347, 352, 360, 369, 370, 371, 373, 374, 378, 380, 381, 382, 389, 395, 396, 398, 399, 405, 406, 407, 413, 415, 418, 419], "summary": {"covered_lines": 24, "num_statements": 27, "percent_covered": 86.66666666666667, "percent_covered_display": "87", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 88.88888888888889, "percent_statements_covered_display": "89", "num_branches": 18, "num_partial_branches": 3, "covered_branches": 15, "missing_branches": 3, "percent_branches_covered": 83.33333333333333, "percent_branches_covered_display": "83"}, "missing_lines": [361, 372, 383], "excluded_lines": [], "start_line": 296, "executed_branches": [[347, 352], [347, 360], [360, 369], [370, 371], [370, 419], [371, 373], [373, 374], [373, 378], [380, 381], [380, 398], [382, 389], [398, 399], [398, 415], [405, 370], [405, 406]], "missing_branches": [[360, 361], [371, 372], [382, 383]]}, "save_yolo_annotations": {"executed_lines": [456, 457, 458, 459, 460, 463, 471], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 422, "executed_branches": [[457, -422], [457, 458]], "missing_branches": []}, "save_data_yaml": {"executed_lines": [475, 476, 477], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 474, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 5, 6, 8, 9, 10, 12, 13, 14, 15, 16, 28, 41, 47, 51, 66, 70, 133, 138, 187, 274, 296, 422, 474], "summary": {"covered_lines": 26, "num_statements": 26, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 2, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [24, 25], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 3, 4, 5, 6, 8, 9, 10, 12, 13, 14, 15, 16, 28, 29, 30, 41, 42, 47, 48, 51, 54, 66, 67, 70, 90, 91, 96, 97, 98, 100, 102, 104, 105, 106, 107, 108, 111, 112, 113, 114, 115, 120, 121, 123, 124, 125, 126, 133, 134, 135, 138, 144, 145, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 165, 166, 167, 168, 170, 171, 172, 173, 174, 176, 177, 179, 183, 184, 187, 217, 218, 224, 242, 243, 245, 246, 247, 248, 249, 250, 253, 254, 255, 256, 257, 263, 264, 270, 271, 274, 280, 281, 282, 283, 284, 285, 286, 287, 288, 290, 291, 292, 293, 296, 347, 352, 360, 369, 370, 371, 373, 374, 378, 380, 381, 382, 389, 395, 396, 398, 399, 405, 406, 407, 413, 415, 418, 419, 422, 456, 457, 458, 459, 460, 463, 471, 474, 475, 476, 477], "summary": {"covered_lines": 157, "num_statements": 165, "percent_covered": 92.5764192139738, "percent_covered_display": "93", "missing_lines": 8, "excluded_lines": 2, "percent_statements_covered": 95.15151515151516, "percent_statements_covered_display": "95", "num_branches": 64, "num_partial_branches": 9, "covered_branches": 55, "missing_branches": 9, "percent_branches_covered": 85.9375, "percent_branches_covered_display": "86"}, "missing_lines": [92, 103, 109, 127, 258, 361, 372, 383], "excluded_lines": [24, 25], "start_line": 1, "executed_branches": [[91, 96], [97, 98], [97, 125], [102, 104], [104, 105], [104, 106], [106, 107], [112, 113], [112, 120], [120, 121], [120, 123], [125, 126], [144, 145], [144, 147], [149, 150], [149, 165], [152, 153], [152, 157], [155, 149], [155, 156], [157, 158], [160, 161], [160, 162], [162, 149], [162, 163], [170, 171], [170, 176], [176, 177], [176, 179], [217, 218], [217, 224], [245, 246], [245, 271], [248, 249], [248, 253], [257, 263], [281, 282], [281, 290], [347, 352], [347, 360], [360, 369], [370, 371], [370, 419], [371, 373], [373, 374], [373, 378], [380, 381], [380, 398], [382, 389], [398, 399], [398, 415], [405, 370], [405, 406], [457, -422], [457, 458]], "missing_branches": [[91, 92], [102, 103], [106, 109], [125, 127], [157, 149], [257, 258], [360, 361], [371, 372], [382, 383]]}}}, "src\\supervision\\dataset\\utils.py": {"executed_lines": [1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13, 15, 16, 17, 20, 23, 29, 30, 37, 38, 49, 52, 58, 59, 60, 61, 63, 64, 65, 69, 74, 80, 81, 83, 84, 85, 87, 90, 94, 96, 97, 98, 102, 103, 105, 108, 111, 113, 114, 118, 120, 121, 125, 128, 129, 130, 131, 132, 136, 139, 157, 158, 160, 161, 163, 164], "summary": {"covered_lines": 66, "num_statements": 71, "percent_covered": 92.63157894736842, "percent_covered_display": "93", "missing_lines": 5, "excluded_lines": 2, "percent_statements_covered": 92.95774647887323, "percent_statements_covered_display": "93", "num_branches": 24, "num_partial_branches": 2, "covered_branches": 22, "missing_branches": 2, "percent_branches_covered": 91.66666666666667, "percent_branches_covered_display": "92"}, "missing_lines": [34, 43, 112, 133, 134], "excluded_lines": [46, 47], "executed_branches": [[64, 65], [64, 69], [83, 84], [83, 87], [84, 83], [84, 85], [96, 97], [96, 105], [97, 98], [97, 102], [111, 113], [113, 114], [113, 118], [120, 121], [120, 125], [130, -128], [130, 131], [132, 136], [157, 158], [157, 160], [160, 161], [160, 163]], "missing_branches": [[111, 112], [132, 133]], "functions": {"mask_to_rle": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [34], "excluded_lines": [], "start_line": 30, "executed_branches": [], "missing_branches": []}, "rle_to_mask": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [43], "excluded_lines": [], "start_line": 38, "executed_branches": [], "missing_branches": []}, "approximate_mask_with_polygons": {"executed_lines": [58, 59, 60, 61, 63, 64, 65, 69, 74], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 52, "executed_branches": [[64, 65], [64, 69]], "missing_branches": []}, "merge_class_lists": {"executed_lines": [81, 83, 84, 85, 87], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 80, "executed_branches": [[83, 84], [83, 87], [84, 83], [84, 85]], "missing_branches": []}, "build_class_index_mapping": {"executed_lines": [94, 96, 97, 98, 102, 103, 105], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 90, "executed_branches": [[96, 97], [96, 105], [97, 98], [97, 102]], "missing_branches": []}, "map_detections_class_id": {"executed_lines": [111, 113, 114, 118, 120, 121, 125], "summary": {"covered_lines": 7, "num_statements": 8, "percent_covered": 85.71428571428571, "percent_covered_display": "86", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 87.5, "percent_statements_covered_display": "88", "num_branches": 6, "num_partial_branches": 1, "covered_branches": 5, "missing_branches": 1, "percent_branches_covered": 83.33333333333333, "percent_branches_covered_display": "83"}, "missing_lines": [112], "excluded_lines": [], "start_line": 108, "executed_branches": [[111, 113], [113, 114], [113, 118], [120, 121], [120, 125]], "missing_branches": [[111, 112]]}, "save_dataset_images": {"executed_lines": [129, 130, 131, 132, 136], "summary": {"covered_lines": 5, "num_statements": 7, "percent_covered": 72.72727272727273, "percent_covered_display": "73", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 71.42857142857143, "percent_statements_covered_display": "71", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [133, 134], "excluded_lines": [], "start_line": 128, "executed_branches": [[130, -128], [130, 131], [132, 136]], "missing_branches": [[132, 133]]}, "train_test_split": {"executed_lines": [157, 158, 160, 161, 163, 164], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 139, "executed_branches": [[157, 158], [157, 160], [160, 161], [160, 163]], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13, 15, 16, 17, 20, 23, 29, 30, 37, 38, 49, 52, 80, 90, 108, 128, 139], "summary": {"covered_lines": 27, "num_statements": 27, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 2, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [46, 47], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13, 15, 16, 17, 20, 23, 29, 30, 37, 38, 49, 52, 58, 59, 60, 61, 63, 64, 65, 69, 74, 80, 81, 83, 84, 85, 87, 90, 94, 96, 97, 98, 102, 103, 105, 108, 111, 113, 114, 118, 120, 121, 125, 128, 129, 130, 131, 132, 136, 139, 157, 158, 160, 161, 163, 164], "summary": {"covered_lines": 66, "num_statements": 71, "percent_covered": 92.63157894736842, "percent_covered_display": "93", "missing_lines": 5, "excluded_lines": 2, "percent_statements_covered": 92.95774647887323, "percent_statements_covered_display": "93", "num_branches": 24, "num_partial_branches": 2, "covered_branches": 22, "missing_branches": 2, "percent_branches_covered": 91.66666666666667, "percent_branches_covered_display": "92"}, "missing_lines": [34, 43, 112, 133, 134], "excluded_lines": [46, 47], "start_line": 1, "executed_branches": [[64, 65], [64, 69], [83, 84], [83, 87], [84, 83], [84, 85], [96, 97], [96, 105], [97, 98], [97, 102], [111, 113], [113, 114], [113, 118], [120, 121], [120, 125], [130, -128], [130, 131], [132, 136], [157, 158], [157, 160], [160, 161], [160, 163]], "missing_branches": [[111, 112], [132, 133]]}}}, "src\\supervision\\detection\\__init__.py": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "src\\supervision\\detection\\compact_mask.py": {"executed_lines": [12, 14, 15, 16, 18, 19, 21, 27, 46, 49, 88, 89, 90, 92, 93, 94, 95, 96, 97, 98, 99, 100, 103, 111, 112, 113, 114, 115, 116, 117, 118, 121, 122, 125, 128, 161, 162, 166, 167, 168, 169, 170, 171, 175, 178, 179, 180, 181, 182, 183, 184, 185, 186, 188, 189, 190, 193, 228, 229, 230, 231, 233, 235, 236, 237, 238, 241, 242, 244, 246, 249, 305, 307, 309, 310, 311, 312, 314, 317, 320, 323, 324, 325, 326, 327, 328, 330, 336, 338, 341, 369, 372, 376, 377, 380, 381, 386, 389, 457, 459, 466, 467, 468, 469, 475, 476, 511, 512, 514, 515, 522, 523, 524, 526, 527, 528, 529, 530, 531, 535, 536, 537, 539, 541, 542, 543, 544, 545, 547, 548, 549, 555, 574, 575, 576, 577, 578, 582, 583, 584, 585, 587, 612, 613, 614, 620, 638, 640, 645, 646, 664, 665, 667, 668, 687, 689, 690, 713, 716, 717, 718, 719, 720, 722, 723, 741, 743, 744, 764, 766, 791, 792, 795, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 840, 841, 849, 850, 851, 854, 856, 858, 859, 860, 861, 863, 886, 887, 888, 889, 891, 913, 914, 915, 916, 923, 924, 955, 956, 958, 959, 960, 961, 969, 970, 971, 975, 978, 982, 984, 1018, 1019, 1020, 1027, 1028, 1029, 1031, 1032, 1033, 1034, 1036, 1037, 1039, 1041, 1042, 1043, 1044, 1046, 1047, 1048, 1049, 1051, 1052, 1053, 1054, 1056, 1067, 1102, 1103, 1106, 1107, 1119, 1122, 1123, 1124, 1125, 1127, 1131, 1133, 1141, 1142, 1143, 1145, 1146, 1147, 1148, 1149, 1151, 1152, 1153, 1159, 1160, 1162, 1163, 1164, 1165, 1167, 1168, 1169, 1170, 1171, 1172, 1173, 1175, 1176, 1177, 1178, 1179, 1181, 1192, 1233, 1235, 1236, 1237, 1242, 1243, 1251, 1252, 1259, 1260, 1261, 1264, 1265, 1266, 1267, 1269, 1270, 1271, 1272, 1273, 1276, 1281, 1282, 1284, 1295, 1296, 1297, 1298, 1302, 1304, 1305, 1306], "summary": {"covered_lines": 322, "num_statements": 341, "percent_covered": 92.27373068432671, "percent_covered_display": "92", "missing_lines": 19, "excluded_lines": 0, "percent_statements_covered": 94.42815249266862, "percent_statements_covered_display": "94", "num_branches": 112, "num_partial_branches": 12, "covered_branches": 96, "missing_branches": 16, "percent_branches_covered": 85.71428571428571, "percent_branches_covered_display": "86"}, "missing_lines": [104, 105, 106, 107, 108, 109, 110, 123, 163, 172, 308, 373, 642, 643, 714, 793, 917, 1104, 1108], "excluded_lines": [], "executed_branches": [[92, 93], [95, 96], [95, 117], [98, 99], [98, 103], [99, 100], [99, 111], [103, 111], [114, 95], [114, 115], [117, 92], [117, 118], [121, 122], [121, 125], [122, 121], [162, 166], [168, 169], [168, 171], [171, 175], [188, 189], [188, 190], [229, 230], [229, 246], [230, 231], [230, 233], [235, 236], [235, 238], [238, 241], [238, 244], [307, 309], [309, 310], [309, 311], [311, 312], [311, 314], [325, 326], [325, 330], [326, 327], [326, 328], [372, 376], [376, 377], [376, 380], [514, 515], [514, 522], [526, 527], [526, 547], [535, 536], [535, 539], [577, 578], [577, 585], [713, 716], [791, 792], [827, 828], [827, 840], [840, 841], [840, 849], [849, 850], [849, 851], [851, 854], [851, 856], [887, 888], [887, 889], [913, 914], [913, 915], [915, 916], [955, 956], [955, 958], [959, 960], [959, 969], [960, 959], [960, 961], [970, 971], [970, 975], [1019, 1020], [1019, 1027], [1031, 1032], [1031, 1056], [1039, 1041], [1039, 1046], [1103, 1106], [1107, 1119], [1131, 1133], [1131, 1141], [1145, 1146], [1145, 1181], [1151, 1152], [1151, 1162], [1167, 1168], [1167, 1175], [1236, 1237], [1236, 1242], [1242, 1243], [1242, 1251], [1251, 1252], [1251, 1259], [1296, 1297], [1296, 1302]], "missing_branches": [[92, 121], [103, 104], [107, 108], [107, 110], [122, 123], [162, 163], [171, 172], [307, 308], [372, 373], [642, -640], [642, 643], [713, 714], [791, 793], [915, 917], [1103, 1104], [1107, 1108]], "functions": {"_rle_area": {"executed_lines": [46], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 27, "executed_branches": [], "missing_branches": []}, "_rle_split_cols": {"executed_lines": [88, 89, 90, 92, 93, 94, 95, 96, 97, 98, 99, 100, 103, 111, 112, 113, 114, 115, 116, 117, 118, 121, 122, 125], "summary": {"covered_lines": 24, "num_statements": 32, "percent_covered": 75.0, "percent_covered_display": "75", "missing_lines": 8, "excluded_lines": 0, "percent_statements_covered": 75.0, "percent_statements_covered_display": "75", "num_branches": 20, "num_partial_branches": 3, "covered_branches": 15, "missing_branches": 5, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [104, 105, 106, 107, 108, 109, 110, 123], "excluded_lines": [], "start_line": 49, "executed_branches": [[92, 93], [95, 96], [95, 117], [98, 99], [98, 103], [99, 100], [99, 111], [103, 111], [114, 95], [114, 115], [117, 92], [117, 118], [121, 122], [121, 125], [122, 121]], "missing_branches": [[92, 121], [103, 104], [107, 108], [107, 110], [122, 123]]}, "_rle_scale_col": {"executed_lines": [161, 162, 166, 167, 168, 169, 170, 171, 175, 178, 179, 180, 181, 182, 183, 184, 185, 186, 188, 189, 190], "summary": {"covered_lines": 21, "num_statements": 23, "percent_covered": 87.09677419354838, "percent_covered_display": "87", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 91.30434782608695, "percent_statements_covered_display": "91", "num_branches": 8, "num_partial_branches": 2, "covered_branches": 6, "missing_branches": 2, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [163, 172], "excluded_lines": [], "start_line": 128, "executed_branches": [[162, 166], [168, 169], [168, 171], [171, 175], [188, 189], [188, 190]], "missing_branches": [[162, 163], [171, 172]]}, "_rle_join_cols": {"executed_lines": [228, 229, 230, 231, 233, 235, 236, 237, 238, 241, 242, 244, 246], "summary": {"covered_lines": 13, "num_statements": 13, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 8, "num_partial_branches": 0, "covered_branches": 8, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 193, "executed_branches": [[229, 230], [229, 246], [230, 231], [230, 233], [235, 236], [235, 238], [238, 241], [238, 244]], "missing_branches": []}, "_rle_resize": {"executed_lines": [305, 307, 309, 310, 311, 312, 314, 317, 320, 323, 324, 325, 326, 327, 328, 330], "summary": {"covered_lines": 16, "num_statements": 17, "percent_covered": 92.5925925925926, "percent_covered_display": "93", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 94.11764705882354, "percent_statements_covered_display": "94", "num_branches": 10, "num_partial_branches": 1, "covered_branches": 9, "missing_branches": 1, "percent_branches_covered": 90.0, "percent_branches_covered_display": "90"}, "missing_lines": [308], "excluded_lines": [], "start_line": 249, "executed_branches": [[307, 309], [309, 310], [309, 311], [311, 312], [311, 314], [325, 326], [325, 330], [326, 327], [326, 328]], "missing_branches": [[307, 308]]}, "_resize_crop": {"executed_lines": [369, 372, 376, 377, 380, 381, 386], "summary": {"covered_lines": 7, "num_statements": 8, "percent_covered": 83.33333333333333, "percent_covered_display": "83", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 87.5, "percent_statements_covered_display": "88", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [373], "excluded_lines": [], "start_line": 341, "executed_branches": [[372, 376], [376, 377], [376, 380]], "missing_branches": [[372, 373]]}, "CompactMask.__init__": {"executed_lines": [466, 467, 468, 469], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 459, "executed_branches": [], "missing_branches": []}, "CompactMask.from_dense": {"executed_lines": [511, 512, 514, 515, 522, 523, 524, 526, 527, 528, 529, 530, 531, 535, 536, 537, 539, 541, 542, 543, 544, 545, 547, 548, 549], "summary": {"covered_lines": 25, "num_statements": 25, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 6, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 476, "executed_branches": [[514, 515], [514, 522], [526, 527], [526, 547], [535, 536], [535, 539]], "missing_branches": []}, "CompactMask.to_dense": {"executed_lines": [574, 575, 576, 577, 578, 582, 583, 584, 585], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 555, "executed_branches": [[577, 578], [577, 585]], "missing_branches": []}, "CompactMask.crop": {"executed_lines": [612, 613, 614], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 587, "executed_branches": [], "missing_branches": []}, "CompactMask.__len__": {"executed_lines": [638], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 620, "executed_branches": [], "missing_branches": []}, "CompactMask.__iter__": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 2, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 2, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [642, 643], "excluded_lines": [], "start_line": 640, "executed_branches": [], "missing_branches": [[642, -640], [642, 643]]}, "CompactMask.shape": {"executed_lines": [664, 665], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 646, "executed_branches": [], "missing_branches": []}, "CompactMask.offsets": {"executed_lines": [687], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 668, "executed_branches": [], "missing_branches": []}, "CompactMask.bbox_xyxy": {"executed_lines": [713, 716, 717, 718, 719, 720], "summary": {"covered_lines": 6, "num_statements": 7, "percent_covered": 77.77777777777777, "percent_covered_display": "78", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 85.71428571428571, "percent_statements_covered_display": "86", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [714], "excluded_lines": [], "start_line": 690, "executed_branches": [[713, 716]], "missing_branches": [[713, 714]]}, "CompactMask.dtype": {"executed_lines": [741], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 723, "executed_branches": [], "missing_branches": []}, "CompactMask.area": {"executed_lines": [764], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 744, "executed_branches": [], "missing_branches": []}, "CompactMask.sum": {"executed_lines": [791, 792], "summary": {"covered_lines": 2, "num_statements": 3, "percent_covered": 60.0, "percent_covered_display": "60", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 66.66666666666667, "percent_statements_covered_display": "67", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [793], "excluded_lines": [], "start_line": 766, "executed_branches": [[791, 792]], "missing_branches": [[791, 793]]}, "CompactMask.__getitem__": {"executed_lines": [827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 840, 841, 849, 850, 851, 854, 856, 858, 859, 860, 861], "summary": {"covered_lines": 22, "num_statements": 22, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 8, "num_partial_branches": 0, "covered_branches": 8, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 795, "executed_branches": [[827, 828], [827, 840], [840, 841], [840, 849], [849, 850], [849, 851], [851, 854], [851, 856]], "missing_branches": []}, "CompactMask.__array__": {"executed_lines": [886, 887, 888, 889], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 863, "executed_branches": [[887, 888], [887, 889]], "missing_branches": []}, "CompactMask.__eq__": {"executed_lines": [913, 914, 915, 916], "summary": {"covered_lines": 4, "num_statements": 5, "percent_covered": 77.77777777777777, "percent_covered_display": "78", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 80.0, "percent_statements_covered_display": "80", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [917], "excluded_lines": [], "start_line": 891, "executed_branches": [[913, 914], [913, 915], [915, 916]], "missing_branches": [[915, 917]]}, "CompactMask.merge": {"executed_lines": [955, 956, 958, 959, 960, 961, 969, 970, 971, 975, 978, 982], "summary": {"covered_lines": 12, "num_statements": 12, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 8, "num_partial_branches": 0, "covered_branches": 8, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 924, "executed_branches": [[955, 956], [955, 958], [959, 960], [959, 969], [960, 959], [960, 961], [970, 971], [970, 975]], "missing_branches": []}, "CompactMask.repack": {"executed_lines": [1018, 1019, 1020, 1027, 1028, 1029, 1031, 1032, 1033, 1034, 1036, 1037, 1039, 1041, 1042, 1043, 1044, 1046, 1047, 1048, 1049, 1051, 1052, 1053, 1054, 1056], "summary": {"covered_lines": 26, "num_statements": 26, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 6, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 984, "executed_branches": [[1019, 1020], [1019, 1027], [1031, 1032], [1031, 1056], [1039, 1041], [1039, 1046]], "missing_branches": []}, "CompactMask.with_offset": {"executed_lines": [1102, 1103, 1106, 1107, 1119, 1122, 1123, 1124, 1125, 1127, 1131, 1133, 1141, 1142, 1143, 1145, 1146, 1147, 1148, 1149, 1151, 1152, 1153, 1159, 1160, 1162, 1163, 1164, 1165, 1167, 1168, 1169, 1170, 1171, 1172, 1173, 1175, 1176, 1177, 1178, 1179, 1181], "summary": {"covered_lines": 42, "num_statements": 44, "percent_covered": 92.85714285714286, "percent_covered_display": "93", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 95.45454545454545, "percent_statements_covered_display": "95", "num_branches": 12, "num_partial_branches": 2, "covered_branches": 10, "missing_branches": 2, "percent_branches_covered": 83.33333333333333, "percent_branches_covered_display": "83"}, "missing_lines": [1104, 1108], "excluded_lines": [], "start_line": 1067, "executed_branches": [[1103, 1106], [1107, 1119], [1131, 1133], [1131, 1141], [1145, 1146], [1145, 1181], [1151, 1152], [1151, 1162], [1167, 1168], [1167, 1175]], "missing_branches": [[1103, 1104], [1107, 1108]]}, "CompactMask.resize": {"executed_lines": [1233, 1235, 1236, 1237, 1242, 1243, 1251, 1252, 1259, 1260, 1261, 1264, 1265, 1266, 1267, 1269, 1270, 1271, 1272, 1273, 1276, 1281, 1282, 1284, 1295, 1296, 1297, 1298, 1302, 1304, 1305, 1306], "summary": {"covered_lines": 32, "num_statements": 32, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 8, "num_partial_branches": 0, "covered_branches": 8, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1192, "executed_branches": [[1236, 1237], [1236, 1242], [1242, 1243], [1242, 1251], [1251, 1252], [1251, 1259], [1296, 1297], [1296, 1302]], "missing_branches": []}, "": {"executed_lines": [12, 14, 15, 16, 18, 19, 21, 27, 49, 128, 193, 249, 336, 338, 341, 389, 457, 459, 475, 476, 555, 587, 620, 640, 645, 646, 667, 668, 689, 690, 722, 723, 743, 744, 766, 795, 863, 891, 923, 924, 984, 1067, 1192], "summary": {"covered_lines": 43, "num_statements": 43, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"CompactMask": {"executed_lines": [466, 467, 468, 469, 511, 512, 514, 515, 522, 523, 524, 526, 527, 528, 529, 530, 531, 535, 536, 537, 539, 541, 542, 543, 544, 545, 547, 548, 549, 574, 575, 576, 577, 578, 582, 583, 584, 585, 612, 613, 614, 638, 664, 665, 687, 713, 716, 717, 718, 719, 720, 741, 764, 791, 792, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 840, 841, 849, 850, 851, 854, 856, 858, 859, 860, 861, 886, 887, 888, 889, 913, 914, 915, 916, 955, 956, 958, 959, 960, 961, 969, 970, 971, 975, 978, 982, 1018, 1019, 1020, 1027, 1028, 1029, 1031, 1032, 1033, 1034, 1036, 1037, 1039, 1041, 1042, 1043, 1044, 1046, 1047, 1048, 1049, 1051, 1052, 1053, 1054, 1056, 1102, 1103, 1106, 1107, 1119, 1122, 1123, 1124, 1125, 1127, 1131, 1133, 1141, 1142, 1143, 1145, 1146, 1147, 1148, 1149, 1151, 1152, 1153, 1159, 1160, 1162, 1163, 1164, 1165, 1167, 1168, 1169, 1170, 1171, 1172, 1173, 1175, 1176, 1177, 1178, 1179, 1181, 1233, 1235, 1236, 1237, 1242, 1243, 1251, 1252, 1259, 1260, 1261, 1264, 1265, 1266, 1267, 1269, 1270, 1271, 1272, 1273, 1276, 1281, 1282, 1284, 1295, 1296, 1297, 1298, 1302, 1304, 1305, 1306], "summary": {"covered_lines": 197, "num_statements": 204, "percent_covered": 94.73684210526316, "percent_covered_display": "95", "missing_lines": 7, "excluded_lines": 0, "percent_statements_covered": 96.56862745098039, "percent_statements_covered_display": "97", "num_branches": 62, "num_partial_branches": 5, "covered_branches": 55, "missing_branches": 7, "percent_branches_covered": 88.70967741935483, "percent_branches_covered_display": "89"}, "missing_lines": [642, 643, 714, 793, 917, 1104, 1108], "excluded_lines": [], "start_line": 389, "executed_branches": [[514, 515], [514, 522], [526, 527], [526, 547], [535, 536], [535, 539], [577, 578], [577, 585], [713, 716], [791, 792], [827, 828], [827, 840], [840, 841], [840, 849], [849, 850], [849, 851], [851, 854], [851, 856], [887, 888], [887, 889], [913, 914], [913, 915], [915, 916], [955, 956], [955, 958], [959, 960], [959, 969], [960, 959], [960, 961], [970, 971], [970, 975], [1019, 1020], [1019, 1027], [1031, 1032], [1031, 1056], [1039, 1041], [1039, 1046], [1103, 1106], [1107, 1119], [1131, 1133], [1131, 1141], [1145, 1146], [1145, 1181], [1151, 1152], [1151, 1162], [1167, 1168], [1167, 1175], [1236, 1237], [1236, 1242], [1242, 1243], [1242, 1251], [1251, 1252], [1251, 1259], [1296, 1297], [1296, 1302]], "missing_branches": [[642, -640], [642, 643], [713, 714], [791, 793], [915, 917], [1103, 1104], [1107, 1108]]}, "": {"executed_lines": [12, 14, 15, 16, 18, 19, 21, 27, 46, 49, 88, 89, 90, 92, 93, 94, 95, 96, 97, 98, 99, 100, 103, 111, 112, 113, 114, 115, 116, 117, 118, 121, 122, 125, 128, 161, 162, 166, 167, 168, 169, 170, 171, 175, 178, 179, 180, 181, 182, 183, 184, 185, 186, 188, 189, 190, 193, 228, 229, 230, 231, 233, 235, 236, 237, 238, 241, 242, 244, 246, 249, 305, 307, 309, 310, 311, 312, 314, 317, 320, 323, 324, 325, 326, 327, 328, 330, 336, 338, 341, 369, 372, 376, 377, 380, 381, 386, 389, 457, 459, 475, 476, 555, 587, 620, 640, 645, 646, 667, 668, 689, 690, 722, 723, 743, 744, 766, 795, 863, 891, 923, 924, 984, 1067, 1192], "summary": {"covered_lines": 125, "num_statements": 137, "percent_covered": 88.77005347593582, "percent_covered_display": "89", "missing_lines": 12, "excluded_lines": 0, "percent_statements_covered": 91.24087591240875, "percent_statements_covered_display": "91", "num_branches": 50, "num_partial_branches": 7, "covered_branches": 41, "missing_branches": 9, "percent_branches_covered": 82.0, "percent_branches_covered_display": "82"}, "missing_lines": [104, 105, 106, 107, 108, 109, 110, 123, 163, 172, 308, 373], "excluded_lines": [], "start_line": 1, "executed_branches": [[92, 93], [95, 96], [95, 117], [98, 99], [98, 103], [99, 100], [99, 111], [103, 111], [114, 95], [114, 115], [117, 92], [117, 118], [121, 122], [121, 125], [122, 121], [162, 166], [168, 169], [168, 171], [171, 175], [188, 189], [188, 190], [229, 230], [229, 246], [230, 231], [230, 233], [235, 236], [235, 238], [238, 241], [238, 244], [307, 309], [309, 310], [309, 311], [311, 312], [311, 314], [325, 326], [325, 330], [326, 327], [326, 328], [372, 376], [376, 377], [376, 380]], "missing_branches": [[92, 121], [103, 104], [107, 108], [107, 110], [122, 123], [162, 163], [171, 172], [307, 308], [372, 373]]}}}, "src\\supervision\\detection\\core.py": {"executed_lines": [1, 3, 4, 5, 6, 8, 9, 10, 12, 16, 17, 22, 23, 28, 37, 48, 49, 62, 63, 64, 67, 68, 156, 157, 158, 159, 160, 161, 162, 164, 165, 174, 178, 180, 196, 197, 206, 207, 209, 221, 222, 245, 247, 253, 254, 285, 304, 305, 306, 312, 316, 317, 318, 335, 336, 363, 364, 366, 372, 373, 417, 418, 453, 454, 491, 492, 572, 573, 619, 620, 653, 654, 655, 657, 661, 662, 663, 664, 666, 675, 676, 704, 708, 709, 711, 712, 714, 715, 717, 718, 769, 771, 772, 773, 775, 776, 777, 778, 791, 792, 793, 794, 799, 800, 801, 802, 804, 805, 813, 816, 817, 818, 819, 822, 823, 825, 826, 827, 829, 830, 832, 833, 835, 842, 843, 929, 930, 971, 972, 1460, 1461, 1883, 1885, 1893, 1904, 1913, 1914, 1915, 1916, 1917, 1960, 1961, 2006, 2007, 2064, 2065, 2080, 2086, 2108, 2110, 2111, 2163, 2167, 2168, 2170, 2171, 2180, 2182, 2185, 2186, 2187, 2188, 2189, 2190, 2191, 2192, 2194, 2195, 2197, 2198, 2199, 2200, 2202, 2204, 2205, 2207, 2217, 2236, 2237, 2243, 2249, 2250, 2256, 2257, 2263, 2264, 2267, 2268, 2269, 2270, 2271, 2272, 2275, 2276, 2277, 2278, 2282, 2315, 2316, 2317, 2318, 2319, 2320, 2321, 2331, 2366, 2367, 2406, 2407, 2408, 2409, 2410, 2411, 2412, 2414, 2415, 2424, 2426, 2427, 2456, 2457, 2459, 2460, 2461, 2463, 2493, 2496, 2500, 2503, 2507, 2515, 2516, 2522, 2523, 2532, 2538, 2540, 2582, 2583, 2585, 2589, 2590, 2592, 2596, 2604, 2611, 2612, 2621, 2627, 2628, 2629, 2630, 2632, 2635, 2651, 2654, 2655, 2656, 2659, 2660, 2661, 2662, 2663, 2664, 2667, 2668, 2675, 2678, 2691, 2692, 2694, 2698, 2699, 2703, 2704, 2706, 2707, 2708, 2709, 2716, 2720, 2721, 2722, 2723, 2724, 2725, 2726, 2727, 2728, 2729, 2730, 2733, 2744, 2747, 2748, 2749, 2751, 2753, 2755, 2766, 2767, 2810, 2811, 2813, 2815, 2816, 2817, 2818, 2820, 2821, 2822, 2823, 2824, 2828, 2830, 2831, 2832, 2834, 2835, 2837, 2839, 2840, 2841, 2842, 2844, 2846, 2848, 2859, 2860, 2887, 2888, 2902, 2914, 2915, 2916, 2917, 2919, 2920, 2926, 2931], "summary": {"covered_lines": 340, "num_statements": 503, "percent_covered": 65.1063829787234, "percent_covered_display": "65", "missing_lines": 163, "excluded_lines": 0, "percent_statements_covered": 67.59443339960238, "percent_statements_covered_display": "68", "num_branches": 202, "num_partial_branches": 19, "covered_branches": 119, "missing_branches": 83, "percent_branches_covered": 58.91089108910891, "percent_branches_covered_display": "59"}, "missing_lines": [208, 286, 287, 288, 289, 331, 332, 333, 407, 408, 409, 410, 411, 444, 445, 447, 480, 543, 547, 553, 554, 560, 561, 566, 605, 656, 782, 783, 784, 796, 797, 803, 807, 808, 809, 810, 811, 814, 883, 884, 888, 890, 891, 892, 894, 896, 897, 899, 901, 902, 903, 904, 906, 907, 908, 909, 911, 912, 913, 915, 916, 917, 918, 920, 921, 923, 962, 963, 965, 1424, 1431, 1440, 1441, 1443, 1444, 1445, 1446, 1447, 1451, 1454, 1458, 1886, 1887, 1888, 1891, 1894, 1895, 1896, 1897, 1900, 1905, 1906, 1907, 1908, 1909, 1919, 1920, 1921, 1922, 1923, 1924, 1925, 1927, 1928, 1929, 1930, 1931, 1933, 1935, 1936, 1937, 1938, 1939, 1941, 1942, 1943, 1944, 1946, 1947, 1948, 1949, 1950, 1958, 1985, 1986, 1988, 1989, 1990, 1996, 1998, 2039, 2041, 2042, 2044, 2045, 2046, 2055, 2056, 2058, 2244, 2245, 2248, 2280, 2358, 2359, 2361, 2362, 2364, 2494, 2501, 2605, 2714, 2873, 2874, 2875, 2876, 2880, 2881, 2882, 2883, 2884, 2899, 2934], "excluded_lines": [], "executed_branches": [[196, -180], [196, 197], [207, 209], [285, 304], [304, 305], [304, 312], [312, 316], [363, 364], [363, 366], [653, 654], [653, 655], [655, 657], [661, 662], [661, 666], [711, 712], [711, 714], [775, 776], [777, 778], [777, 791], [791, 792], [791, 829], [792, 793], [799, 791], [799, 800], [800, 801], [802, 804], [813, 816], [817, 818], [817, 825], [829, 830], [829, 832], [1885, 1893], [1893, 1904], [1904, 1913], [1913, 1914], [2167, 2168], [2167, 2170], [2170, 2171], [2170, 2180], [2185, 2186], [2185, 2187], [2187, 2188], [2187, 2189], [2189, 2190], [2189, 2195], [2191, 2192], [2191, 2194], [2236, 2237], [2236, 2243], [2243, 2249], [2249, 2250], [2249, 2256], [2256, 2257], [2256, 2263], [2263, 2264], [2263, 2267], [2267, 2268], [2267, 2269], [2269, 2270], [2269, 2271], [2271, 2272], [2271, 2275], [2275, 2276], [2275, 2277], [2277, 2278], [2315, 2316], [2315, 2317], [2317, 2318], [2317, 2319], [2319, 2320], [2319, 2321], [2406, 2407], [2406, 2410], [2407, 2408], [2407, 2409], [2410, 2411], [2410, 2412], [2493, 2496], [2500, 2503], [2515, 2516], [2515, 2522], [2522, 2523], [2522, 2532], [2582, 2583], [2582, 2585], [2589, 2590], [2589, 2592], [2604, 2611], [2611, 2612], [2611, 2621], [2628, 2629], [2628, 2632], [2691, 2692], [2691, 2694], [2706, 2707], [2706, 2716], [2708, 2709], [2721, 2722], [2721, 2733], [2723, 2724], [2723, 2728], [2725, 2726], [2725, 2727], [2748, 2749], [2748, 2751], [2810, 2811], [2810, 2813], [2817, 2818], [2817, 2820], [2834, 2835], [2834, 2837], [2839, 2840], [2839, 2841], [2841, 2842], [2841, 2844], [2915, -2902], [2915, 2916], [2919, 2915], [2919, 2920]], "missing_branches": [[207, 208], [285, 286], [312, 331], [444, 445], [444, 447], [543, 547], [543, 553], [553, 554], [553, 560], [560, 561], [560, 566], [655, 656], [775, 782], [783, 784], [783, 791], [792, 796], [800, 807], [802, 803], [808, 809], [808, 810], [813, 814], [883, 884], [883, 888], [891, 892], [891, 894], [896, 897], [896, 920], [906, 896], [906, 907], [911, 912], [911, 915], [915, 906], [915, 916], [920, 921], [920, 923], [962, 963], [962, 965], [1440, 1441], [1440, 1443], [1443, 1444], [1443, 1454], [1885, 1886], [1893, 1894], [1904, 1905], [1913, 1919], [1919, 1920], [1919, 1935], [1922, 1923], [1922, 1927], [1928, 1929], [1928, 1930], [1930, 1931], [1930, 1933], [1935, 1936], [1935, 1941], [1941, 1942], [1941, 1946], [1946, 1947], [1946, 1958], [1985, 1986], [1985, 1988], [2041, 2042], [2041, 2044], [2044, 2045], [2044, 2058], [2243, 2244], [2244, 2245], [2244, 2248], [2277, 2280], [2358, 2359], [2358, 2361], [2361, 2362], [2361, 2364], [2493, 2494], [2500, 2501], [2604, 2605], [2708, 2714], [2874, 2875], [2874, 2884], [2875, 2876], [2875, 2880], [2881, 2882], [2881, 2883]], "functions": {"Detections.__post_init__": {"executed_lines": [165], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 164, "executed_branches": [], "missing_branches": []}, "Detections.__len__": {"executed_lines": [178], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 174, "executed_branches": [], "missing_branches": []}, "Detections.__iter__": {"executed_lines": [196, 197], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 180, "executed_branches": [[196, -180], [196, 197]], "missing_branches": []}, "Detections.__eq__": {"executed_lines": [207, 209], "summary": {"covered_lines": 2, "num_statements": 3, "percent_covered": 60.0, "percent_covered_display": "60", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 66.66666666666667, "percent_statements_covered_display": "67", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [208], "excluded_lines": [], "start_line": 206, "executed_branches": [[207, 209]], "missing_branches": [[207, 208]]}, "Detections.from_yolov5": {"executed_lines": [245, 247], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 222, "executed_branches": [], "missing_branches": []}, "Detections.from_ultralytics": {"executed_lines": [285, 304, 305, 306, 312, 316, 317, 318], "summary": {"covered_lines": 8, "num_statements": 15, "percent_covered": 57.142857142857146, "percent_covered_display": "57", "missing_lines": 7, "excluded_lines": 0, "percent_statements_covered": 53.333333333333336, "percent_statements_covered_display": "53", "num_branches": 6, "num_partial_branches": 2, "covered_branches": 4, "missing_branches": 2, "percent_branches_covered": 66.66666666666667, "percent_branches_covered_display": "67"}, "missing_lines": [286, 287, 288, 289, 331, 332, 333], "excluded_lines": [], "start_line": 254, "executed_branches": [[285, 304], [304, 305], [304, 312], [312, 316]], "missing_branches": [[285, 286], [312, 331]]}, "Detections.from_yolo_nas": {"executed_lines": [363, 364, 366], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 336, "executed_branches": [[363, 364], [363, 366]], "missing_branches": []}, "Detections.from_tensorflow": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 5, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 5, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [407, 408, 409, 410, 411], "excluded_lines": [], "start_line": 373, "executed_branches": [], "missing_branches": []}, "Detections.from_deepsparse": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 3, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 2, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [444, 445, 447], "excluded_lines": [], "start_line": 418, "executed_branches": [], "missing_branches": [[444, 445], [444, 447]]}, "Detections.from_mmdetection": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [480], "excluded_lines": [], "start_line": 454, "executed_branches": [], "missing_branches": []}, "Detections.from_transformers": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 7, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 7, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 6, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [543, 547, 553, 554, 560, 561, 566], "excluded_lines": [], "start_line": 492, "executed_branches": [], "missing_branches": [[543, 547], [543, 553], [553, 554], [553, 560], [560, 561], [560, 566]]}, "Detections.from_detectron2": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [605], "excluded_lines": [], "start_line": 573, "executed_branches": [], "missing_branches": []}, "Detections.from_inference": {"executed_lines": [653, 654, 655, 657, 661, 662, 663, 664, 666], "summary": {"covered_lines": 9, "num_statements": 10, "percent_covered": 87.5, "percent_covered_display": "88", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 90.0, "percent_statements_covered_display": "90", "num_branches": 6, "num_partial_branches": 1, "covered_branches": 5, "missing_branches": 1, "percent_branches_covered": 83.33333333333333, "percent_branches_covered_display": "83"}, "missing_lines": [656], "excluded_lines": [], "start_line": 620, "executed_branches": [[653, 654], [653, 655], [655, 657], [661, 662], [661, 666]], "missing_branches": [[655, 656]]}, "Detections.from_sam": {"executed_lines": [704, 708, 709, 711, 712, 714, 715], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 676, "executed_branches": [[711, 712], [711, 714]], "missing_branches": []}, "Detections.from_sam3": {"executed_lines": [769, 771, 772, 773, 775, 776, 777, 778, 791, 792, 793, 794, 799, 800, 801, 802, 804, 805, 813, 816, 817, 818, 819, 822, 823, 825, 826, 827, 829, 830, 832, 833, 835], "summary": {"covered_lines": 33, "num_statements": 45, "percent_covered": 69.56521739130434, "percent_covered_display": "70", "missing_lines": 12, "excluded_lines": 0, "percent_statements_covered": 73.33333333333333, "percent_statements_covered_display": "73", "num_branches": 24, "num_partial_branches": 5, "covered_branches": 15, "missing_branches": 9, "percent_branches_covered": 62.5, "percent_branches_covered_display": "62"}, "missing_lines": [782, 783, 784, 796, 797, 803, 807, 808, 809, 810, 811, 814], "excluded_lines": [], "start_line": 718, "executed_branches": [[775, 776], [777, 778], [777, 791], [791, 792], [791, 829], [792, 793], [799, 791], [799, 800], [800, 801], [802, 804], [813, 816], [817, 818], [817, 825], [829, 830], [829, 832]], "missing_branches": [[775, 782], [783, 784], [783, 791], [792, 796], [800, 807], [802, 803], [808, 809], [808, 810], [813, 814]]}, "Detections.from_azure_analyze_image": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 28, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 28, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 14, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 14, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [883, 884, 888, 890, 891, 892, 894, 896, 897, 899, 901, 902, 903, 904, 906, 907, 908, 909, 911, 912, 913, 915, 916, 917, 918, 920, 921, 923], "excluded_lines": [], "start_line": 843, "executed_branches": [], "missing_branches": [[883, 884], [883, 888], [891, 892], [891, 894], [896, 897], [896, 920], [906, 896], [906, 907], [911, 912], [911, 915], [915, 906], [915, 916], [920, 921], [920, 923]]}, "Detections.from_paddledet": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 3, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 2, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [962, 963, 965], "excluded_lines": [], "start_line": 930, "executed_branches": [], "missing_branches": [[962, 963], [962, 965]]}, "Detections.from_lmm": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 12, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 12, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 4, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [1424, 1431, 1440, 1441, 1443, 1444, 1445, 1446, 1447, 1451, 1454, 1458], "excluded_lines": [], "start_line": 972, "executed_branches": [], "missing_branches": [[1440, 1441], [1440, 1443], [1443, 1444], [1443, 1454]]}, "Detections.from_vlm": {"executed_lines": [1883, 1885, 1893, 1904, 1913, 1914, 1915, 1916, 1917], "summary": {"covered_lines": 9, "num_statements": 51, "percent_covered": 17.80821917808219, "percent_covered_display": "18", "missing_lines": 42, "excluded_lines": 0, "percent_statements_covered": 17.647058823529413, "percent_statements_covered_display": "18", "num_branches": 22, "num_partial_branches": 4, "covered_branches": 4, "missing_branches": 18, "percent_branches_covered": 18.181818181818183, "percent_branches_covered_display": "18"}, "missing_lines": [1886, 1887, 1888, 1891, 1894, 1895, 1896, 1897, 1900, 1905, 1906, 1907, 1908, 1909, 1919, 1920, 1921, 1922, 1923, 1924, 1925, 1927, 1928, 1929, 1930, 1931, 1933, 1935, 1936, 1937, 1938, 1939, 1941, 1942, 1943, 1944, 1946, 1947, 1948, 1949, 1950, 1958], "excluded_lines": [], "start_line": 1461, "executed_branches": [[1885, 1893], [1893, 1904], [1904, 1913], [1913, 1914]], "missing_branches": [[1885, 1886], [1893, 1894], [1904, 1905], [1913, 1919], [1919, 1920], [1919, 1935], [1922, 1923], [1922, 1927], [1928, 1929], [1928, 1930], [1930, 1931], [1930, 1933], [1935, 1936], [1935, 1941], [1941, 1942], [1941, 1946], [1946, 1947], [1946, 1958]]}, "Detections.from_easyocr": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 7, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 7, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 2, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [1985, 1986, 1988, 1989, 1990, 1996, 1998], "excluded_lines": [], "start_line": 1961, "executed_branches": [], "missing_branches": [[1985, 1986], [1985, 1988]]}, "Detections.from_ncnn": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 9, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 9, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 4, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [2039, 2041, 2042, 2044, 2045, 2046, 2055, 2056, 2058], "excluded_lines": [], "start_line": 2007, "executed_branches": [], "missing_branches": [[2041, 2042], [2041, 2044], [2044, 2045], [2044, 2058]]}, "Detections.empty": {"executed_lines": [2080], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 2065, "executed_branches": [], "missing_branches": []}, "Detections.is_empty": {"executed_lines": [2108], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 2086, "executed_branches": [], "missing_branches": []}, "Detections.merge": {"executed_lines": [2163, 2167, 2168, 2170, 2171, 2180, 2182, 2197, 2198, 2199, 2200, 2202, 2204, 2205, 2207], "summary": {"covered_lines": 15, "num_statements": 15, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 2111, "executed_branches": [[2167, 2168], [2167, 2170], [2170, 2171], [2170, 2180]], "missing_branches": []}, "Detections.merge.stack_or_none": {"executed_lines": [2185, 2186, 2187, 2188, 2189, 2190, 2191, 2192, 2194, 2195], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 8, "num_partial_branches": 0, "covered_branches": 8, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 2182, "executed_branches": [[2185, 2186], [2185, 2187], [2187, 2188], [2187, 2189], [2189, 2190], [2189, 2195], [2191, 2192], [2191, 2194]], "missing_branches": []}, "Detections.get_anchors_coordinates": {"executed_lines": [2236, 2237, 2243, 2249, 2250, 2256, 2257, 2263, 2264, 2267, 2268, 2269, 2270, 2271, 2272, 2275, 2276, 2277, 2278], "summary": {"covered_lines": 19, "num_statements": 23, "percent_covered": 82.22222222222223, "percent_covered_display": "82", "missing_lines": 4, "excluded_lines": 0, "percent_statements_covered": 82.6086956521739, "percent_statements_covered_display": "83", "num_branches": 22, "num_partial_branches": 2, "covered_branches": 18, "missing_branches": 4, "percent_branches_covered": 81.81818181818181, "percent_branches_covered_display": "82"}, "missing_lines": [2244, 2245, 2248, 2280], "excluded_lines": [], "start_line": 2217, "executed_branches": [[2236, 2237], [2236, 2243], [2243, 2249], [2249, 2250], [2249, 2256], [2256, 2257], [2256, 2263], [2263, 2264], [2263, 2267], [2267, 2268], [2267, 2269], [2269, 2270], [2269, 2271], [2271, 2272], [2271, 2275], [2275, 2276], [2275, 2277], [2277, 2278]], "missing_branches": [[2243, 2244], [2244, 2245], [2244, 2248], [2277, 2280]]}, "Detections.__getitem__": {"executed_lines": [2315, 2316, 2317, 2318, 2319, 2320, 2321], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 6, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 2282, "executed_branches": [[2315, 2316], [2315, 2317], [2317, 2318], [2317, 2319], [2319, 2320], [2319, 2321]], "missing_branches": []}, "Detections.__setitem__": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 5, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 5, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 4, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [2358, 2359, 2361, 2362, 2364], "excluded_lines": [], "start_line": 2331, "executed_branches": [], "missing_branches": [[2358, 2359], [2358, 2361], [2361, 2362], [2361, 2364]]}, "Detections.area": {"executed_lines": [2406, 2407, 2408, 2409, 2410, 2411, 2412], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 6, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 2367, "executed_branches": [[2406, 2407], [2406, 2410], [2407, 2408], [2407, 2409], [2410, 2411], [2410, 2412]], "missing_branches": []}, "Detections.box_area": {"executed_lines": [2424], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 2415, "executed_branches": [], "missing_branches": []}, "Detections.box_aspect_ratio": {"executed_lines": [2456, 2457, 2459, 2460, 2461], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 2427, "executed_branches": [], "missing_branches": []}, "Detections.with_nms": {"executed_lines": [2493, 2496, 2500, 2503, 2507, 2515, 2516, 2522, 2523, 2532, 2538], "summary": {"covered_lines": 11, "num_statements": 13, "percent_covered": 80.95238095238095, "percent_covered_display": "81", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 84.61538461538461, "percent_statements_covered_display": "85", "num_branches": 8, "num_partial_branches": 2, "covered_branches": 6, "missing_branches": 2, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [2494, 2501], "excluded_lines": [], "start_line": 2463, "executed_branches": [[2493, 2496], [2500, 2503], [2515, 2516], [2515, 2522], [2522, 2523], [2522, 2532]], "missing_branches": [[2493, 2494], [2500, 2501]]}, "Detections.with_nmm": {"executed_lines": [2582, 2583, 2585, 2589, 2590, 2592, 2596, 2604, 2611, 2612, 2621, 2627, 2628, 2629, 2630, 2632], "summary": {"covered_lines": 16, "num_statements": 17, "percent_covered": 92.5925925925926, "percent_covered_display": "93", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 94.11764705882354, "percent_statements_covered_display": "94", "num_branches": 10, "num_partial_branches": 1, "covered_branches": 9, "missing_branches": 1, "percent_branches_covered": 90.0, "percent_branches_covered_display": "90"}, "missing_lines": [2605], "excluded_lines": [], "start_line": 2540, "executed_branches": [[2582, 2583], [2582, 2585], [2589, 2590], [2589, 2592], [2604, 2611], [2611, 2612], [2611, 2621], [2628, 2629], [2628, 2632]], "missing_branches": [[2604, 2605]]}, "_merge_obb_corners": {"executed_lines": [2651, 2654, 2655, 2656, 2659, 2660, 2661, 2662, 2663, 2664, 2667, 2668, 2675], "summary": {"covered_lines": 13, "num_statements": 13, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 2635, "executed_branches": [], "missing_branches": []}, "_merge_detection_group": {"executed_lines": [2691, 2692, 2694, 2698, 2699, 2703, 2704, 2706, 2707, 2708, 2709, 2716, 2720, 2721, 2722, 2723, 2724, 2725, 2726, 2727, 2728, 2729, 2730, 2733, 2744, 2747, 2748, 2749, 2751, 2753, 2755], "summary": {"covered_lines": 31, "num_statements": 32, "percent_covered": 95.65217391304348, "percent_covered_display": "96", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 96.875, "percent_statements_covered_display": "97", "num_branches": 14, "num_partial_branches": 1, "covered_branches": 13, "missing_branches": 1, "percent_branches_covered": 92.85714285714286, "percent_branches_covered_display": "93"}, "missing_lines": [2714], "excluded_lines": [], "start_line": 2678, "executed_branches": [[2691, 2692], [2691, 2694], [2706, 2707], [2706, 2716], [2708, 2709], [2721, 2722], [2721, 2733], [2723, 2724], [2723, 2728], [2725, 2726], [2725, 2727], [2748, 2749], [2748, 2751]], "missing_branches": [[2708, 2714]]}, "merge_inner_detection_object_pair": {"executed_lines": [2810, 2811, 2813, 2815, 2816, 2817, 2818, 2820, 2821, 2822, 2823, 2824, 2828, 2830, 2831, 2832, 2834, 2835, 2837, 2839, 2840, 2841, 2842, 2844, 2846, 2848], "summary": {"covered_lines": 26, "num_statements": 26, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 10, "num_partial_branches": 0, "covered_branches": 10, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 2767, "executed_branches": [[2810, 2811], [2810, 2813], [2817, 2818], [2817, 2820], [2834, 2835], [2834, 2837], [2839, 2840], [2839, 2841], [2841, 2842], [2841, 2844]], "missing_branches": []}, "merge_inner_detections_objects": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 9, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 9, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 6, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [2873, 2874, 2875, 2876, 2880, 2881, 2882, 2883, 2884], "excluded_lines": [], "start_line": 2860, "executed_branches": [], "missing_branches": [[2874, 2875], [2874, 2884], [2875, 2876], [2875, 2880], [2881, 2882], [2881, 2883]]}, "merge_inner_detections_objects_without_iou": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [2899], "excluded_lines": [], "start_line": 2888, "executed_branches": [], "missing_branches": []}, "_validate_fields_both_defined_or_none": {"executed_lines": [2914, 2915, 2916, 2917, 2919, 2920], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 2902, "executed_branches": [[2915, -2902], [2915, 2916], [2919, 2915], [2919, 2920]], "missing_branches": []}, "validate_fields_both_defined_or_none": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [2934], "excluded_lines": [], "start_line": 2931, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 5, 6, 8, 9, 10, 12, 16, 17, 22, 23, 28, 37, 48, 49, 62, 63, 64, 67, 68, 156, 157, 158, 159, 160, 161, 162, 164, 174, 180, 206, 221, 222, 253, 254, 335, 336, 372, 373, 417, 418, 453, 454, 491, 492, 572, 573, 619, 620, 675, 676, 717, 718, 842, 843, 929, 930, 971, 972, 1460, 1461, 1960, 1961, 2006, 2007, 2064, 2065, 2086, 2110, 2111, 2217, 2282, 2331, 2366, 2367, 2414, 2415, 2426, 2427, 2463, 2540, 2635, 2678, 2766, 2767, 2859, 2860, 2887, 2888, 2902, 2926, 2931], "summary": {"covered_lines": 94, "num_statements": 94, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"Detections": {"executed_lines": [165, 178, 196, 197, 207, 209, 245, 247, 285, 304, 305, 306, 312, 316, 317, 318, 363, 364, 366, 653, 654, 655, 657, 661, 662, 663, 664, 666, 704, 708, 709, 711, 712, 714, 715, 769, 771, 772, 773, 775, 776, 777, 778, 791, 792, 793, 794, 799, 800, 801, 802, 804, 805, 813, 816, 817, 818, 819, 822, 823, 825, 826, 827, 829, 830, 832, 833, 835, 1883, 1885, 1893, 1904, 1913, 1914, 1915, 1916, 1917, 2080, 2108, 2163, 2167, 2168, 2170, 2171, 2180, 2182, 2185, 2186, 2187, 2188, 2189, 2190, 2191, 2192, 2194, 2195, 2197, 2198, 2199, 2200, 2202, 2204, 2205, 2207, 2236, 2237, 2243, 2249, 2250, 2256, 2257, 2263, 2264, 2267, 2268, 2269, 2270, 2271, 2272, 2275, 2276, 2277, 2278, 2315, 2316, 2317, 2318, 2319, 2320, 2321, 2406, 2407, 2408, 2409, 2410, 2411, 2412, 2424, 2456, 2457, 2459, 2460, 2461, 2493, 2496, 2500, 2503, 2507, 2515, 2516, 2522, 2523, 2532, 2538, 2582, 2583, 2585, 2589, 2590, 2592, 2596, 2604, 2611, 2612, 2621, 2627, 2628, 2629, 2630, 2632], "summary": {"covered_lines": 170, "num_statements": 321, "percent_covered": 53.578732106339466, "percent_covered_display": "54", "missing_lines": 151, "excluded_lines": 0, "percent_statements_covered": 52.9595015576324, "percent_statements_covered_display": "53", "num_branches": 168, "num_partial_branches": 18, "covered_branches": 92, "missing_branches": 76, "percent_branches_covered": 54.76190476190476, "percent_branches_covered_display": "55"}, "missing_lines": [208, 286, 287, 288, 289, 331, 332, 333, 407, 408, 409, 410, 411, 444, 445, 447, 480, 543, 547, 553, 554, 560, 561, 566, 605, 656, 782, 783, 784, 796, 797, 803, 807, 808, 809, 810, 811, 814, 883, 884, 888, 890, 891, 892, 894, 896, 897, 899, 901, 902, 903, 904, 906, 907, 908, 909, 911, 912, 913, 915, 916, 917, 918, 920, 921, 923, 962, 963, 965, 1424, 1431, 1440, 1441, 1443, 1444, 1445, 1446, 1447, 1451, 1454, 1458, 1886, 1887, 1888, 1891, 1894, 1895, 1896, 1897, 1900, 1905, 1906, 1907, 1908, 1909, 1919, 1920, 1921, 1922, 1923, 1924, 1925, 1927, 1928, 1929, 1930, 1931, 1933, 1935, 1936, 1937, 1938, 1939, 1941, 1942, 1943, 1944, 1946, 1947, 1948, 1949, 1950, 1958, 1985, 1986, 1988, 1989, 1990, 1996, 1998, 2039, 2041, 2042, 2044, 2045, 2046, 2055, 2056, 2058, 2244, 2245, 2248, 2280, 2358, 2359, 2361, 2362, 2364, 2494, 2501, 2605], "excluded_lines": [], "start_line": 68, "executed_branches": [[196, -180], [196, 197], [207, 209], [285, 304], [304, 305], [304, 312], [312, 316], [363, 364], [363, 366], [653, 654], [653, 655], [655, 657], [661, 662], [661, 666], [711, 712], [711, 714], [775, 776], [777, 778], [777, 791], [791, 792], [791, 829], [792, 793], [799, 791], [799, 800], [800, 801], [802, 804], [813, 816], [817, 818], [817, 825], [829, 830], [829, 832], [1885, 1893], [1893, 1904], [1904, 1913], [1913, 1914], [2167, 2168], [2167, 2170], [2170, 2171], [2170, 2180], [2185, 2186], [2185, 2187], [2187, 2188], [2187, 2189], [2189, 2190], [2189, 2195], [2191, 2192], [2191, 2194], [2236, 2237], [2236, 2243], [2243, 2249], [2249, 2250], [2249, 2256], [2256, 2257], [2256, 2263], [2263, 2264], [2263, 2267], [2267, 2268], [2267, 2269], [2269, 2270], [2269, 2271], [2271, 2272], [2271, 2275], [2275, 2276], [2275, 2277], [2277, 2278], [2315, 2316], [2315, 2317], [2317, 2318], [2317, 2319], [2319, 2320], [2319, 2321], [2406, 2407], [2406, 2410], [2407, 2408], [2407, 2409], [2410, 2411], [2410, 2412], [2493, 2496], [2500, 2503], [2515, 2516], [2515, 2522], [2522, 2523], [2522, 2532], [2582, 2583], [2582, 2585], [2589, 2590], [2589, 2592], [2604, 2611], [2611, 2612], [2611, 2621], [2628, 2629], [2628, 2632]], "missing_branches": [[207, 208], [285, 286], [312, 331], [444, 445], [444, 447], [543, 547], [543, 553], [553, 554], [553, 560], [560, 561], [560, 566], [655, 656], [775, 782], [783, 784], [783, 791], [792, 796], [800, 807], [802, 803], [808, 809], [808, 810], [813, 814], [883, 884], [883, 888], [891, 892], [891, 894], [896, 897], [896, 920], [906, 896], [906, 907], [911, 912], [911, 915], [915, 906], [915, 916], [920, 921], [920, 923], [962, 963], [962, 965], [1440, 1441], [1440, 1443], [1443, 1444], [1443, 1454], [1885, 1886], [1893, 1894], [1904, 1905], [1913, 1919], [1919, 1920], [1919, 1935], [1922, 1923], [1922, 1927], [1928, 1929], [1928, 1930], [1930, 1931], [1930, 1933], [1935, 1936], [1935, 1941], [1941, 1942], [1941, 1946], [1946, 1947], [1946, 1958], [1985, 1986], [1985, 1988], [2041, 2042], [2041, 2044], [2044, 2045], [2044, 2058], [2243, 2244], [2244, 2245], [2244, 2248], [2277, 2280], [2358, 2359], [2358, 2361], [2361, 2362], [2361, 2364], [2493, 2494], [2500, 2501], [2604, 2605]]}, "": {"executed_lines": [1, 3, 4, 5, 6, 8, 9, 10, 12, 16, 17, 22, 23, 28, 37, 48, 49, 62, 63, 64, 67, 68, 156, 157, 158, 159, 160, 161, 162, 164, 174, 180, 206, 221, 222, 253, 254, 335, 336, 372, 373, 417, 418, 453, 454, 491, 492, 572, 573, 619, 620, 675, 676, 717, 718, 842, 843, 929, 930, 971, 972, 1460, 1461, 1960, 1961, 2006, 2007, 2064, 2065, 2086, 2110, 2111, 2217, 2282, 2331, 2366, 2367, 2414, 2415, 2426, 2427, 2463, 2540, 2635, 2651, 2654, 2655, 2656, 2659, 2660, 2661, 2662, 2663, 2664, 2667, 2668, 2675, 2678, 2691, 2692, 2694, 2698, 2699, 2703, 2704, 2706, 2707, 2708, 2709, 2716, 2720, 2721, 2722, 2723, 2724, 2725, 2726, 2727, 2728, 2729, 2730, 2733, 2744, 2747, 2748, 2749, 2751, 2753, 2755, 2766, 2767, 2810, 2811, 2813, 2815, 2816, 2817, 2818, 2820, 2821, 2822, 2823, 2824, 2828, 2830, 2831, 2832, 2834, 2835, 2837, 2839, 2840, 2841, 2842, 2844, 2846, 2848, 2859, 2860, 2887, 2888, 2902, 2914, 2915, 2916, 2917, 2919, 2920, 2926, 2931], "summary": {"covered_lines": 170, "num_statements": 182, "percent_covered": 91.20370370370371, "percent_covered_display": "91", "missing_lines": 12, "excluded_lines": 0, "percent_statements_covered": 93.4065934065934, "percent_statements_covered_display": "93", "num_branches": 34, "num_partial_branches": 1, "covered_branches": 27, "missing_branches": 7, "percent_branches_covered": 79.41176470588235, "percent_branches_covered_display": "79"}, "missing_lines": [2714, 2873, 2874, 2875, 2876, 2880, 2881, 2882, 2883, 2884, 2899, 2934], "excluded_lines": [], "start_line": 1, "executed_branches": [[2691, 2692], [2691, 2694], [2706, 2707], [2706, 2716], [2708, 2709], [2721, 2722], [2721, 2733], [2723, 2724], [2723, 2728], [2725, 2726], [2725, 2727], [2748, 2749], [2748, 2751], [2810, 2811], [2810, 2813], [2817, 2818], [2817, 2820], [2834, 2835], [2834, 2837], [2839, 2840], [2839, 2841], [2841, 2842], [2841, 2844], [2915, -2902], [2915, 2916], [2919, 2915], [2919, 2920]], "missing_branches": [[2708, 2714], [2874, 2875], [2874, 2884], [2875, 2876], [2875, 2880], [2881, 2882], [2881, 2883]]}}}, "src\\supervision\\detection\\line_zone.py": {"executed_lines": [1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 14, 15, 16, 17, 18, 19, 20, 21, 23, 26, 91, 116, 117, 118, 119, 122, 123, 124, 125, 127, 129, 130, 131, 133, 134, 135, 137, 138, 139, 141, 142, 143, 145, 160, 161, 163, 166, 175, 177, 181, 187, 190, 191, 193, 196, 197, 198, 200, 201, 203, 204, 205, 207, 208, 209, 211, 212, 214, 216, 217, 218, 220, 221, 223, 224, 226, 227, 229, 230, 232, 239, 246, 248, 284, 285, 287, 294, 295, 298, 299, 301, 302, 303, 305, 307, 314, 315, 317, 318, 320, 321, 327, 330, 331, 386, 456, 481, 545, 588, 639, 640, 641, 713, 714, 748, 759, 760, 761, 762, 763, 764, 765, 766, 767, 769, 788, 789, 790, 793, 794, 795, 796, 798, 802, 803, 805, 806, 807, 809, 810, 813, 815, 816, 817, 820, 821, 822, 824, 825, 826, 827, 828, 830, 845, 847, 850, 854, 855, 858, 859, 860, 862, 873], "summary": {"covered_lines": 163, "num_statements": 261, "percent_covered": 61.60990712074303, "percent_covered_display": "62", "missing_lines": 98, "excluded_lines": 1, "percent_statements_covered": 62.452107279693486, "percent_statements_covered_display": "62", "num_branches": 62, "num_partial_branches": 10, "covered_branches": 36, "missing_branches": 26, "percent_branches_covered": 58.064516129032256, "percent_branches_covered_display": "58"}, "missing_lines": [126, 164, 167, 173, 194, 323, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 400, 401, 402, 411, 419, 428, 429, 430, 432, 436, 437, 439, 440, 447, 454, 466, 467, 469, 470, 472, 473, 474, 476, 477, 479, 503, 505, 506, 509, 511, 512, 514, 518, 523, 524, 526, 529, 533, 534, 535, 537, 538, 540, 541, 543, 566, 570, 571, 573, 575, 586, 610, 611, 621, 623, 627, 635, 637, 668, 672, 673, 674, 676, 677, 679, 686, 692, 698, 701, 702, 704, 705, 708, 710, 754, 791, 808, 812], "excluded_lines": [27], "executed_branches": [[125, 127], [163, 166], [166, 175], [187, 190], [187, 214], [190, 191], [190, 193], [193, 196], [200, 201], [200, 203], [204, 205], [204, 207], [207, 208], [207, 211], [220, 221], [220, 223], [317, 318], [317, 320], [320, 321], [748, 759], [788, 789], [790, 793], [794, 795], [794, 815], [798, 794], [798, 802], [802, 803], [802, 805], [806, 798], [806, 807], [807, 809], [809, 810], [816, 817], [816, 824], [854, 855], [854, 873]], "missing_branches": [[125, 126], [163, 164], [166, 167], [193, 194], [320, 323], [432, 436], [432, 454], [436, 437], [436, 439], [439, 440], [439, 447], [472, 473], [472, 476], [505, 506], [505, 511], [533, 534], [533, 537], [570, 571], [570, 573], [701, 702], [701, 704], [748, 754], [788, 790], [790, 791], [807, 808], [809, 812]], "functions": {"LineZone.__init__": {"executed_lines": [116, 117, 118, 119, 122, 123, 124, 125, 127], "summary": {"covered_lines": 9, "num_statements": 10, "percent_covered": 83.33333333333333, "percent_covered_display": "83", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 90.0, "percent_statements_covered_display": "90", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [126], "excluded_lines": [], "start_line": 91, "executed_branches": [[125, 127]], "missing_branches": [[125, 126]]}, "LineZone.in_count": {"executed_lines": [131], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 130, "executed_branches": [], "missing_branches": []}, "LineZone.out_count": {"executed_lines": [135], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 134, "executed_branches": [], "missing_branches": []}, "LineZone.in_count_per_class": {"executed_lines": [139], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 138, "executed_branches": [], "missing_branches": []}, "LineZone.out_count_per_class": {"executed_lines": [143], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 142, "executed_branches": [], "missing_branches": []}, "LineZone.trigger": {"executed_lines": [160, 161, 163, 166, 175, 177, 181, 187, 190, 191, 193, 196, 197, 198, 200, 201, 203, 204, 205, 207, 208, 209, 211, 212, 214], "summary": {"covered_lines": 25, "num_statements": 29, "percent_covered": 84.44444444444444, "percent_covered_display": "84", "missing_lines": 4, "excluded_lines": 0, "percent_statements_covered": 86.20689655172414, "percent_statements_covered_display": "86", "num_branches": 16, "num_partial_branches": 3, "covered_branches": 13, "missing_branches": 3, "percent_branches_covered": 81.25, "percent_branches_covered_display": "81"}, "missing_lines": [164, 167, 173, 194], "excluded_lines": [], "start_line": 145, "executed_branches": [[163, 166], [166, 175], [187, 190], [187, 214], [190, 191], [190, 193], [193, 196], [200, 201], [200, 203], [204, 205], [204, 207], [207, 208], [207, 211]], "missing_branches": [[163, 164], [166, 167], [193, 194]]}, "LineZone._calculate_region_of_interest_limits": {"executed_lines": [218, 220, 221, 223, 224, 226, 227, 229, 230, 232, 239, 246], "summary": {"covered_lines": 12, "num_statements": 12, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 217, "executed_branches": [[220, 221], [220, 223]], "missing_branches": []}, "LineZone._compute_anchor_sides": {"executed_lines": [284, 285, 287, 294, 295, 298, 299, 301, 302, 303, 305], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 248, "executed_branches": [], "missing_branches": []}, "LineZone._update_class_id_to_name": {"executed_lines": [314, 315, 317, 318, 320, 321, 327], "summary": {"covered_lines": 7, "num_statements": 8, "percent_covered": 83.33333333333333, "percent_covered_display": "83", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 87.5, "percent_statements_covered_display": "88", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [323], "excluded_lines": [], "start_line": 307, "executed_branches": [[317, 318], [317, 320], [320, 321]], "missing_branches": [[320, 323]]}, "LineZoneAnnotator.__init__": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 14, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 14, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384], "excluded_lines": [], "start_line": 331, "executed_branches": [], "missing_branches": []}, "LineZoneAnnotator.annotate": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 15, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 15, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 6, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [400, 401, 402, 411, 419, 428, 429, 430, 432, 436, 437, 439, 440, 447, 454], "excluded_lines": [], "start_line": 386, "executed_branches": [], "missing_branches": [[432, 436], [432, 454], [436, 437], [436, 439], [439, 440], [439, 447]]}, "LineZoneAnnotator._get_line_angle": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 10, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 10, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 2, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [466, 467, 469, 470, 472, 473, 474, 476, 477, 479], "excluded_lines": [], "start_line": 456, "executed_branches": [], "missing_branches": [[472, 473], [472, 476]]}, "LineZoneAnnotator._calculate_anchor_in_frame": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 20, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 20, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 4, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [503, 505, 506, 509, 511, 512, 514, 518, 523, 524, 526, 529, 533, 534, 535, 537, 538, 540, 541, 543], "excluded_lines": [], "start_line": 481, "executed_branches": [], "missing_branches": [[505, 506], [505, 511], [533, 534], [533, 537]]}, "LineZoneAnnotator._draw_basic_label": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 6, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 6, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 2, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [566, 570, 571, 573, 575, 586], "excluded_lines": [], "start_line": 545, "executed_branches": [], "missing_branches": [[570, 571], [570, 573]]}, "LineZoneAnnotator._draw_oriented_label": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 7, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 7, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [610, 611, 621, 623, 627, 635, 637], "excluded_lines": [], "start_line": 588, "executed_branches": [], "missing_branches": []}, "LineZoneAnnotator._make_label_image": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 16, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 16, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 2, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [668, 672, 673, 674, 676, 677, 679, 686, 692, 698, 701, 702, 704, 705, 708, 710], "excluded_lines": [], "start_line": 641, "executed_branches": [], "missing_branches": [[701, 702], [701, 704]]}, "LineZoneAnnotatorMulticlass.__init__": {"executed_lines": [748, 759, 760, 761, 762, 763, 764, 765, 766, 767], "summary": {"covered_lines": 10, "num_statements": 11, "percent_covered": 84.61538461538461, "percent_covered_display": "85", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 90.9090909090909, "percent_statements_covered_display": "91", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [754], "excluded_lines": [], "start_line": 714, "executed_branches": [[748, 759]], "missing_branches": [[748, 754]]}, "LineZoneAnnotatorMulticlass.annotate": {"executed_lines": [788, 789, 790, 793, 794, 795, 796, 798, 802, 803, 805, 806, 807, 809, 810, 813, 815, 816, 817, 820, 821, 822, 824, 825, 826, 827, 828, 830, 845, 847, 850, 854, 855, 858, 859, 860, 862, 873], "summary": {"covered_lines": 38, "num_statements": 41, "percent_covered": 88.52459016393442, "percent_covered_display": "89", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 92.6829268292683, "percent_statements_covered_display": "93", "num_branches": 20, "num_partial_branches": 4, "covered_branches": 16, "missing_branches": 4, "percent_branches_covered": 80.0, "percent_branches_covered_display": "80"}, "missing_lines": [791, 808, 812], "excluded_lines": [], "start_line": 769, "executed_branches": [[788, 789], [790, 793], [794, 795], [794, 815], [798, 794], [798, 802], [802, 803], [802, 805], [806, 798], [806, 807], [807, 809], [809, 810], [816, 817], [816, 824], [854, 855], [854, 873]], "missing_branches": [[788, 790], [790, 791], [807, 808], [809, 812]]}, "": {"executed_lines": [1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 14, 15, 16, 17, 18, 19, 20, 21, 23, 26, 91, 129, 130, 133, 134, 137, 138, 141, 142, 145, 216, 217, 248, 307, 330, 331, 386, 456, 481, 545, 588, 639, 640, 641, 713, 714, 769], "summary": {"covered_lines": 47, "num_statements": 47, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 1, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [27], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"LineZone": {"executed_lines": [116, 117, 118, 119, 122, 123, 124, 125, 127, 131, 135, 139, 143, 160, 161, 163, 166, 175, 177, 181, 187, 190, 191, 193, 196, 197, 198, 200, 201, 203, 204, 205, 207, 208, 209, 211, 212, 214, 218, 220, 221, 223, 224, 226, 227, 229, 230, 232, 239, 246, 284, 285, 287, 294, 295, 298, 299, 301, 302, 303, 305, 314, 315, 317, 318, 320, 321, 327], "summary": {"covered_lines": 68, "num_statements": 74, "percent_covered": 88.77551020408163, "percent_covered_display": "89", "missing_lines": 6, "excluded_lines": 0, "percent_statements_covered": 91.89189189189189, "percent_statements_covered_display": "92", "num_branches": 24, "num_partial_branches": 5, "covered_branches": 19, "missing_branches": 5, "percent_branches_covered": 79.16666666666667, "percent_branches_covered_display": "79"}, "missing_lines": [126, 164, 167, 173, 194, 323], "excluded_lines": [], "start_line": 26, "executed_branches": [[125, 127], [163, 166], [166, 175], [187, 190], [187, 214], [190, 191], [190, 193], [193, 196], [200, 201], [200, 203], [204, 205], [204, 207], [207, 208], [207, 211], [220, 221], [220, 223], [317, 318], [317, 320], [320, 321]], "missing_branches": [[125, 126], [163, 164], [166, 167], [193, 194], [320, 323]]}, "LineZoneAnnotator": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 88, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 88, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 16, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 16, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 400, 401, 402, 411, 419, 428, 429, 430, 432, 436, 437, 439, 440, 447, 454, 466, 467, 469, 470, 472, 473, 474, 476, 477, 479, 503, 505, 506, 509, 511, 512, 514, 518, 523, 524, 526, 529, 533, 534, 535, 537, 538, 540, 541, 543, 566, 570, 571, 573, 575, 586, 610, 611, 621, 623, 627, 635, 637, 668, 672, 673, 674, 676, 677, 679, 686, 692, 698, 701, 702, 704, 705, 708, 710], "excluded_lines": [], "start_line": 330, "executed_branches": [], "missing_branches": [[432, 436], [432, 454], [436, 437], [436, 439], [439, 440], [439, 447], [472, 473], [472, 476], [505, 506], [505, 511], [533, 534], [533, 537], [570, 571], [570, 573], [701, 702], [701, 704]]}, "LineZoneAnnotatorMulticlass": {"executed_lines": [748, 759, 760, 761, 762, 763, 764, 765, 766, 767, 788, 789, 790, 793, 794, 795, 796, 798, 802, 803, 805, 806, 807, 809, 810, 813, 815, 816, 817, 820, 821, 822, 824, 825, 826, 827, 828, 830, 845, 847, 850, 854, 855, 858, 859, 860, 862, 873], "summary": {"covered_lines": 48, "num_statements": 52, "percent_covered": 87.83783783783784, "percent_covered_display": "88", "missing_lines": 4, "excluded_lines": 0, "percent_statements_covered": 92.3076923076923, "percent_statements_covered_display": "92", "num_branches": 22, "num_partial_branches": 5, "covered_branches": 17, "missing_branches": 5, "percent_branches_covered": 77.27272727272727, "percent_branches_covered_display": "77"}, "missing_lines": [754, 791, 808, 812], "excluded_lines": [], "start_line": 713, "executed_branches": [[748, 759], [788, 789], [790, 793], [794, 795], [794, 815], [798, 794], [798, 802], [802, 803], [802, 805], [806, 798], [806, 807], [807, 809], [809, 810], [816, 817], [816, 824], [854, 855], [854, 873]], "missing_branches": [[748, 754], [788, 790], [790, 791], [807, 808], [809, 812]]}, "": {"executed_lines": [1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 14, 15, 16, 17, 18, 19, 20, 21, 23, 26, 91, 129, 130, 133, 134, 137, 138, 141, 142, 145, 216, 217, 248, 307, 330, 331, 386, 456, 481, 545, 588, 639, 640, 641, 713, 714, 769], "summary": {"covered_lines": 47, "num_statements": 47, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 1, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [27], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "src\\supervision\\detection\\tools\\__init__.py": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "src\\supervision\\detection\\tools\\csv_sink.py": {"executed_lines": [1, 3, 4, 5, 6, 7, 9, 11, 12, 14, 16, 27, 31, 75, 82, 83, 84, 85, 86, 88, 89, 90, 92, 98, 100, 104, 105, 108, 109, 111, 115, 116, 118, 119, 138, 139, 140, 141, 142, 144, 145, 166, 167, 168, 169, 185, 186, 187, 189, 190, 191, 193, 194, 196, 210, 214, 215, 216, 217, 218, 220, 227, 228, 229, 233, 234, 237, 238, 241], "summary": {"covered_lines": 69, "num_statements": 72, "percent_covered": 91.83673469387755, "percent_covered_display": "92", "missing_lines": 3, "excluded_lines": 3, "percent_statements_covered": 95.83333333333333, "percent_statements_covered_display": "96", "num_branches": 26, "num_partial_branches": 5, "covered_branches": 21, "missing_branches": 5, "percent_branches_covered": 80.76923076923077, "percent_branches_covered_display": "81"}, "missing_lines": [106, 211, 221], "excluded_lines": [28, 29, 30], "executed_branches": [[105, 108], [115, 116], [138, 139], [138, 140], [140, 141], [140, 142], [168, 169], [168, 194], [185, 186], [186, 187], [186, 189], [189, 190], [189, 193], [190, 191], [190, 193], [210, 214], [215, 216], [215, 220], [220, 227], [228, -196], [228, 229]], "missing_branches": [[105, 106], [115, -111], [185, 189], [210, 211], [220, 221]], "functions": {"WriterProtocol.writerow": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 1, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [28], "start_line": 28, "executed_branches": [], "missing_branches": []}, "CSVSink.__init__": {"executed_lines": [82, 83, 84, 85, 86], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 75, "executed_branches": [], "missing_branches": []}, "CSVSink.__enter__": {"executed_lines": [89, 90], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 88, "executed_branches": [], "missing_branches": []}, "CSVSink.__exit__": {"executed_lines": [98], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 92, "executed_branches": [], "missing_branches": []}, "CSVSink.open": {"executed_lines": [104, 105, 108, 109], "summary": {"covered_lines": 4, "num_statements": 5, "percent_covered": 71.42857142857143, "percent_covered_display": "71", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 80.0, "percent_statements_covered_display": "80", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [106], "excluded_lines": [], "start_line": 100, "executed_branches": [[105, 108]], "missing_branches": [[105, 106]]}, "CSVSink.close": {"executed_lines": [115, 116], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 75.0, "percent_covered_display": "75", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [], "excluded_lines": [], "start_line": 111, "executed_branches": [[115, 116]], "missing_branches": [[115, -111]]}, "CSVSink._slice_value": {"executed_lines": [138, 139, 140, 141, 142], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 119, "executed_branches": [[138, 139], [138, 140], [140, 141], [140, 142]], "missing_branches": []}, "CSVSink.parse_detection_data": {"executed_lines": [166, 167, 168, 169, 185, 186, 187, 189, 190, 191, 193, 194], "summary": {"covered_lines": 12, "num_statements": 12, "percent_covered": 95.45454545454545, "percent_covered_display": "95", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 10, "num_partial_branches": 1, "covered_branches": 9, "missing_branches": 1, "percent_branches_covered": 90.0, "percent_branches_covered_display": "90"}, "missing_lines": [], "excluded_lines": [], "start_line": 145, "executed_branches": [[168, 169], [168, 194], [185, 186], [186, 187], [186, 189], [189, 190], [189, 193], [190, 191], [190, 193]], "missing_branches": [[185, 189]]}, "CSVSink.append": {"executed_lines": [210, 214, 215, 216, 217, 218, 220, 227, 228, 229], "summary": {"covered_lines": 10, "num_statements": 12, "percent_covered": 80.0, "percent_covered_display": "80", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 83.33333333333333, "percent_statements_covered_display": "83", "num_branches": 8, "num_partial_branches": 2, "covered_branches": 6, "missing_branches": 2, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [211, 221], "excluded_lines": [], "start_line": 196, "executed_branches": [[210, 214], [215, 216], [215, 220], [220, 227], [228, -196], [228, 229]], "missing_branches": [[210, 211], [220, 221]]}, "CSVSink.parse_field_names": {"executed_lines": [237, 238, 241], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 234, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 5, 6, 7, 9, 11, 12, 14, 16, 27, 31, 75, 88, 92, 100, 111, 118, 119, 144, 145, 196, 233, 234], "summary": {"covered_lines": 25, "num_statements": 25, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 2, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [29, 30], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"WriterProtocol": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 1, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [28], "start_line": 27, "executed_branches": [], "missing_branches": []}, "CSVSink": {"executed_lines": [82, 83, 84, 85, 86, 89, 90, 98, 104, 105, 108, 109, 115, 116, 138, 139, 140, 141, 142, 166, 167, 168, 169, 185, 186, 187, 189, 190, 191, 193, 194, 210, 214, 215, 216, 217, 218, 220, 227, 228, 229, 237, 238, 241], "summary": {"covered_lines": 44, "num_statements": 47, "percent_covered": 89.04109589041096, "percent_covered_display": "89", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 93.61702127659575, "percent_statements_covered_display": "94", "num_branches": 26, "num_partial_branches": 5, "covered_branches": 21, "missing_branches": 5, "percent_branches_covered": 80.76923076923077, "percent_branches_covered_display": "81"}, "missing_lines": [106, 211, 221], "excluded_lines": [], "start_line": 31, "executed_branches": [[105, 108], [115, 116], [138, 139], [138, 140], [140, 141], [140, 142], [168, 169], [168, 194], [185, 186], [186, 187], [186, 189], [189, 190], [189, 193], [190, 191], [190, 193], [210, 214], [215, 216], [215, 220], [220, 227], [228, -196], [228, 229]], "missing_branches": [[105, 106], [115, -111], [185, 189], [210, 211], [220, 221]]}, "": {"executed_lines": [1, 3, 4, 5, 6, 7, 9, 11, 12, 14, 16, 27, 31, 75, 88, 92, 100, 111, 118, 119, 144, 145, 196, 233, 234], "summary": {"covered_lines": 25, "num_statements": 25, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 2, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [29, 30], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "src\\supervision\\detection\\tools\\inference_slicer.py": {"executed_lines": [1, 3, 4, 5, 6, 7, 9, 10, 12, 13, 14, 15, 16, 17, 18, 19, 20, 23, 39, 40, 41, 44, 45, 50, 52, 58, 61, 64, 143, 154, 155, 157, 159, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 178, 196, 197, 199, 205, 206, 207, 209, 210, 211, 213, 214, 229, 231, 232, 233, 234, 235, 236, 244, 245, 247, 248, 252, 253, 255, 256, 257, 258, 259, 263, 264, 275, 287, 288, 290, 295, 296, 302, 305, 309, 310, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 329, 330, 335, 337, 338, 341, 342, 346, 362, 363, 366, 367, 372, 388, 389, 406, 407, 408, 410, 411, 413, 418, 419, 421, 422, 424, 425, 426, 427, 428, 430, 435, 441, 442, 443, 445, 450, 452, 453, 457, 458, 460, 466], "summary": {"covered_lines": 140, "num_statements": 171, "percent_covered": 75.73221757322176, "percent_covered_display": "76", "missing_lines": 31, "excluded_lines": 0, "percent_statements_covered": 81.87134502923976, "percent_statements_covered_display": "82", "num_branches": 68, "num_partial_branches": 13, "covered_branches": 41, "missing_branches": 27, "percent_branches_covered": 60.294117647058826, "percent_branches_covered_display": "60"}, "missing_lines": [46, 160, 215, 216, 217, 218, 219, 221, 222, 223, 224, 226, 227, 269, 273, 343, 348, 349, 350, 351, 354, 356, 368, 374, 375, 376, 377, 380, 382, 461, 467], "excluded_lines": [], "executed_branches": [[40, 41], [40, 44], [44, 45], [44, 61], [45, 50], [50, 52], [50, 58], [159, 165], [214, 229], [231, 232], [231, 247], [232, 233], [232, 244], [234, 235], [244, 245], [244, 255], [252, 253], [252, 255], [256, 257], [256, 258], [258, 259], [258, 263], [263, 264], [290, 295], [290, 302], [309, 310], [309, 330], [312, 313], [319, 320], [319, 330], [341, 342], [342, 346], [366, 367], [367, 372], [418, 419], [418, 421], [421, 422], [421, 424], [426, 427], [460, 466], [466, -452]], "missing_branches": [[45, 46], [159, 160], [214, 215], [215, 216], [215, 229], [221, 222], [221, 226], [226, 215], [226, 227], [234, 244], [263, 269], [312, 330], [341, 348], [342, 343], [348, 349], [348, 356], [350, 351], [350, 354], [366, 374], [367, 368], [374, 375], [374, 382], [376, 377], [376, 380], [426, 428], [460, 461], [466, 467]], "functions": {"move_detections": {"executed_lines": [39, 40, 41, 44, 45, 50, 52, 58, 61], "summary": {"covered_lines": 9, "num_statements": 10, "percent_covered": 88.88888888888889, "percent_covered_display": "89", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 90.0, "percent_statements_covered_display": "90", "num_branches": 8, "num_partial_branches": 1, "covered_branches": 7, "missing_branches": 1, "percent_branches_covered": 87.5, "percent_branches_covered_display": "88"}, "missing_lines": [46], "excluded_lines": [], "start_line": 23, "executed_branches": [[40, 41], [40, 44], [44, 45], [44, 61], [45, 50], [50, 52], [50, 58]], "missing_branches": [[45, 46]]}, "InferenceSlicer.__init__": {"executed_lines": [154, 155, 157, 159, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176], "summary": {"covered_lines": 16, "num_statements": 17, "percent_covered": 89.47368421052632, "percent_covered_display": "89", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 94.11764705882354, "percent_statements_covered_display": "94", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [160], "excluded_lines": [], "start_line": 143, "executed_branches": [[159, 165]], "missing_branches": [[159, 160]]}, "InferenceSlicer.__call__": {"executed_lines": [196, 197, 199, 205, 206, 207, 209, 210, 211, 213, 214, 229, 231, 232, 233, 234, 235, 236, 244, 245, 247, 248, 252, 253, 255, 256, 257, 258, 259, 263, 264], "summary": {"covered_lines": 31, "num_statements": 44, "percent_covered": 67.6470588235294, "percent_covered_display": "68", "missing_lines": 13, "excluded_lines": 0, "percent_statements_covered": 70.45454545454545, "percent_statements_covered_display": "70", "num_branches": 24, "num_partial_branches": 3, "covered_branches": 15, "missing_branches": 9, "percent_branches_covered": 62.5, "percent_branches_covered_display": "62"}, "missing_lines": [215, 216, 217, 218, 219, 221, 222, 223, 224, 226, 227, 269, 273], "excluded_lines": [], "start_line": 178, "executed_branches": [[214, 229], [231, 232], [231, 247], [232, 233], [232, 244], [234, 235], [244, 245], [244, 255], [252, 253], [252, 255], [256, 257], [256, 258], [258, 259], [258, 263], [263, 264]], "missing_branches": [[214, 215], [215, 216], [215, 229], [221, 222], [221, 226], [226, 215], [226, 227], [234, 244], [263, 269]]}, "InferenceSlicer._run_callback": {"executed_lines": [287, 288, 290, 295, 296, 302, 305, 309, 310, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 329, 330, 335], "summary": {"covered_lines": 22, "num_statements": 22, "percent_covered": 96.66666666666667, "percent_covered_display": "97", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 8, "num_partial_branches": 1, "covered_branches": 7, "missing_branches": 1, "percent_branches_covered": 87.5, "percent_branches_covered_display": "88"}, "missing_lines": [], "excluded_lines": [], "start_line": 275, "executed_branches": [[290, 295], [290, 302], [309, 310], [309, 330], [312, 313], [319, 320], [319, 330]], "missing_branches": [[312, 330]]}, "InferenceSlicer._normalize_slice_wh": {"executed_lines": [341, 342, 346], "summary": {"covered_lines": 3, "num_statements": 10, "percent_covered": 27.77777777777778, "percent_covered_display": "28", "missing_lines": 7, "excluded_lines": 0, "percent_statements_covered": 30.0, "percent_statements_covered_display": "30", "num_branches": 8, "num_partial_branches": 2, "covered_branches": 2, "missing_branches": 6, "percent_branches_covered": 25.0, "percent_branches_covered_display": "25"}, "missing_lines": [343, 348, 349, 350, 351, 354, 356], "excluded_lines": [], "start_line": 338, "executed_branches": [[341, 342], [342, 346]], "missing_branches": [[341, 348], [342, 343], [348, 349], [348, 356], [350, 351], [350, 354]]}, "InferenceSlicer._normalize_overlap_wh": {"executed_lines": [366, 367, 372], "summary": {"covered_lines": 3, "num_statements": 10, "percent_covered": 27.77777777777778, "percent_covered_display": "28", "missing_lines": 7, "excluded_lines": 0, "percent_statements_covered": 30.0, "percent_statements_covered_display": "30", "num_branches": 8, "num_partial_branches": 2, "covered_branches": 2, "missing_branches": 6, "percent_branches_covered": 25.0, "percent_branches_covered_display": "25"}, "missing_lines": [368, 374, 375, 376, 377, 380, 382], "excluded_lines": [], "start_line": 363, "executed_branches": [[366, 367], [367, 372]], "missing_branches": [[366, 374], [367, 368], [374, 375], [374, 382], [376, 377], [376, 380]]}, "InferenceSlicer._generate_offset": {"executed_lines": [406, 407, 408, 410, 411, 413, 430, 435, 441, 442, 443, 445, 450], "summary": {"covered_lines": 13, "num_statements": 13, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 389, "executed_branches": [], "missing_branches": []}, "InferenceSlicer._generate_offset._compute_axis_starts": {"executed_lines": [418, 419, 421, 422, 424, 425, 426, 427, 428], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 93.33333333333333, "percent_covered_display": "93", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 1, "covered_branches": 5, "missing_branches": 1, "percent_branches_covered": 83.33333333333333, "percent_branches_covered_display": "83"}, "missing_lines": [], "excluded_lines": [], "start_line": 413, "executed_branches": [[418, 419], [418, 421], [421, 422], [421, 424], [426, 427]], "missing_branches": [[426, 428]]}, "InferenceSlicer._validate_overlap": {"executed_lines": [457, 458, 460, 466], "summary": {"covered_lines": 4, "num_statements": 6, "percent_covered": 60.0, "percent_covered_display": "60", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 66.66666666666667, "percent_statements_covered_display": "67", "num_branches": 4, "num_partial_branches": 2, "covered_branches": 2, "missing_branches": 2, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [461, 467], "excluded_lines": [], "start_line": 453, "executed_branches": [[460, 466], [466, -452]], "missing_branches": [[460, 461], [466, 467]]}, "": {"executed_lines": [1, 3, 4, 5, 6, 7, 9, 10, 12, 13, 14, 15, 16, 17, 18, 19, 20, 23, 64, 143, 178, 275, 337, 338, 362, 363, 388, 389, 452, 453], "summary": {"covered_lines": 30, "num_statements": 30, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"InferenceSlicer": {"executed_lines": [154, 155, 157, 159, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 196, 197, 199, 205, 206, 207, 209, 210, 211, 213, 214, 229, 231, 232, 233, 234, 235, 236, 244, 245, 247, 248, 252, 253, 255, 256, 257, 258, 259, 263, 264, 287, 288, 290, 295, 296, 302, 305, 309, 310, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 329, 330, 335, 341, 342, 346, 366, 367, 372, 406, 407, 408, 410, 411, 413, 418, 419, 421, 422, 424, 425, 426, 427, 428, 430, 435, 441, 442, 443, 445, 450, 457, 458, 460, 466], "summary": {"covered_lines": 101, "num_statements": 131, "percent_covered": 70.68062827225131, "percent_covered_display": "71", "missing_lines": 30, "excluded_lines": 0, "percent_statements_covered": 77.09923664122137, "percent_statements_covered_display": "77", "num_branches": 60, "num_partial_branches": 12, "covered_branches": 34, "missing_branches": 26, "percent_branches_covered": 56.666666666666664, "percent_branches_covered_display": "57"}, "missing_lines": [160, 215, 216, 217, 218, 219, 221, 222, 223, 224, 226, 227, 269, 273, 343, 348, 349, 350, 351, 354, 356, 368, 374, 375, 376, 377, 380, 382, 461, 467], "excluded_lines": [], "start_line": 64, "executed_branches": [[159, 165], [214, 229], [231, 232], [231, 247], [232, 233], [232, 244], [234, 235], [244, 245], [244, 255], [252, 253], [252, 255], [256, 257], [256, 258], [258, 259], [258, 263], [263, 264], [290, 295], [290, 302], [309, 310], [309, 330], [312, 313], [319, 320], [319, 330], [341, 342], [342, 346], [366, 367], [367, 372], [418, 419], [418, 421], [421, 422], [421, 424], [426, 427], [460, 466], [466, -452]], "missing_branches": [[159, 160], [214, 215], [215, 216], [215, 229], [221, 222], [221, 226], [226, 215], [226, 227], [234, 244], [263, 269], [312, 330], [341, 348], [342, 343], [348, 349], [348, 356], [350, 351], [350, 354], [366, 374], [367, 368], [374, 375], [374, 382], [376, 377], [376, 380], [426, 428], [460, 461], [466, 467]]}, "": {"executed_lines": [1, 3, 4, 5, 6, 7, 9, 10, 12, 13, 14, 15, 16, 17, 18, 19, 20, 23, 39, 40, 41, 44, 45, 50, 52, 58, 61, 64, 143, 178, 275, 337, 338, 362, 363, 388, 389, 452, 453], "summary": {"covered_lines": 39, "num_statements": 40, "percent_covered": 95.83333333333333, "percent_covered_display": "96", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 97.5, "percent_statements_covered_display": "98", "num_branches": 8, "num_partial_branches": 1, "covered_branches": 7, "missing_branches": 1, "percent_branches_covered": 87.5, "percent_branches_covered_display": "88"}, "missing_lines": [46], "excluded_lines": [], "start_line": 1, "executed_branches": [[40, 41], [40, 44], [44, 45], [44, 61], [45, 50], [50, 52], [50, 58]], "missing_branches": [[45, 46]]}}}, "src\\supervision\\detection\\tools\\json_sink.py": {"executed_lines": [1, 3, 4, 5, 6, 8, 10, 13, 51, 58, 59, 60, 62, 63, 64, 66, 72, 74, 78, 79, 82, 84, 85, 101, 102, 103, 104, 105, 109, 113, 114, 115, 119, 121, 122, 141, 142, 143, 144, 145, 147, 148, 169, 170, 171, 172, 188, 189, 190, 192, 193, 194, 195, 197, 198, 200, 214, 215], "summary": {"covered_lines": 58, "num_statements": 59, "percent_covered": 95.06172839506173, "percent_covered_display": "95", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 98.30508474576271, "percent_statements_covered_display": "98", "num_branches": 22, "num_partial_branches": 3, "covered_branches": 19, "missing_branches": 3, "percent_branches_covered": 86.36363636363636, "percent_branches_covered_display": "86"}, "missing_lines": [80], "excluded_lines": [], "executed_branches": [[79, 82], [101, 102], [101, 103], [103, 104], [103, 105], [113, 114], [141, 142], [141, 143], [143, 144], [143, 145], [171, 172], [171, 198], [188, 189], [189, 190], [189, 192], [192, 193], [192, 197], [193, 194], [193, 197]], "missing_branches": [[79, 80], [113, -109], [188, 192]], "functions": {"JSONSink.__init__": {"executed_lines": [58, 59, 60], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 51, "executed_branches": [], "missing_branches": []}, "JSONSink.__enter__": {"executed_lines": [63, 64], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 62, "executed_branches": [], "missing_branches": []}, "JSONSink.__exit__": {"executed_lines": [72], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 66, "executed_branches": [], "missing_branches": []}, "JSONSink.open": {"executed_lines": [78, 79, 82], "summary": {"covered_lines": 3, "num_statements": 4, "percent_covered": 66.66666666666667, "percent_covered_display": "67", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 75.0, "percent_statements_covered_display": "75", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [80], "excluded_lines": [], "start_line": 74, "executed_branches": [[79, 82]], "missing_branches": [[79, 80]]}, "JSONSink._json_default": {"executed_lines": [101, 102, 103, 104, 105], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 85, "executed_branches": [[101, 102], [101, 103], [103, 104], [103, 105]], "missing_branches": []}, "JSONSink.write_and_close": {"executed_lines": [113, 114, 115, 119], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 83.33333333333333, "percent_covered_display": "83", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [], "excluded_lines": [], "start_line": 109, "executed_branches": [[113, 114]], "missing_branches": [[113, -109]]}, "JSONSink._slice_value": {"executed_lines": [141, 142, 143, 144, 145], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 122, "executed_branches": [[141, 142], [141, 143], [143, 144], [143, 145]], "missing_branches": []}, "JSONSink.parse_detection_data": {"executed_lines": [169, 170, 171, 172, 188, 189, 190, 192, 193, 194, 195, 197, 198], "summary": {"covered_lines": 13, "num_statements": 13, "percent_covered": 95.65217391304348, "percent_covered_display": "96", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 10, "num_partial_branches": 1, "covered_branches": 9, "missing_branches": 1, "percent_branches_covered": 90.0, "percent_branches_covered_display": "90"}, "missing_lines": [], "excluded_lines": [], "start_line": 148, "executed_branches": [[171, 172], [171, 198], [188, 189], [189, 190], [189, 192], [192, 193], [192, 197], [193, 194], [193, 197]], "missing_branches": [[188, 192]]}, "JSONSink.append": {"executed_lines": [214, 215], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 200, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 5, 6, 8, 10, 13, 51, 62, 66, 74, 84, 85, 109, 121, 122, 147, 148, 200], "summary": {"covered_lines": 20, "num_statements": 20, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"JSONSink": {"executed_lines": [58, 59, 60, 63, 64, 72, 78, 79, 82, 101, 102, 103, 104, 105, 113, 114, 115, 119, 141, 142, 143, 144, 145, 169, 170, 171, 172, 188, 189, 190, 192, 193, 194, 195, 197, 198, 214, 215], "summary": {"covered_lines": 38, "num_statements": 39, "percent_covered": 93.44262295081967, "percent_covered_display": "93", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 97.43589743589743, "percent_statements_covered_display": "97", "num_branches": 22, "num_partial_branches": 3, "covered_branches": 19, "missing_branches": 3, "percent_branches_covered": 86.36363636363636, "percent_branches_covered_display": "86"}, "missing_lines": [80], "excluded_lines": [], "start_line": 13, "executed_branches": [[79, 82], [101, 102], [101, 103], [103, 104], [103, 105], [113, 114], [141, 142], [141, 143], [143, 144], [143, 145], [171, 172], [171, 198], [188, 189], [189, 190], [189, 192], [192, 193], [192, 197], [193, 194], [193, 197]], "missing_branches": [[79, 80], [113, -109], [188, 192]]}, "": {"executed_lines": [1, 3, 4, 5, 6, 8, 10, 13, 51, 62, 66, 74, 84, 85, 109, 121, 122, 147, 148, 200], "summary": {"covered_lines": 20, "num_statements": 20, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "src\\supervision\\detection\\tools\\polygon_zone.py": {"executed_lines": [1, 3, 4, 6, 7, 8, 10, 11, 12, 13, 14, 15, 18, 56, 61, 62, 63, 64, 66, 68, 69, 73, 90, 91, 92, 94, 101, 102, 103, 104, 105, 106, 107, 108, 111, 131, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 155, 169, 170, 177, 183, 190, 203], "summary": {"covered_lines": 54, "num_statements": 55, "percent_covered": 96.82539682539682, "percent_covered_display": "97", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 98.18181818181819, "percent_statements_covered_display": "98", "num_branches": 8, "num_partial_branches": 1, "covered_branches": 7, "missing_branches": 1, "percent_branches_covered": 87.5, "percent_branches_covered_display": "88"}, "missing_lines": [191], "excluded_lines": [], "executed_branches": [[63, 64], [63, 66], [90, 91], [90, 94], [169, 170], [169, 177], [190, 203]], "missing_branches": [[190, 191]], "functions": {"PolygonZone.__init__": {"executed_lines": [61, 62, 63, 64, 66, 68, 69], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 56, "executed_branches": [[63, 64], [63, 66]], "missing_branches": []}, "PolygonZone.trigger": {"executed_lines": [90, 91, 92, 94, 101, 102, 103, 104, 105, 106, 107, 108], "summary": {"covered_lines": 12, "num_statements": 12, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 73, "executed_branches": [[90, 91], [90, 94]], "missing_branches": []}, "PolygonZoneAnnotator.__init__": {"executed_lines": [143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 131, "executed_branches": [], "missing_branches": []}, "PolygonZoneAnnotator.annotate": {"executed_lines": [169, 170, 177, 183, 190, 203], "summary": {"covered_lines": 6, "num_statements": 7, "percent_covered": 81.81818181818181, "percent_covered_display": "82", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 85.71428571428571, "percent_statements_covered_display": "86", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [191], "excluded_lines": [], "start_line": 155, "executed_branches": [[169, 170], [169, 177], [190, 203]], "missing_branches": [[190, 191]]}, "": {"executed_lines": [1, 3, 4, 6, 7, 8, 10, 11, 12, 13, 14, 15, 18, 56, 73, 111, 131, 155], "summary": {"covered_lines": 18, "num_statements": 18, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"PolygonZone": {"executed_lines": [61, 62, 63, 64, 66, 68, 69, 90, 91, 92, 94, 101, 102, 103, 104, 105, 106, 107, 108], "summary": {"covered_lines": 19, "num_statements": 19, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 18, "executed_branches": [[63, 64], [63, 66], [90, 91], [90, 94]], "missing_branches": []}, "PolygonZoneAnnotator": {"executed_lines": [143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 169, 170, 177, 183, 190, 203], "summary": {"covered_lines": 17, "num_statements": 18, "percent_covered": 90.9090909090909, "percent_covered_display": "91", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 94.44444444444444, "percent_statements_covered_display": "94", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [191], "excluded_lines": [], "start_line": 111, "executed_branches": [[169, 170], [169, 177], [190, 203]], "missing_branches": [[190, 191]]}, "": {"executed_lines": [1, 3, 4, 6, 7, 8, 10, 11, 12, 13, 14, 15, 18, 56, 73, 111, 131, 155], "summary": {"covered_lines": 18, "num_statements": 18, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "src\\supervision\\detection\\tools\\smoother.py": {"executed_lines": [1, 3, 4, 5, 6, 8, 10, 11, 14, 90, 96, 100, 108, 109, 115, 117, 118, 119, 121, 123, 124, 125, 127, 128, 131, 133, 148, 149, 152, 153, 156, 157, 161, 162, 164, 166, 167, 168, 169, 170, 171, 176, 177, 178, 180, 181, 184], "summary": {"covered_lines": 47, "num_statements": 51, "percent_covered": 88.31168831168831, "percent_covered_display": "88", "missing_lines": 4, "excluded_lines": 0, "percent_statements_covered": 92.15686274509804, "percent_statements_covered_display": "92", "num_branches": 26, "num_partial_branches": 5, "covered_branches": 21, "missing_branches": 5, "percent_branches_covered": 80.76923076923077, "percent_branches_covered_display": "81"}, "missing_lines": [129, 150, 154, 182], "excluded_lines": [], "executed_branches": [[108, 109], [108, 117], [117, 118], [117, 123], [123, 124], [123, 127], [124, 123], [124, 125], [127, 128], [127, 131], [128, 127], [149, 152], [153, 156], [168, 169], [168, 176], [170, 171], [176, 177], [176, 180], [177, 178], [177, 180], [181, 184]], "missing_branches": [[128, 129], [149, 150], [153, 154], [170, 168], [181, 182]], "functions": {"DetectionsSmoother.__init__": {"executed_lines": [96], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 90, "executed_branches": [], "missing_branches": []}, "DetectionsSmoother.update_with_detections": {"executed_lines": [108, 109, 115, 117, 118, 119, 121, 123, 124, 125, 127, 128, 131], "summary": {"covered_lines": 13, "num_statements": 14, "percent_covered": 92.3076923076923, "percent_covered_display": "92", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 92.85714285714286, "percent_statements_covered_display": "93", "num_branches": 12, "num_partial_branches": 1, "covered_branches": 11, "missing_branches": 1, "percent_branches_covered": 91.66666666666667, "percent_branches_covered_display": "92"}, "missing_lines": [129], "excluded_lines": [], "start_line": 100, "executed_branches": [[108, 109], [108, 117], [117, 118], [117, 123], [123, 124], [123, 127], [124, 123], [124, 125], [127, 128], [127, 131], [128, 127]], "missing_branches": [[128, 129]]}, "DetectionsSmoother.get_track": {"executed_lines": [148, 149, 152, 153, 156, 157, 161, 162, 164], "summary": {"covered_lines": 9, "num_statements": 11, "percent_covered": 73.33333333333333, "percent_covered_display": "73", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 81.81818181818181, "percent_statements_covered_display": "82", "num_branches": 4, "num_partial_branches": 2, "covered_branches": 2, "missing_branches": 2, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [150, 154], "excluded_lines": [], "start_line": 133, "executed_branches": [[149, 152], [153, 156]], "missing_branches": [[149, 150], [153, 154]]}, "DetectionsSmoother.get_smoothed_detections": {"executed_lines": [167, 168, 169, 170, 171, 176, 177, 178, 180, 181, 184], "summary": {"covered_lines": 11, "num_statements": 12, "percent_covered": 86.36363636363636, "percent_covered_display": "86", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 91.66666666666667, "percent_statements_covered_display": "92", "num_branches": 10, "num_partial_branches": 2, "covered_branches": 8, "missing_branches": 2, "percent_branches_covered": 80.0, "percent_branches_covered_display": "80"}, "missing_lines": [182], "excluded_lines": [], "start_line": 166, "executed_branches": [[168, 169], [168, 176], [170, 171], [176, 177], [176, 180], [177, 178], [177, 180], [181, 184]], "missing_branches": [[170, 168], [181, 182]]}, "": {"executed_lines": [1, 3, 4, 5, 6, 8, 10, 11, 14, 90, 100, 133, 166], "summary": {"covered_lines": 13, "num_statements": 13, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"DetectionsSmoother": {"executed_lines": [96, 108, 109, 115, 117, 118, 119, 121, 123, 124, 125, 127, 128, 131, 148, 149, 152, 153, 156, 157, 161, 162, 164, 167, 168, 169, 170, 171, 176, 177, 178, 180, 181, 184], "summary": {"covered_lines": 34, "num_statements": 38, "percent_covered": 85.9375, "percent_covered_display": "86", "missing_lines": 4, "excluded_lines": 0, "percent_statements_covered": 89.47368421052632, "percent_statements_covered_display": "89", "num_branches": 26, "num_partial_branches": 5, "covered_branches": 21, "missing_branches": 5, "percent_branches_covered": 80.76923076923077, "percent_branches_covered_display": "81"}, "missing_lines": [129, 150, 154, 182], "excluded_lines": [], "start_line": 14, "executed_branches": [[108, 109], [108, 117], [117, 118], [117, 123], [123, 124], [123, 127], [124, 123], [124, 125], [127, 128], [127, 131], [128, 127], [149, 152], [153, 156], [168, 169], [168, 176], [170, 171], [176, 177], [176, 180], [177, 178], [177, 180], [181, 184]], "missing_branches": [[128, 129], [149, 150], [153, 154], [170, 168], [181, 182]]}, "": {"executed_lines": [1, 3, 4, 5, 6, 8, 10, 11, 14, 90, 100, 133, 166], "summary": {"covered_lines": 13, "num_statements": 13, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "src\\supervision\\detection\\tools\\transformers.py": {"executed_lines": [1, 3, 4, 6, 7, 8, 10, 11, 14, 43, 82, 112, 148, 182, 207, 224], "summary": {"covered_lines": 16, "num_statements": 58, "percent_covered": 23.529411764705884, "percent_covered_display": "24", "missing_lines": 42, "excluded_lines": 0, "percent_statements_covered": 27.586206896551722, "percent_statements_covered_display": "28", "num_branches": 10, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 10, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [32, 33, 35, 62, 63, 67, 68, 69, 70, 71, 73, 102, 103, 104, 107, 130, 131, 132, 133, 134, 137, 139, 165, 166, 167, 168, 169, 172, 174, 199, 200, 203, 204, 219, 220, 221, 243, 244, 246, 247, 248, 250], "excluded_lines": [], "executed_branches": [], "missing_branches": [[62, 63], [62, 67], [68, 69], [68, 70], [102, 103], [102, 107], [243, 244], [243, 246], [246, 247], [246, 250]], "functions": {"process_transformers_detection_result": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 3, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [32, 33, 35], "excluded_lines": [], "start_line": 14, "executed_branches": [], "missing_branches": []}, "process_transformers_v4_segmentation_result": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 8, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 8, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 4, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [62, 63, 67, 68, 69, 70, 71, 73], "excluded_lines": [], "start_line": 43, "executed_branches": [], "missing_branches": [[62, 63], [62, 67], [68, 69], [68, 70]]}, "process_transformers_v5_segmentation_result": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 4, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 4, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 2, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [102, 103, 104, 107], "excluded_lines": [], "start_line": 82, "executed_branches": [], "missing_branches": [[102, 103], [102, 107]]}, "process_transformers_v5_semantic_or_instance_segmentation_result": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 7, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 7, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [130, 131, 132, 133, 134, 137, 139], "excluded_lines": [], "start_line": 112, "executed_branches": [], "missing_branches": []}, "process_transformers_v4_panoptic_segmentation_result": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 7, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 7, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [165, 166, 167, 168, 169, 172, 174], "excluded_lines": [], "start_line": 148, "executed_branches": [], "missing_branches": []}, "process_transformers_v5_panoptic_segmentation_result": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 4, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 4, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [199, 200, 203, 204], "excluded_lines": [], "start_line": 182, "executed_branches": [], "missing_branches": []}, "png_string_to_segmentation_array": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 3, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [219, 220, 221], "excluded_lines": [], "start_line": 207, "executed_branches": [], "missing_branches": []}, "append_class_names_to_data": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 6, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 6, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 4, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [243, 244, 246, 247, 248, 250], "excluded_lines": [], "start_line": 224, "executed_branches": [], "missing_branches": [[243, 244], [243, 246], [246, 247], [246, 250]]}, "": {"executed_lines": [1, 3, 4, 6, 7, 8, 10, 11, 14, 43, 82, 112, 148, 182, 207, 224], "summary": {"covered_lines": 16, "num_statements": 16, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 3, 4, 6, 7, 8, 10, 11, 14, 43, 82, 112, 148, 182, 207, 224], "summary": {"covered_lines": 16, "num_statements": 58, "percent_covered": 23.529411764705884, "percent_covered_display": "24", "missing_lines": 42, "excluded_lines": 0, "percent_statements_covered": 27.586206896551722, "percent_statements_covered_display": "28", "num_branches": 10, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 10, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [32, 33, 35, 62, 63, 67, 68, 69, 70, 71, 73, 102, 103, 104, 107, 130, 131, 132, 133, 134, 137, 139, 165, 166, 167, 168, 169, 172, 174, 199, 200, 203, 204, 219, 220, 221, 243, 244, 246, 247, 248, 250], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": [[62, 63], [62, 67], [68, 69], [68, 70], [102, 103], [102, 107], [243, 244], [243, 246], [246, 247], [246, 250]]}}}, "src\\supervision\\detection\\utils\\__init__.py": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "src\\supervision\\detection\\utils\\boxes.py": {"executed_lines": [1, 3, 4, 5, 7, 10, 45, 46, 47, 48, 49, 52, 99, 105, 155, 156, 158, 159, 161, 164, 192, 195, 241, 244, 263, 264, 265, 266, 267, 268, 269, 272, 302, 303, 305, 306, 307, 308, 309, 312, 342, 343, 344, 347], "summary": {"covered_lines": 44, "num_statements": 75, "percent_covered": 54.02298850574713, "percent_covered_display": "54", "missing_lines": 31, "excluded_lines": 0, "percent_statements_covered": 58.666666666666664, "percent_statements_covered_display": "59", "num_branches": 12, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 9, "percent_branches_covered": 25.0, "percent_branches_covered_display": "25"}, "missing_lines": [89, 90, 92, 93, 94, 96, 304, 375, 376, 378, 379, 381, 382, 383, 384, 386, 389, 392, 393, 396, 397, 398, 405, 406, 408, 409, 410, 412, 414, 415, 417], "excluded_lines": [], "executed_branches": [[264, 265], [264, 266], [303, 305]], "missing_branches": [[89, 90], [89, 92], [303, 304], [375, 376], [375, 378], [379, 381], [379, 417], [383, 384], [383, 386]], "functions": {"clip_boxes": {"executed_lines": [45, 46, 47, 48, 49], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 10, "executed_branches": [], "missing_branches": []}, "pad_boxes": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 6, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 6, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 2, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [89, 90, 92, 93, 94, 96], "excluded_lines": [], "start_line": 52, "executed_branches": [], "missing_branches": [[89, 90], [89, 92]]}, "denormalize_boxes": {"executed_lines": [155, 156, 158, 159, 161], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 105, "executed_branches": [], "missing_branches": []}, "move_boxes": {"executed_lines": [192], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 164, "executed_branches": [], "missing_branches": []}, "move_oriented_boxes": {"executed_lines": [241], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 195, "executed_branches": [], "missing_branches": []}, "obb_polygon_area": {"executed_lines": [263, 264, 265, 266, 267, 268, 269], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 244, "executed_branches": [[264, 265], [264, 266]], "missing_branches": []}, "xyxyxyxy_to_xyxy": {"executed_lines": [302, 303, 305, 306, 307, 308, 309], "summary": {"covered_lines": 7, "num_statements": 8, "percent_covered": 80.0, "percent_covered_display": "80", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 87.5, "percent_statements_covered_display": "88", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [304], "excluded_lines": [], "start_line": 272, "executed_branches": [[303, 305]], "missing_branches": [[303, 304]]}, "scale_boxes": {"executed_lines": [342, 343, 344], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 312, "executed_branches": [], "missing_branches": []}, "spread_out_boxes": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 24, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 24, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 6, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [375, 376, 378, 379, 381, 382, 383, 384, 386, 389, 392, 393, 396, 397, 398, 405, 406, 408, 409, 410, 412, 414, 415, 417], "excluded_lines": [], "start_line": 347, "executed_branches": [], "missing_branches": [[375, 376], [375, 378], [379, 381], [379, 417], [383, 384], [383, 386]]}, "": {"executed_lines": [1, 3, 4, 5, 7, 10, 52, 99, 105, 164, 195, 244, 272, 312, 347], "summary": {"covered_lines": 15, "num_statements": 15, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 3, 4, 5, 7, 10, 45, 46, 47, 48, 49, 52, 99, 105, 155, 156, 158, 159, 161, 164, 192, 195, 241, 244, 263, 264, 265, 266, 267, 268, 269, 272, 302, 303, 305, 306, 307, 308, 309, 312, 342, 343, 344, 347], "summary": {"covered_lines": 44, "num_statements": 75, "percent_covered": 54.02298850574713, "percent_covered_display": "54", "missing_lines": 31, "excluded_lines": 0, "percent_statements_covered": 58.666666666666664, "percent_statements_covered_display": "59", "num_branches": 12, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 9, "percent_branches_covered": 25.0, "percent_branches_covered_display": "25"}, "missing_lines": [89, 90, 92, 93, 94, 96, 304, 375, 376, 378, 379, 381, 382, 383, 384, 386, 389, 392, 393, 396, 397, 398, 405, 406, 408, 409, 410, 412, 414, 415, 417], "excluded_lines": [], "start_line": 1, "executed_branches": [[264, 265], [264, 266], [303, 305]], "missing_branches": [[89, 90], [89, 92], [303, 304], [375, 376], [375, 378], [379, 381], [379, 417], [383, 384], [383, 386]]}}}, "src\\supervision\\detection\\utils\\converters.py": {"executed_lines": [1, 3, 5, 6, 7, 9, 12, 25, 26, 27, 28, 31, 46, 47, 48, 49, 52, 79, 80, 81, 82, 85, 113, 114, 115, 116, 119, 147, 148, 149, 150, 151, 152, 155, 183, 184, 186, 187, 188, 189, 190, 192, 198, 199, 202, 227, 228, 229, 234, 235, 237, 238, 239, 240, 242, 244, 245, 248, 291, 292, 293, 295, 296, 297, 298, 299, 301, 302, 304, 307, 322, 325, 332, 360, 361, 362, 363, 364, 365, 366, 367, 368, 371, 372, 373, 374, 375, 376, 377, 378, 379, 382, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 418, 439, 440, 441, 442, 445, 465, 466, 467, 468, 471, 494, 497, 523, 524, 525, 527, 528, 529, 530, 532, 533, 535, 538, 565, 566, 567, 568, 569, 570, 575, 627, 628, 629, 630, 633, 634, 636, 638, 640, 641, 646, 649, 715, 716, 718, 719, 720, 721, 724, 736, 737, 738], "summary": {"covered_lines": 156, "num_statements": 156, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 42, "num_partial_branches": 0, "covered_branches": 42, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [[183, 184], [183, 186], [228, 229], [228, 234], [295, 296], [295, 304], [301, 295], [301, 302], [362, 363], [362, 379], [366, 367], [366, 378], [367, 368], [367, 371], [376, 366], [376, 377], [406, 407], [406, 415], [408, 406], [408, 409], [412, 413], [412, 414], [440, 441], [440, 442], [466, 467], [466, 468], [524, 525], [524, 527], [532, 533], [532, 535], [568, 569], [568, 570], [627, 628], [627, 629], [629, 630], [629, 633], [633, 634], [633, 636], [640, 641], [640, 646], [719, 720], [719, 721]], "missing_branches": [], "functions": {"xyxy_to_polygons": {"executed_lines": [25, 26, 27, 28], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 12, "executed_branches": [], "missing_branches": []}, "polygon_to_mask": {"executed_lines": [46, 47, 48, 49], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 31, "executed_branches": [], "missing_branches": []}, "xywh_to_xyxy": {"executed_lines": [79, 80, 81, 82], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 52, "executed_branches": [], "missing_branches": []}, "xyxy_to_xywh": {"executed_lines": [113, 114, 115, 116], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 85, "executed_branches": [], "missing_branches": []}, "xcycwh_to_xyxy": {"executed_lines": [147, 148, 149, 150, 151, 152], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 119, "executed_branches": [], "missing_branches": []}, "xyxy_to_xcycarh": {"executed_lines": [183, 184, 186, 187, 188, 189, 190, 192, 198, 199], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 155, "executed_branches": [[183, 184], [183, 186]], "missing_branches": []}, "mask_to_xyxy": {"executed_lines": [227, 228, 229, 234, 235, 237, 238, 239, 240, 242, 244, 245], "summary": {"covered_lines": 12, "num_statements": 12, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 202, "executed_branches": [[228, 229], [228, 234]], "missing_branches": []}, "xyxy_to_mask": {"executed_lines": [291, 292, 293, 295, 296, 297, 298, 299, 301, 302, 304], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 248, "executed_branches": [[295, 296], [295, 304], [301, 295], [301, 302]], "missing_branches": []}, "mask_to_polygons": {"executed_lines": [322, 325], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 307, "executed_branches": [], "missing_branches": []}, "_base48_decode": {"executed_lines": [360, 361, 362, 363, 364, 365, 366, 367, 368, 371, 372, 373, 374, 375, 376, 377, 378, 379], "summary": {"covered_lines": 18, "num_statements": 18, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 8, "num_partial_branches": 0, "covered_branches": 8, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 332, "executed_branches": [[362, 363], [362, 379], [366, 367], [366, 378], [367, 368], [367, 371], [376, 366], [376, 377]], "missing_branches": []}, "_base48_encode": {"executed_lines": [405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 6, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 382, "executed_branches": [[406, 407], [406, 415], [408, 406], [408, 409], [412, 413], [412, 414]], "missing_branches": []}, "_delta_decode": {"executed_lines": [439, 440, 441, 442], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 418, "executed_branches": [[440, 441], [440, 442]], "missing_branches": []}, "_delta_encode": {"executed_lines": [465, 466, 467, 468], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 445, "executed_branches": [[466, 467], [466, 468]], "missing_branches": []}, "is_compressed_rle": {"executed_lines": [494], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 471, "executed_branches": [], "missing_branches": []}, "_mask_to_rle_counts": {"executed_lines": [523, 524, 525, 527, 528, 529, 530, 532, 533, 535], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 497, "executed_branches": [[524, 525], [524, 527], [532, 533], [532, 535]], "missing_branches": []}, "_rle_counts_to_mask": {"executed_lines": [565, 566, 567, 568, 569, 570], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 538, "executed_branches": [[568, 569], [568, 570]], "missing_branches": []}, "rle_to_mask": {"executed_lines": [627, 628, 629, 630, 633, 634, 636, 638, 640, 641, 646], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 8, "num_partial_branches": 0, "covered_branches": 8, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 575, "executed_branches": [[627, 628], [627, 629], [629, 630], [629, 633], [633, 634], [633, 636], [640, 641], [640, 646]], "missing_branches": []}, "mask_to_rle": {"executed_lines": [715, 716, 718, 719, 720, 721], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 649, "executed_branches": [[719, 720], [719, 721]], "missing_branches": []}, "polygon_to_xyxy": {"executed_lines": [736, 737, 738], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 724, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 5, 6, 7, 9, 12, 31, 52, 85, 119, 155, 202, 248, 307, 332, 382, 418, 445, 471, 497, 538, 575, 649, 724], "summary": {"covered_lines": 25, "num_statements": 25, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 3, 5, 6, 7, 9, 12, 25, 26, 27, 28, 31, 46, 47, 48, 49, 52, 79, 80, 81, 82, 85, 113, 114, 115, 116, 119, 147, 148, 149, 150, 151, 152, 155, 183, 184, 186, 187, 188, 189, 190, 192, 198, 199, 202, 227, 228, 229, 234, 235, 237, 238, 239, 240, 242, 244, 245, 248, 291, 292, 293, 295, 296, 297, 298, 299, 301, 302, 304, 307, 322, 325, 332, 360, 361, 362, 363, 364, 365, 366, 367, 368, 371, 372, 373, 374, 375, 376, 377, 378, 379, 382, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 418, 439, 440, 441, 442, 445, 465, 466, 467, 468, 471, 494, 497, 523, 524, 525, 527, 528, 529, 530, 532, 533, 535, 538, 565, 566, 567, 568, 569, 570, 575, 627, 628, 629, 630, 633, 634, 636, 638, 640, 641, 646, 649, 715, 716, 718, 719, 720, 721, 724, 736, 737, 738], "summary": {"covered_lines": 156, "num_statements": 156, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 42, "num_partial_branches": 0, "covered_branches": 42, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [[183, 184], [183, 186], [228, 229], [228, 234], [295, 296], [295, 304], [301, 295], [301, 302], [362, 363], [362, 379], [366, 367], [366, 378], [367, 368], [367, 371], [376, 366], [376, 377], [406, 407], [406, 415], [408, 406], [408, 409], [412, 413], [412, 414], [440, 441], [440, 442], [466, 467], [466, 468], [524, 525], [524, 527], [532, 533], [532, 535], [568, 569], [568, 570], [627, 628], [627, 629], [629, 630], [629, 633], [633, 634], [633, 636], [640, 641], [640, 646], [719, 720], [719, 721]], "missing_branches": []}}}, "src\\supervision\\detection\\utils\\internal.py": {"executed_lines": [1, 3, 4, 5, 7, 8, 9, 11, 12, 13, 15, 18, 19, 20, 54, 59, 60, 61, 62, 63, 64, 65, 71, 72, 73, 78, 81, 114, 115, 124, 125, 126, 127, 128, 129, 131, 132, 134, 135, 136, 137, 138, 139, 140, 141, 142, 144, 146, 147, 148, 152, 156, 158, 159, 160, 161, 162, 163, 164, 165, 167, 170, 173, 178, 181, 184, 187, 189, 199, 212, 217, 227, 238, 260, 261, 263, 264, 265, 267, 268, 269, 270, 274, 275, 276, 277, 279, 280, 281, 282, 283, 284, 285, 286, 287, 296, 299, 319, 320, 322, 323, 324, 326, 327, 328, 329, 330, 331, 333, 334, 335, 336, 340, 342, 347, 348, 350, 353, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 382, 383, 384, 390, 393, 405, 411, 412], "summary": {"covered_lines": 138, "num_statements": 160, "percent_covered": 85.83333333333333, "percent_covered_display": "86", "missing_lines": 22, "excluded_lines": 0, "percent_statements_covered": 86.25, "percent_statements_covered_display": "86", "num_branches": 80, "num_partial_branches": 6, "covered_branches": 68, "missing_branches": 12, "percent_branches_covered": 85.0, "percent_branches_covered_display": "85"}, "missing_lines": [22, 23, 25, 27, 28, 32, 37, 38, 40, 41, 42, 43, 44, 46, 47, 49, 51, 66, 289, 291, 386, 388], "excluded_lines": [], "executed_branches": [[19, 20], [60, 61], [60, 62], [65, 71], [114, 115], [114, 124], [134, 135], [134, 167], [146, 147], [146, 158], [147, 148], [147, 156], [162, 163], [162, 164], [164, 134], [164, 165], [260, 261], [260, 263], [264, 265], [264, 267], [267, 268], [267, 274], [269, 267], [269, 270], [275, 276], [275, 279], [276, 275], [276, 277], [279, 280], [279, 296], [280, 281], [280, 282], [282, 283], [284, 285], [284, 286], [286, 287], [319, 320], [319, 322], [323, 324], [323, 326], [327, 328], [327, 350], [328, 327], [328, 329], [329, 330], [329, 333], [334, 335], [334, 340], [335, 328], [335, 336], [340, 342], [340, 347], [347, 328], [347, 348], [368, 369], [368, 390], [369, 370], [369, 371], [371, 372], [372, 373], [372, 374], [374, 375], [374, 376], [376, 377], [376, 383], [377, 378], [377, 382], [383, 384]], "missing_branches": [[19, 22], [27, 28], [27, 37], [42, 43], [42, 51], [46, 47], [46, 49], [65, 66], [282, 291], [286, 289], [371, 388], [383, 386]], "functions": {"extract_ultralytics_masks": {"executed_lines": [19, 20], "summary": {"covered_lines": 2, "num_statements": 19, "percent_covered": 11.11111111111111, "percent_covered_display": "11", "missing_lines": 17, "excluded_lines": 0, "percent_statements_covered": 10.526315789473685, "percent_statements_covered_display": "11", "num_branches": 8, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 7, "percent_branches_covered": 12.5, "percent_branches_covered_display": "12"}, "missing_lines": [22, 23, 25, 27, 28, 32, 37, 38, 40, 41, 42, 43, 44, 46, 47, 49, 51], "excluded_lines": [], "start_line": 18, "executed_branches": [[19, 20]], "missing_branches": [[19, 22], [27, 28], [27, 37], [42, 43], [42, 51], [46, 47], [46, 49]]}, "_decode_rle_mask": {"executed_lines": [59, 60, 61, 62, 63, 64, 65, 71, 72, 73, 78], "summary": {"covered_lines": 11, "num_statements": 12, "percent_covered": 87.5, "percent_covered_display": "88", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 91.66666666666667, "percent_statements_covered_display": "92", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [66], "excluded_lines": [], "start_line": 54, "executed_branches": [[60, 61], [60, 62], [65, 71]], "missing_branches": [[65, 66]]}, "process_roboflow_result": {"executed_lines": [114, 115, 124, 125, 126, 127, 128, 129, 131, 132, 134, 135, 136, 137, 138, 139, 140, 141, 142, 144, 146, 147, 148, 152, 156, 158, 159, 160, 161, 162, 163, 164, 165, 167, 170, 173, 178, 181, 184, 187, 189], "summary": {"covered_lines": 41, "num_statements": 41, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 12, "num_partial_branches": 0, "covered_branches": 12, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 81, "executed_branches": [[114, 115], [114, 124], [134, 135], [134, 167], [146, 147], [146, 158], [147, 148], [147, 156], [162, 163], [162, 164], [164, 134], [164, 165]], "missing_branches": []}, "is_data_equal": {"executed_lines": [212], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 199, "executed_branches": [], "missing_branches": []}, "is_metadata_equal": {"executed_lines": [227], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 217, "executed_branches": [], "missing_branches": []}, "merge_data": {"executed_lines": [260, 261, 263, 264, 265, 267, 268, 269, 270, 274, 275, 276, 277, 279, 280, 281, 282, 283, 284, 285, 286, 287, 296], "summary": {"covered_lines": 23, "num_statements": 25, "percent_covered": 91.48936170212765, "percent_covered_display": "91", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 92.0, "percent_statements_covered_display": "92", "num_branches": 22, "num_partial_branches": 2, "covered_branches": 20, "missing_branches": 2, "percent_branches_covered": 90.9090909090909, "percent_branches_covered_display": "91"}, "missing_lines": [289, 291], "excluded_lines": [], "start_line": 238, "executed_branches": [[260, 261], [260, 263], [264, 265], [264, 267], [267, 268], [267, 274], [269, 267], [269, 270], [275, 276], [275, 279], [276, 275], [276, 277], [279, 280], [279, 296], [280, 281], [280, 282], [282, 283], [284, 285], [284, 286], [286, 287]], "missing_branches": [[282, 291], [286, 289]]}, "merge_metadata": {"executed_lines": [319, 320, 322, 323, 324, 326, 327, 328, 329, 330, 331, 333, 334, 335, 336, 340, 342, 347, 348, 350], "summary": {"covered_lines": 20, "num_statements": 20, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 18, "num_partial_branches": 0, "covered_branches": 18, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 299, "executed_branches": [[319, 320], [319, 322], [323, 324], [323, 326], [327, 328], [327, 350], [328, 327], [328, 329], [329, 330], [329, 333], [334, 335], [334, 340], [335, 328], [335, 336], [340, 342], [340, 347], [347, 328], [347, 348]], "missing_branches": []}, "get_data_item": {"executed_lines": [367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 382, 383, 384, 390], "summary": {"covered_lines": 16, "num_statements": 18, "percent_covered": 88.23529411764706, "percent_covered_display": "88", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 88.88888888888889, "percent_statements_covered_display": "89", "num_branches": 16, "num_partial_branches": 2, "covered_branches": 14, "missing_branches": 2, "percent_branches_covered": 87.5, "percent_branches_covered_display": "88"}, "missing_lines": [386, 388], "excluded_lines": [], "start_line": 353, "executed_branches": [[368, 369], [368, 390], [369, 370], [369, 371], [371, 372], [372, 373], [372, 374], [374, 375], [374, 376], [376, 377], [376, 383], [377, 378], [377, 382], [383, 384]], "missing_branches": [[371, 388], [383, 386]]}, "cross_product": {"executed_lines": [405, 411, 412], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 393, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 5, 7, 8, 9, 11, 12, 13, 15, 18, 54, 81, 199, 217, 238, 299, 353, 393], "summary": {"covered_lines": 20, "num_statements": 20, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 3, 4, 5, 7, 8, 9, 11, 12, 13, 15, 18, 19, 20, 54, 59, 60, 61, 62, 63, 64, 65, 71, 72, 73, 78, 81, 114, 115, 124, 125, 126, 127, 128, 129, 131, 132, 134, 135, 136, 137, 138, 139, 140, 141, 142, 144, 146, 147, 148, 152, 156, 158, 159, 160, 161, 162, 163, 164, 165, 167, 170, 173, 178, 181, 184, 187, 189, 199, 212, 217, 227, 238, 260, 261, 263, 264, 265, 267, 268, 269, 270, 274, 275, 276, 277, 279, 280, 281, 282, 283, 284, 285, 286, 287, 296, 299, 319, 320, 322, 323, 324, 326, 327, 328, 329, 330, 331, 333, 334, 335, 336, 340, 342, 347, 348, 350, 353, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 382, 383, 384, 390, 393, 405, 411, 412], "summary": {"covered_lines": 138, "num_statements": 160, "percent_covered": 85.83333333333333, "percent_covered_display": "86", "missing_lines": 22, "excluded_lines": 0, "percent_statements_covered": 86.25, "percent_statements_covered_display": "86", "num_branches": 80, "num_partial_branches": 6, "covered_branches": 68, "missing_branches": 12, "percent_branches_covered": 85.0, "percent_branches_covered_display": "85"}, "missing_lines": [22, 23, 25, 27, 28, 32, 37, 38, 40, 41, 42, 43, 44, 46, 47, 49, 51, 66, 289, 291, 386, 388], "excluded_lines": [], "start_line": 1, "executed_branches": [[19, 20], [60, 61], [60, 62], [65, 71], [114, 115], [114, 124], [134, 135], [134, 167], [146, 147], [146, 158], [147, 148], [147, 156], [162, 163], [162, 164], [164, 134], [164, 165], [260, 261], [260, 263], [264, 265], [264, 267], [267, 268], [267, 274], [269, 267], [269, 270], [275, 276], [275, 279], [276, 275], [276, 277], [279, 280], [279, 296], [280, 281], [280, 282], [282, 283], [284, 285], [284, 286], [286, 287], [319, 320], [319, 322], [323, 324], [323, 326], [327, 328], [327, 350], [328, 327], [328, 329], [329, 330], [329, 333], [334, 335], [334, 340], [335, 328], [335, 336], [340, 342], [340, 347], [347, 328], [347, 348], [368, 369], [368, 390], [369, 370], [369, 371], [371, 372], [372, 373], [372, 374], [374, 375], [374, 376], [376, 377], [376, 383], [377, 378], [377, 382], [383, 384]], "missing_branches": [[19, 22], [27, 28], [27, 37], [42, 43], [42, 51], [46, 47], [46, 49], [65, 66], [282, 291], [286, 289], [371, 388], [383, 386]]}}}, "src\\supervision\\detection\\utils\\iou_and_nms.py": {"executed_lines": [1, 3, 4, 5, 6, 8, 9, 10, 12, 13, 16, 30, 31, 32, 34, 35, 38, 39, 40, 41, 54, 67, 68, 70, 71, 72, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 90, 129, 130, 131, 133, 134, 135, 136, 138, 139, 141, 143, 144, 146, 147, 148, 149, 156, 157, 159, 162, 218, 219, 220, 221, 223, 224, 228, 229, 230, 231, 233, 234, 235, 236, 239, 240, 241, 242, 244, 246, 247, 249, 250, 251, 252, 259, 260, 261, 264, 280, 282, 283, 286, 288, 290, 291, 294, 295, 296, 298, 301, 304, 349, 352, 353, 354, 357, 358, 359, 360, 363, 372, 373, 374, 375, 378, 387, 388, 389, 394, 418, 419, 420, 423, 426, 492, 493, 494, 498, 499, 503, 504, 508, 509, 510, 511, 513, 520, 521, 522, 524, 525, 526, 528, 529, 531, 532, 535, 536, 537, 538, 540, 541, 543, 544, 545, 548, 549, 550, 555, 556, 557, 558, 559, 566, 569, 599, 600, 601, 603, 604, 606, 607, 611, 612, 613, 614, 615, 617, 618, 619, 620, 621, 624, 625, 626, 627, 628, 631, 632, 634, 635, 637, 638, 639, 640, 642, 643, 644, 645, 647, 648, 650, 651, 653, 654, 655, 657, 658, 659, 660, 661, 662, 669, 672, 695, 696, 697, 700, 703, 704, 706, 707, 709, 710, 711, 717, 719, 720, 732, 733, 736, 774, 775, 778, 779, 780, 781, 783, 784, 788, 789, 794, 795, 802, 803, 804, 805, 806, 807, 808, 815, 816, 818, 819, 820, 821, 829, 832, 870, 874, 876, 877, 879, 880, 881, 883, 884, 886, 887, 888, 889, 892, 896, 899, 907, 908, 909, 910, 911, 912, 913, 916, 927, 928, 929, 930, 931, 932, 933, 934, 935, 938, 963, 967, 968, 969, 970, 973, 997, 999, 1000, 1002, 1003, 1005, 1006, 1007, 1008, 1010, 1011, 1012, 1013, 1014, 1015, 1016, 1017, 1018, 1023, 1024, 1026, 1027, 1030, 1066, 1073, 1075, 1076, 1078, 1079, 1083, 1084, 1085, 1086, 1087, 1094, 1095, 1097, 1098, 1102, 1105, 1119, 1120, 1121, 1122, 1123, 1124, 1125, 1126, 1127, 1128, 1129, 1130, 1131, 1132, 1133, 1136, 1148, 1149, 1150, 1154, 1155, 1156, 1157, 1158, 1159, 1161, 1162, 1166, 1169, 1192, 1195, 1201, 1206, 1230, 1231, 1235, 1238, 1295, 1299, 1300, 1301, 1305, 1306, 1311, 1316, 1320, 1321, 1325, 1326, 1328, 1329, 1330, 1333, 1344, 1347, 1353, 1358, 1414, 1415, 1416, 1420, 1421, 1426, 1431, 1435, 1440, 1445, 1446, 1453], "summary": {"covered_lines": 405, "num_statements": 430, "percent_covered": 92.20338983050847, "percent_covered_display": "92", "missing_lines": 25, "excluded_lines": 0, "percent_statements_covered": 94.18604651162791, "percent_statements_covered_display": "94", "num_branches": 160, "num_partial_branches": 19, "covered_branches": 139, "missing_branches": 21, "percent_branches_covered": 86.875, "percent_branches_covered_display": "87"}, "missing_lines": [36, 42, 43, 44, 45, 46, 47, 48, 84, 151, 254, 299, 664, 727, 1099, 1163, 1302, 1307, 1312, 1317, 1417, 1422, 1427, 1432, 1436], "excluded_lines": [], "executed_branches": [[40, 41], [76, 77], [76, 78], [78, 79], [146, 147], [146, 148], [148, 149], [156, 157], [156, 159], [223, 224], [223, 228], [249, 250], [249, 251], [251, 252], [298, 301], [352, 353], [352, 354], [357, 358], [357, 360], [358, 357], [358, 359], [492, 493], [492, 508], [493, 494], [493, 498], [498, 499], [498, 503], [503, 492], [503, 504], [508, 509], [508, 510], [510, 511], [510, 513], [525, 526], [525, 528], [536, 537], [536, 540], [544, 545], [544, 566], [548, 549], [548, 550], [555, 556], [558, 544], [558, 559], [603, 604], [603, 606], [634, 635], [634, 669], [637, 638], [637, 639], [639, 640], [639, 642], [657, 658], [657, 660], [660, 661], [709, 710], [709, 717], [717, 719], [774, 775], [774, 778], [778, 779], [778, 780], [780, 781], [780, 783], [783, 784], [783, 788], [788, 789], [788, 794], [794, 795], [794, 802], [807, 808], [807, 815], [815, 816], [815, 818], [820, 821], [820, 829], [876, 877], [876, 879], [887, 888], [887, 896], [888, 887], [888, 889], [908, 909], [908, 910], [930, 931], [930, 935], [931, 932], [931, 933], [1002, 1003], [1002, 1027], [1006, 1007], [1006, 1010], [1012, 1013], [1012, 1026], [1015, 1016], [1015, 1017], [1066, 1073], [1066, 1075], [1078, 1079], [1078, 1083], [1085, 1086], [1085, 1097], [1094, 1085], [1094, 1095], [1097, 1098], [1097, 1102], [1098, 1097], [1122, 1123], [1122, 1133], [1125, 1126], [1125, 1128], [1148, 1149], [1148, 1154], [1156, 1157], [1156, 1161], [1158, 1156], [1158, 1159], [1161, 1162], [1161, 1166], [1162, 1161], [1299, 1300], [1299, 1320], [1300, 1301], [1300, 1306], [1301, 1305], [1306, 1311], [1311, 1316], [1316, 1299], [1320, 1321], [1320, 1325], [1414, 1415], [1414, 1435], [1415, 1416], [1415, 1421], [1416, 1420], [1421, 1426], [1426, 1431], [1431, 1414], [1435, 1440]], "missing_branches": [[40, 42], [42, 43], [42, 48], [78, 84], [148, 151], [251, 254], [298, 299], [555, 544], [660, 664], [717, 727], [1098, 1099], [1162, 1163], [1301, 1302], [1306, 1307], [1311, 1312], [1316, 1317], [1416, 1417], [1421, 1422], [1426, 1427], [1431, 1432], [1435, 1436]], "functions": {"OverlapFilter.list": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [36], "excluded_lines": [], "start_line": 35, "executed_branches": [], "missing_branches": []}, "OverlapFilter.from_value": {"executed_lines": [40, 41], "summary": {"covered_lines": 2, "num_statements": 9, "percent_covered": 23.076923076923077, "percent_covered_display": "23", "missing_lines": 7, "excluded_lines": 0, "percent_statements_covered": 22.22222222222222, "percent_statements_covered_display": "22", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 3, "percent_branches_covered": 25.0, "percent_branches_covered_display": "25"}, "missing_lines": [42, 43, 44, 45, 46, 47, 48], "excluded_lines": [], "start_line": 39, "executed_branches": [[40, 41]], "missing_branches": [[40, 42], [42, 43], [42, 48]]}, "OverlapMetric.list": {"executed_lines": [72], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 71, "executed_branches": [], "missing_branches": []}, "OverlapMetric.from_value": {"executed_lines": [76, 77, 78, 79, 80, 81, 82, 83], "summary": {"covered_lines": 8, "num_statements": 9, "percent_covered": 84.61538461538461, "percent_covered_display": "85", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 88.88888888888889, "percent_statements_covered_display": "89", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [84], "excluded_lines": [], "start_line": 75, "executed_branches": [[76, 77], [76, 78], [78, 79]], "missing_branches": [[78, 84]]}, "box_iou": {"executed_lines": [129, 130, 131, 133, 134, 135, 136, 138, 139, 141, 143, 144, 146, 147, 148, 149, 156, 157, 159], "summary": {"covered_lines": 19, "num_statements": 20, "percent_covered": 92.3076923076923, "percent_covered_display": "92", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 95.0, "percent_statements_covered_display": "95", "num_branches": 6, "num_partial_branches": 1, "covered_branches": 5, "missing_branches": 1, "percent_branches_covered": 83.33333333333333, "percent_branches_covered_display": "83"}, "missing_lines": [151], "excluded_lines": [], "start_line": 90, "executed_branches": [[146, 147], [146, 148], [148, 149], [156, 157], [156, 159]], "missing_branches": [[148, 151]]}, "box_iou_batch": {"executed_lines": [218, 219, 220, 221, 223, 224, 228, 229, 230, 231, 233, 234, 235, 236, 239, 240, 241, 242, 244, 246, 247, 249, 250, 251, 252, 259, 260, 261], "summary": {"covered_lines": 28, "num_statements": 29, "percent_covered": 94.28571428571429, "percent_covered_display": "94", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 96.55172413793103, "percent_statements_covered_display": "97", "num_branches": 6, "num_partial_branches": 1, "covered_branches": 5, "missing_branches": 1, "percent_branches_covered": 83.33333333333333, "percent_branches_covered_display": "83"}, "missing_lines": [254], "excluded_lines": [], "start_line": 162, "executed_branches": [[223, 224], [223, 228], [249, 250], [249, 251], [251, 252]], "missing_branches": [[251, 254]]}, "_jaccard": {"executed_lines": [280, 282, 283, 286, 288, 290, 291, 294, 295, 296, 298, 301], "summary": {"covered_lines": 12, "num_statements": 13, "percent_covered": 86.66666666666667, "percent_covered_display": "87", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 92.3076923076923, "percent_statements_covered_display": "92", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [299], "excluded_lines": [], "start_line": 264, "executed_branches": [[298, 301]], "missing_branches": [[298, 299]]}, "box_iou_batch_with_jaccard": {"executed_lines": [349, 352, 353, 354, 357, 358, 359, 360], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 6, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 304, "executed_branches": [[352, 353], [352, 354], [357, 358], [357, 360], [358, 357], [358, 359]], "missing_branches": []}, "_polygon_areas": {"executed_lines": [372, 373, 374, 375], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 363, "executed_branches": [], "missing_branches": []}, "_aabb_envelopes": {"executed_lines": [387, 388, 389], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 378, "executed_branches": [], "missing_branches": []}, "_overlapping_envelope_pairs": {"executed_lines": [418, 419, 420, 423], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 394, "executed_branches": [], "missing_branches": []}, "oriented_box_iou_batch": {"executed_lines": [492, 493, 494, 498, 499, 503, 504, 508, 509, 510, 511, 513, 520, 521, 522, 524, 525, 526, 528, 529, 531, 532, 535, 536, 537, 538, 540, 541, 543, 544, 545, 548, 549, 550, 555, 556, 557, 558, 559, 566], "summary": {"covered_lines": 40, "num_statements": 40, "percent_covered": 98.4375, "percent_covered_display": "98", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 24, "num_partial_branches": 1, "covered_branches": 23, "missing_branches": 1, "percent_branches_covered": 95.83333333333333, "percent_branches_covered_display": "96"}, "missing_lines": [], "excluded_lines": [], "start_line": 426, "executed_branches": [[492, 493], [492, 508], [493, 494], [493, 498], [498, 499], [498, 503], [503, 492], [503, 504], [508, 509], [508, 510], [510, 511], [510, 513], [525, 526], [525, 528], [536, 537], [536, 540], [544, 545], [544, 566], [548, 549], [548, 550], [555, 556], [558, 544], [558, 559]], "missing_branches": [[555, 544]]}, "compact_mask_iou_batch": {"executed_lines": [599, 600, 601, 603, 604, 606, 607, 611, 612, 613, 614, 615, 617, 618, 619, 620, 621, 624, 625, 626, 627, 628, 631, 632, 634, 635, 637, 638, 639, 640, 642, 643, 644, 645, 647, 648, 650, 651, 653, 654, 655, 657, 658, 659, 660, 661, 662, 669], "summary": {"covered_lines": 48, "num_statements": 49, "percent_covered": 96.72131147540983, "percent_covered_display": "97", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 97.95918367346938, "percent_statements_covered_display": "98", "num_branches": 12, "num_partial_branches": 1, "covered_branches": 11, "missing_branches": 1, "percent_branches_covered": 91.66666666666667, "percent_branches_covered_display": "92"}, "missing_lines": [664], "excluded_lines": [], "start_line": 569, "executed_branches": [[603, 604], [603, 606], [634, 635], [634, 669], [637, 638], [637, 639], [639, 640], [639, 642], [657, 658], [657, 660], [660, 661]], "missing_branches": [[660, 664]]}, "_mask_iou_batch_split": {"executed_lines": [695, 696, 697, 700, 703, 704, 706, 707, 709, 710, 711, 717, 719, 720, 732, 733], "summary": {"covered_lines": 16, "num_statements": 17, "percent_covered": 90.47619047619048, "percent_covered_display": "90", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 94.11764705882354, "percent_statements_covered_display": "94", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [727], "excluded_lines": [], "start_line": 672, "executed_branches": [[709, 710], [709, 717], [717, 719]], "missing_branches": [[717, 727]]}, "mask_iou_batch": {"executed_lines": [774, 775, 778, 779, 780, 781, 783, 784, 788, 789, 794, 795, 802, 803, 804, 805, 806, 807, 808, 815, 816, 818, 819, 820, 821, 829], "summary": {"covered_lines": 26, "num_statements": 26, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 18, "num_partial_branches": 0, "covered_branches": 18, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 736, "executed_branches": [[774, 775], [774, 778], [778, 779], [778, 780], [780, 781], [780, 783], [783, 784], [783, 788], [788, 789], [788, 794], [794, 795], [794, 802], [807, 808], [807, 815], [815, 816], [815, 818], [820, 821], [820, 829]], "missing_branches": []}, "mask_non_max_suppression": {"executed_lines": [870, 874, 876, 877, 879, 880, 881, 883, 884, 886, 887, 888, 889, 892, 896], "summary": {"covered_lines": 15, "num_statements": 15, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 6, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 832, "executed_branches": [[876, 877], [876, 879], [887, 888], [887, 896], [888, 887], [888, 889]], "missing_branches": []}, "_prepare_predictions_for_nms": {"executed_lines": [907, 908, 909, 910, 911, 912, 913], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 899, "executed_branches": [[908, 909], [908, 910]], "missing_branches": []}, "_nms_loop_from_iou_matrix": {"executed_lines": [927, 928, 929, 930, 931, 932, 933, 934, 935], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 916, "executed_branches": [[930, 931], [930, 935], [931, 932], [931, 933]], "missing_branches": []}, "box_non_max_suppression": {"executed_lines": [963, 967, 968, 969, 970], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 938, "executed_branches": [], "missing_branches": []}, "_group_overlapping_masks": {"executed_lines": [997, 999, 1000, 1002, 1003, 1005, 1006, 1007, 1008, 1010, 1011, 1012, 1013, 1014, 1015, 1016, 1017, 1018, 1023, 1024, 1026, 1027], "summary": {"covered_lines": 22, "num_statements": 22, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 8, "num_partial_branches": 0, "covered_branches": 8, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 973, "executed_branches": [[1002, 1003], [1002, 1027], [1006, 1007], [1006, 1010], [1012, 1013], [1012, 1026], [1015, 1016], [1015, 1017]], "missing_branches": []}, "mask_non_max_merge": {"executed_lines": [1066, 1073, 1075, 1076, 1078, 1079, 1083, 1084, 1085, 1086, 1087, 1094, 1095, 1097, 1098, 1102], "summary": {"covered_lines": 16, "num_statements": 17, "percent_covered": 93.10344827586206, "percent_covered_display": "93", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 94.11764705882354, "percent_statements_covered_display": "94", "num_branches": 12, "num_partial_branches": 1, "covered_branches": 11, "missing_branches": 1, "percent_branches_covered": 91.66666666666667, "percent_branches_covered_display": "92"}, "missing_lines": [1099], "excluded_lines": [], "start_line": 1030, "executed_branches": [[1066, 1073], [1066, 1075], [1078, 1079], [1078, 1083], [1085, 1086], [1085, 1097], [1094, 1085], [1094, 1095], [1097, 1098], [1097, 1102], [1098, 1097]], "missing_branches": [[1098, 1099]]}, "_greedy_nmm_via_iou_callback": {"executed_lines": [1119, 1120, 1121, 1122, 1123, 1124, 1125, 1126, 1127, 1128, 1129, 1130, 1131, 1132, 1133], "summary": {"covered_lines": 15, "num_statements": 15, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1105, "executed_branches": [[1122, 1123], [1122, 1133], [1125, 1126], [1125, 1128]], "missing_branches": []}, "_non_max_merge_per_category": {"executed_lines": [1148, 1149, 1150, 1154, 1155, 1156, 1157, 1158, 1159, 1161, 1162, 1166], "summary": {"covered_lines": 12, "num_statements": 13, "percent_covered": 91.30434782608695, "percent_covered_display": "91", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 92.3076923076923, "percent_statements_covered_display": "92", "num_branches": 10, "num_partial_branches": 1, "covered_branches": 9, "missing_branches": 1, "percent_branches_covered": 90.0, "percent_branches_covered_display": "90"}, "missing_lines": [1163], "excluded_lines": [], "start_line": 1136, "executed_branches": [[1148, 1149], [1148, 1154], [1156, 1157], [1156, 1161], [1158, 1156], [1158, 1159], [1161, 1162], [1161, 1166], [1162, 1161]], "missing_branches": [[1162, 1163]]}, "_group_overlapping_boxes": {"executed_lines": [1192, 1201], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1169, "executed_branches": [], "missing_branches": []}, "_group_overlapping_boxes.iou_against_candidate": {"executed_lines": [1195], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1192, "executed_branches": [], "missing_branches": []}, "box_non_max_merge": {"executed_lines": [1230, 1235], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1206, "executed_branches": [], "missing_branches": []}, "box_non_max_merge.group_within": {"executed_lines": [1231], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1230, "executed_branches": [], "missing_branches": []}, "oriented_box_non_max_suppression": {"executed_lines": [1295, 1299, 1300, 1301, 1305, 1306, 1311, 1316, 1320, 1321, 1325, 1326, 1328, 1329, 1330], "summary": {"covered_lines": 15, "num_statements": 19, "percent_covered": 75.75757575757575, "percent_covered_display": "76", "missing_lines": 4, "excluded_lines": 0, "percent_statements_covered": 78.94736842105263, "percent_statements_covered_display": "79", "num_branches": 14, "num_partial_branches": 4, "covered_branches": 10, "missing_branches": 4, "percent_branches_covered": 71.42857142857143, "percent_branches_covered_display": "71"}, "missing_lines": [1302, 1307, 1312, 1317], "excluded_lines": [], "start_line": 1238, "executed_branches": [[1299, 1300], [1299, 1320], [1300, 1301], [1300, 1306], [1301, 1305], [1306, 1311], [1311, 1316], [1316, 1299], [1320, 1321], [1320, 1325]], "missing_branches": [[1301, 1302], [1306, 1307], [1311, 1312], [1316, 1317]]}, "_group_overlapping_oriented_boxes": {"executed_lines": [1344, 1353], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1333, "executed_branches": [], "missing_branches": []}, "_group_overlapping_oriented_boxes.iou_against_candidate": {"executed_lines": [1347], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1344, "executed_branches": [], "missing_branches": []}, "oriented_box_non_max_merge": {"executed_lines": [1414, 1415, 1416, 1420, 1421, 1426, 1431, 1435, 1440, 1445, 1453], "summary": {"covered_lines": 11, "num_statements": 16, "percent_covered": 66.66666666666667, "percent_covered_display": "67", "missing_lines": 5, "excluded_lines": 0, "percent_statements_covered": 68.75, "percent_statements_covered_display": "69", "num_branches": 14, "num_partial_branches": 5, "covered_branches": 9, "missing_branches": 5, "percent_branches_covered": 64.28571428571429, "percent_branches_covered_display": "64"}, "missing_lines": [1417, 1422, 1427, 1432, 1436], "excluded_lines": [], "start_line": 1358, "executed_branches": [[1414, 1415], [1414, 1435], [1415, 1416], [1415, 1421], [1416, 1420], [1421, 1426], [1426, 1431], [1431, 1414], [1435, 1440]], "missing_branches": [[1416, 1417], [1421, 1422], [1426, 1427], [1431, 1432], [1435, 1436]]}, "oriented_box_non_max_merge.group_within": {"executed_lines": [1446], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1445, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 5, 6, 8, 9, 10, 12, 13, 16, 30, 31, 32, 34, 35, 38, 39, 54, 67, 68, 70, 71, 74, 75, 90, 162, 264, 304, 363, 378, 394, 426, 569, 672, 736, 832, 899, 916, 938, 973, 1030, 1105, 1136, 1169, 1206, 1238, 1333, 1358], "summary": {"covered_lines": 49, "num_statements": 49, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"OverlapFilter": {"executed_lines": [40, 41], "summary": {"covered_lines": 2, "num_statements": 10, "percent_covered": 21.428571428571427, "percent_covered_display": "21", "missing_lines": 8, "excluded_lines": 0, "percent_statements_covered": 20.0, "percent_statements_covered_display": "20", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 3, "percent_branches_covered": 25.0, "percent_branches_covered_display": "25"}, "missing_lines": [36, 42, 43, 44, 45, 46, 47, 48], "excluded_lines": [], "start_line": 16, "executed_branches": [[40, 41]], "missing_branches": [[40, 42], [42, 43], [42, 48]]}, "OverlapMetric": {"executed_lines": [72, 76, 77, 78, 79, 80, 81, 82, 83], "summary": {"covered_lines": 9, "num_statements": 10, "percent_covered": 85.71428571428571, "percent_covered_display": "86", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 90.0, "percent_statements_covered_display": "90", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [84], "excluded_lines": [], "start_line": 54, "executed_branches": [[76, 77], [76, 78], [78, 79]], "missing_branches": [[78, 84]]}, "": {"executed_lines": [1, 3, 4, 5, 6, 8, 9, 10, 12, 13, 16, 30, 31, 32, 34, 35, 38, 39, 54, 67, 68, 70, 71, 74, 75, 90, 129, 130, 131, 133, 134, 135, 136, 138, 139, 141, 143, 144, 146, 147, 148, 149, 156, 157, 159, 162, 218, 219, 220, 221, 223, 224, 228, 229, 230, 231, 233, 234, 235, 236, 239, 240, 241, 242, 244, 246, 247, 249, 250, 251, 252, 259, 260, 261, 264, 280, 282, 283, 286, 288, 290, 291, 294, 295, 296, 298, 301, 304, 349, 352, 353, 354, 357, 358, 359, 360, 363, 372, 373, 374, 375, 378, 387, 388, 389, 394, 418, 419, 420, 423, 426, 492, 493, 494, 498, 499, 503, 504, 508, 509, 510, 511, 513, 520, 521, 522, 524, 525, 526, 528, 529, 531, 532, 535, 536, 537, 538, 540, 541, 543, 544, 545, 548, 549, 550, 555, 556, 557, 558, 559, 566, 569, 599, 600, 601, 603, 604, 606, 607, 611, 612, 613, 614, 615, 617, 618, 619, 620, 621, 624, 625, 626, 627, 628, 631, 632, 634, 635, 637, 638, 639, 640, 642, 643, 644, 645, 647, 648, 650, 651, 653, 654, 655, 657, 658, 659, 660, 661, 662, 669, 672, 695, 696, 697, 700, 703, 704, 706, 707, 709, 710, 711, 717, 719, 720, 732, 733, 736, 774, 775, 778, 779, 780, 781, 783, 784, 788, 789, 794, 795, 802, 803, 804, 805, 806, 807, 808, 815, 816, 818, 819, 820, 821, 829, 832, 870, 874, 876, 877, 879, 880, 881, 883, 884, 886, 887, 888, 889, 892, 896, 899, 907, 908, 909, 910, 911, 912, 913, 916, 927, 928, 929, 930, 931, 932, 933, 934, 935, 938, 963, 967, 968, 969, 970, 973, 997, 999, 1000, 1002, 1003, 1005, 1006, 1007, 1008, 1010, 1011, 1012, 1013, 1014, 1015, 1016, 1017, 1018, 1023, 1024, 1026, 1027, 1030, 1066, 1073, 1075, 1076, 1078, 1079, 1083, 1084, 1085, 1086, 1087, 1094, 1095, 1097, 1098, 1102, 1105, 1119, 1120, 1121, 1122, 1123, 1124, 1125, 1126, 1127, 1128, 1129, 1130, 1131, 1132, 1133, 1136, 1148, 1149, 1150, 1154, 1155, 1156, 1157, 1158, 1159, 1161, 1162, 1166, 1169, 1192, 1195, 1201, 1206, 1230, 1231, 1235, 1238, 1295, 1299, 1300, 1301, 1305, 1306, 1311, 1316, 1320, 1321, 1325, 1326, 1328, 1329, 1330, 1333, 1344, 1347, 1353, 1358, 1414, 1415, 1416, 1420, 1421, 1426, 1431, 1435, 1440, 1445, 1446, 1453], "summary": {"covered_lines": 394, "num_statements": 410, "percent_covered": 94.12811387900356, "percent_covered_display": "94", "missing_lines": 16, "excluded_lines": 0, "percent_statements_covered": 96.09756097560975, "percent_statements_covered_display": "96", "num_branches": 152, "num_partial_branches": 17, "covered_branches": 135, "missing_branches": 17, "percent_branches_covered": 88.8157894736842, "percent_branches_covered_display": "89"}, "missing_lines": [151, 254, 299, 664, 727, 1099, 1163, 1302, 1307, 1312, 1317, 1417, 1422, 1427, 1432, 1436], "excluded_lines": [], "start_line": 1, "executed_branches": [[146, 147], [146, 148], [148, 149], [156, 157], [156, 159], [223, 224], [223, 228], [249, 250], [249, 251], [251, 252], [298, 301], [352, 353], [352, 354], [357, 358], [357, 360], [358, 357], [358, 359], [492, 493], [492, 508], [493, 494], [493, 498], [498, 499], [498, 503], [503, 492], [503, 504], [508, 509], [508, 510], [510, 511], [510, 513], [525, 526], [525, 528], [536, 537], [536, 540], [544, 545], [544, 566], [548, 549], [548, 550], [555, 556], [558, 544], [558, 559], [603, 604], [603, 606], [634, 635], [634, 669], [637, 638], [637, 639], [639, 640], [639, 642], [657, 658], [657, 660], [660, 661], [709, 710], [709, 717], [717, 719], [774, 775], [774, 778], [778, 779], [778, 780], [780, 781], [780, 783], [783, 784], [783, 788], [788, 789], [788, 794], [794, 795], [794, 802], [807, 808], [807, 815], [815, 816], [815, 818], [820, 821], [820, 829], [876, 877], [876, 879], [887, 888], [887, 896], [888, 887], [888, 889], [908, 909], [908, 910], [930, 931], [930, 935], [931, 932], [931, 933], [1002, 1003], [1002, 1027], [1006, 1007], [1006, 1010], [1012, 1013], [1012, 1026], [1015, 1016], [1015, 1017], [1066, 1073], [1066, 1075], [1078, 1079], [1078, 1083], [1085, 1086], [1085, 1097], [1094, 1085], [1094, 1095], [1097, 1098], [1097, 1102], [1098, 1097], [1122, 1123], [1122, 1133], [1125, 1126], [1125, 1128], [1148, 1149], [1148, 1154], [1156, 1157], [1156, 1161], [1158, 1156], [1158, 1159], [1161, 1162], [1161, 1166], [1162, 1161], [1299, 1300], [1299, 1320], [1300, 1301], [1300, 1306], [1301, 1305], [1306, 1311], [1311, 1316], [1316, 1299], [1320, 1321], [1320, 1325], [1414, 1415], [1414, 1435], [1415, 1416], [1415, 1421], [1416, 1420], [1421, 1426], [1426, 1431], [1431, 1414], [1435, 1440]], "missing_branches": [[148, 151], [251, 254], [298, 299], [555, 544], [660, 664], [717, 727], [1098, 1099], [1162, 1163], [1301, 1302], [1306, 1307], [1311, 1312], [1316, 1317], [1416, 1417], [1421, 1422], [1426, 1427], [1431, 1432], [1435, 1436]]}}}, "src\\supervision\\detection\\utils\\masks.py": {"executed_lines": [1, 3, 5, 6, 7, 9, 12, 56, 58, 59, 60, 61, 62, 64, 65, 66, 67, 69, 70, 71, 72, 73, 75, 76, 77, 78, 80, 81, 87, 90, 105, 107, 108, 109, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 122, 123, 124, 125, 127, 129, 130, 133, 135, 137, 140, 142, 143, 144, 146, 151, 190, 191, 193, 194, 195, 196, 197, 198, 201, 251, 252, 255, 256, 257, 260, 263, 275, 276, 277, 279, 280, 282, 283, 284, 286, 288, 291, 372, 375, 376, 377, 379, 384, 388, 391, 392, 394, 395, 396, 397, 398, 402, 403, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 420, 421, 422, 426], "summary": {"covered_lines": 121, "num_statements": 126, "percent_covered": 94.11764705882354, "percent_covered_display": "94", "missing_lines": 5, "excluded_lines": 0, "percent_statements_covered": 96.03174603174604, "percent_statements_covered_display": "96", "num_branches": 44, "num_partial_branches": 5, "covered_branches": 39, "missing_branches": 5, "percent_branches_covered": 88.63636363636364, "percent_branches_covered_display": "89"}, "missing_lines": [373, 389, 400, 419, 424], "excluded_lines": [], "executed_branches": [[58, 59], [58, 64], [69, 70], [69, 75], [80, 81], [80, 87], [105, 107], [105, 129], [108, 109], [108, 111], [112, 113], [112, 127], [118, 119], [118, 122], [193, 194], [193, 198], [195, 196], [195, 198], [196, 195], [196, 197], [251, 252], [251, 255], [372, 375], [376, 377], [376, 379], [388, 391], [394, 395], [394, 397], [397, 398], [405, 406], [405, 410], [410, 411], [414, 415], [414, 426], [415, 416], [415, 417], [418, 420], [421, 414], [421, 422]], "missing_branches": [[372, 373], [388, 389], [397, 400], [410, 424], [418, 419]], "functions": {"move_masks": {"executed_lines": [56, 58, 59, 60, 61, 62, 64, 65, 66, 67, 69, 70, 71, 72, 73, 75, 76, 77, 78, 80, 81, 87], "summary": {"covered_lines": 22, "num_statements": 22, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 6, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 12, "executed_branches": [[58, 59], [58, 64], [69, 70], [69, 75], [80, 81], [80, 87]], "missing_branches": []}, "calculate_masks_centroids": {"executed_lines": [105, 107, 108, 109, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 122, 123, 124, 125, 127, 129, 130, 133, 135, 137, 142, 143, 144, 146], "summary": {"covered_lines": 28, "num_statements": 28, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 8, "num_partial_branches": 0, "covered_branches": 8, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 90, "executed_branches": [[105, 107], [105, 129], [108, 109], [108, 111], [112, 113], [112, 127], [118, 119], [118, 122]], "missing_branches": []}, "calculate_masks_centroids.sum_over_mask": {"executed_lines": [140], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 137, "executed_branches": [], "missing_branches": []}, "contains_holes": {"executed_lines": [190, 191, 193, 194, 195, 196, 197, 198], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 6, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 151, "executed_branches": [[193, 194], [193, 198], [195, 196], [195, 198], [196, 195], [196, 197]], "missing_branches": []}, "contains_multiple_segments": {"executed_lines": [251, 252, 255, 256, 257, 260], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 201, "executed_branches": [[251, 252], [251, 255]], "missing_branches": []}, "resize_masks": {"executed_lines": [275, 276, 277, 279, 280, 282, 283, 284, 286, 288], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 263, "executed_branches": [], "missing_branches": []}, "filter_segments_by_distance": {"executed_lines": [372, 375, 376, 377, 379, 384, 388, 391, 392, 394, 395, 396, 397, 398, 402, 403, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 420, 421, 422, 426], "summary": {"covered_lines": 34, "num_statements": 39, "percent_covered": 83.60655737704919, "percent_covered_display": "84", "missing_lines": 5, "excluded_lines": 0, "percent_statements_covered": 87.17948717948718, "percent_statements_covered_display": "87", "num_branches": 22, "num_partial_branches": 5, "covered_branches": 17, "missing_branches": 5, "percent_branches_covered": 77.27272727272727, "percent_branches_covered_display": "77"}, "missing_lines": [373, 389, 400, 419, 424], "excluded_lines": [], "start_line": 291, "executed_branches": [[372, 375], [376, 377], [376, 379], [388, 391], [394, 395], [394, 397], [397, 398], [405, 406], [405, 410], [410, 411], [414, 415], [414, 426], [415, 416], [415, 417], [418, 420], [421, 414], [421, 422]], "missing_branches": [[372, 373], [388, 389], [397, 400], [410, 424], [418, 419]]}, "": {"executed_lines": [1, 3, 5, 6, 7, 9, 12, 90, 151, 201, 263, 291], "summary": {"covered_lines": 12, "num_statements": 12, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 3, 5, 6, 7, 9, 12, 56, 58, 59, 60, 61, 62, 64, 65, 66, 67, 69, 70, 71, 72, 73, 75, 76, 77, 78, 80, 81, 87, 90, 105, 107, 108, 109, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 122, 123, 124, 125, 127, 129, 130, 133, 135, 137, 140, 142, 143, 144, 146, 151, 190, 191, 193, 194, 195, 196, 197, 198, 201, 251, 252, 255, 256, 257, 260, 263, 275, 276, 277, 279, 280, 282, 283, 284, 286, 288, 291, 372, 375, 376, 377, 379, 384, 388, 391, 392, 394, 395, 396, 397, 398, 402, 403, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 420, 421, 422, 426], "summary": {"covered_lines": 121, "num_statements": 126, "percent_covered": 94.11764705882354, "percent_covered_display": "94", "missing_lines": 5, "excluded_lines": 0, "percent_statements_covered": 96.03174603174604, "percent_statements_covered_display": "96", "num_branches": 44, "num_partial_branches": 5, "covered_branches": 39, "missing_branches": 5, "percent_branches_covered": 88.63636363636364, "percent_branches_covered_display": "89"}, "missing_lines": [373, 389, 400, 419, 424], "excluded_lines": [], "start_line": 1, "executed_branches": [[58, 59], [58, 64], [69, 70], [69, 75], [80, 81], [80, 87], [105, 107], [105, 129], [108, 109], [108, 111], [112, 113], [112, 127], [118, 119], [118, 122], [193, 194], [193, 198], [195, 196], [195, 198], [196, 195], [196, 197], [251, 252], [251, 255], [372, 375], [376, 377], [376, 379], [388, 391], [394, 395], [394, 397], [397, 398], [405, 406], [405, 410], [410, 411], [414, 415], [414, 426], [415, 416], [415, 417], [418, 420], [421, 414], [421, 422]], "missing_branches": [[372, 373], [388, 389], [397, 400], [410, 424], [418, 419]]}}}, "src\\supervision\\detection\\utils\\polygons.py": {"executed_lines": [1, 3, 4, 5, 8, 33, 34, 35, 36, 44, 95, 96, 97, 98, 100, 102, 103, 105, 106, 107, 108, 109, 112, 113, 114, 116], "summary": {"covered_lines": 26, "num_statements": 26, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 12, "num_partial_branches": 0, "covered_branches": 12, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [[33, 34], [33, 35], [95, 96], [95, 97], [97, 98], [97, 100], [102, 103], [102, 105], [107, 108], [107, 116], [112, 113], [112, 114]], "missing_branches": [], "functions": {"filter_polygons_by_area": {"executed_lines": [33, 34, 35, 36], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 8, "executed_branches": [[33, 34], [33, 35]], "missing_branches": []}, "approximate_polygon": {"executed_lines": [95, 96, 97, 98, 100, 102, 103, 105, 106, 107, 108, 109, 112, 113, 114, 116], "summary": {"covered_lines": 16, "num_statements": 16, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 10, "num_partial_branches": 0, "covered_branches": 10, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 44, "executed_branches": [[95, 96], [95, 97], [97, 98], [97, 100], [102, 103], [102, 105], [107, 108], [107, 116], [112, 113], [112, 114]], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 5, 8, 44], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 3, 4, 5, 8, 33, 34, 35, 36, 44, 95, 96, 97, 98, 100, 102, 103, 105, 106, 107, 108, 109, 112, 113, 114, 116], "summary": {"covered_lines": 26, "num_statements": 26, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 12, "num_partial_branches": 0, "covered_branches": 12, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [[33, 34], [33, 35], [95, 96], [95, 97], [97, 98], [97, 100], [102, 103], [102, 105], [107, 108], [107, 116], [112, 113], [112, 114]], "missing_branches": []}}}, "src\\supervision\\detection\\utils\\vlms.py": {"executed_lines": [1, 4, 38, 39, 40, 42, 43, 45, 46, 48, 49, 50, 51, 52, 54, 55, 60, 62, 65, 97, 98, 99, 100], "summary": {"covered_lines": 23, "num_statements": 23, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 14, "num_partial_branches": 0, "covered_branches": 14, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [[38, 39], [38, 42], [42, 43], [42, 45], [48, 49], [48, 62], [50, 51], [50, 60], [51, 52], [51, 54], [97, 98], [97, 100], [98, 97], [98, 99]], "missing_branches": [], "functions": {"edit_distance": {"executed_lines": [38, 39, 40, 42, 43, 45, 46, 48, 49, 50, 51, 52, 54, 55, 60, 62], "summary": {"covered_lines": 16, "num_statements": 16, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 10, "num_partial_branches": 0, "covered_branches": 10, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 4, "executed_branches": [[38, 39], [38, 42], [42, 43], [42, 45], [48, 49], [48, 62], [50, 51], [50, 60], [51, 52], [51, 54]], "missing_branches": []}, "fuzzy_match_index": {"executed_lines": [97, 98, 99, 100], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 65, "executed_branches": [[97, 98], [97, 100], [98, 97], [98, 99]], "missing_branches": []}, "": {"executed_lines": [1, 4, 65], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 4, 38, 39, 40, 42, 43, 45, 46, 48, 49, 50, 51, 52, 54, 55, 60, 62, 65, 97, 98, 99, 100], "summary": {"covered_lines": 23, "num_statements": 23, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 14, "num_partial_branches": 0, "covered_branches": 14, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [[38, 39], [38, 42], [42, 43], [42, 45], [48, 49], [48, 62], [50, 51], [50, 60], [51, 52], [51, 54], [97, 98], [97, 100], [98, 97], [98, 99]], "missing_branches": []}}}, "src\\supervision\\detection\\vlm.py": {"executed_lines": [1, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 16, 17, 18, 19, 22, 40, 41, 42, 43, 44, 45, 46, 47, 49, 50, 53, 54, 73, 87, 88, 89, 90, 91, 92, 93, 94, 96, 97, 100, 101, 116, 127, 138, 149, 163, 180, 188, 193, 194, 195, 198, 199, 200, 203, 206, 211, 215, 235, 237, 240, 241, 243, 244, 246, 247, 248, 249, 251, 252, 253, 254, 255, 257, 260, 276, 277, 278, 279, 280, 282, 283, 286, 288, 289, 292, 293, 295, 298, 300, 301, 302, 305, 337, 338, 340, 341, 342, 344, 345, 346, 347, 349, 350, 351, 352, 353, 354, 356, 357, 358, 359, 365, 366, 368, 369, 371, 372, 373, 374, 375, 377, 378, 380, 381, 383, 384, 386, 388, 389, 390, 391, 392, 394, 397, 424, 453, 454, 455, 457, 458, 463, 464, 465, 466, 467, 468, 469, 477, 479, 480, 482, 483, 484, 485, 486, 488, 489, 490, 492, 495, 519, 520, 521, 522, 525, 527, 528, 529, 530, 532, 533, 535, 537, 538, 539, 540, 541, 542, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 557, 558, 559, 561, 562, 563, 565, 567, 568, 572, 573, 575, 576, 577, 581, 582, 583, 584, 585, 586, 591, 630, 632, 633, 634, 635, 636, 637, 639, 640, 641, 642, 644, 645, 647, 648, 650, 651, 652, 653, 654, 656, 658, 659, 661, 666, 667, 669, 670, 671, 672, 673, 675, 678, 721, 723, 724, 725, 726, 727, 728, 730, 731, 732, 733, 741, 742, 750, 751, 752, 753, 755, 756, 757, 758, 759, 761, 766, 768, 769, 770, 771, 777, 779, 780, 781, 782, 786, 787, 789, 790, 792, 793, 797, 800, 801, 805, 807, 808, 809, 811, 813, 814, 822, 823, 826, 827, 828, 829, 830, 831, 832, 834, 835, 837, 838, 839, 841, 844, 846, 855, 887, 888, 889, 893, 894, 896, 898, 899, 900, 902, 903, 904, 905, 907, 909, 910, 912], "summary": {"covered_lines": 328, "num_statements": 365, "percent_covered": 88.64097363083164, "percent_covered_display": "89", "missing_lines": 37, "excluded_lines": 4, "percent_statements_covered": 89.86301369863014, "percent_statements_covered_display": "90", "num_branches": 128, "num_partial_branches": 11, "covered_branches": 109, "missing_branches": 19, "percent_branches_covered": 85.15625, "percent_branches_covered_display": "85"}, "missing_lines": [51, 55, 59, 60, 61, 62, 63, 64, 65, 66, 67, 98, 102, 103, 104, 105, 106, 107, 108, 109, 110, 181, 182, 183, 184, 189, 196, 201, 212, 284, 290, 296, 416, 588, 783, 784, 803], "excluded_lines": [311, 596, 689, 859], "executed_branches": [[180, 188], [188, 193], [194, 195], [194, 198], [195, 194], [199, 200], [199, 203], [200, 199], [243, 244], [243, 246], [251, 252], [251, 257], [278, 279], [278, 280], [283, 286], [289, 292], [295, 298], [346, 347], [346, 349], [353, 354], [353, 356], [365, 366], [365, 368], [371, 372], [371, 377], [372, 373], [372, 374], [377, 378], [377, 380], [388, 389], [388, 394], [457, 458], [457, 463], [465, 466], [465, 479], [467, 465], [467, 468], [482, 483], [482, 488], [521, 522], [521, 525], [527, 528], [527, 532], [532, 533], [532, 537], [537, 538], [537, 544], [544, 545], [544, 561], [547, 548], [547, 557], [548, 547], [548, 549], [561, 562], [561, 567], [567, 568], [572, 573], [572, 575], [633, 634], [633, 639], [634, 633], [634, 635], [644, 645], [644, 647], [650, 651], [650, 658], [651, 652], [651, 653], [658, 659], [658, 661], [669, 670], [669, 675], [724, 725], [724, 730], [725, 724], [725, 726], [741, 742], [741, 750], [755, 756], [755, 813], [756, 757], [756, 758], [768, 769], [768, 805], [769, 770], [771, 777], [771, 779], [792, 793], [807, 808], [807, 811], [808, 809], [813, 814], [813, 822], [826, 827], [826, 837], [831, 832], [831, 834], [834, 835], [834, 841], [888, 889], [888, 893], [893, 894], [893, 896], [898, 899], [898, 909], [899, 900], [899, 902], [909, 910], [909, 912]], "missing_branches": [[59, 60], [59, 61], [61, 62], [61, 67], [102, 103], [102, 104], [104, 105], [104, 110], [180, 181], [188, 189], [195, 196], [200, 201], [283, 284], [289, 290], [295, 296], [567, 588], [769, 807], [792, 803], [808, 755]], "functions": {"LMM.list": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [51], "excluded_lines": [], "start_line": 50, "executed_branches": [], "missing_branches": []}, "LMM.from_value": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 10, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 10, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 4, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [55, 59, 60, 61, 62, 63, 64, 65, 66, 67], "excluded_lines": [], "start_line": 54, "executed_branches": [], "missing_branches": [[59, 60], [59, 61], [61, 62], [61, 67]]}, "VLM.list": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [98], "excluded_lines": [], "start_line": 97, "executed_branches": [], "missing_branches": []}, "VLM.from_value": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 9, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 9, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 4, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [102, 103, 104, 105, 106, 107, 108, 109, 110], "excluded_lines": [], "start_line": 101, "executed_branches": [], "missing_branches": [[102, 103], [102, 104], [104, 105], [104, 110]]}, "_validate_vlm_parameters": {"executed_lines": [180, 188, 193, 194, 195, 198, 199, 200, 203], "summary": {"covered_lines": 9, "num_statements": 16, "percent_covered": 60.714285714285715, "percent_covered_display": "61", "missing_lines": 7, "excluded_lines": 0, "percent_statements_covered": 56.25, "percent_statements_covered_display": "56", "num_branches": 12, "num_partial_branches": 4, "covered_branches": 8, "missing_branches": 4, "percent_branches_covered": 66.66666666666667, "percent_branches_covered_display": "67"}, "missing_lines": [181, 182, 183, 184, 189, 196, 201], "excluded_lines": [], "start_line": 163, "executed_branches": [[180, 188], [188, 193], [194, 195], [194, 198], [195, 194], [199, 200], [199, 203], [200, 199]], "missing_branches": [[180, 181], [188, 189], [195, 196], [200, 201]]}, "validate_vlm_parameters": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [212], "excluded_lines": [], "start_line": 211, "executed_branches": [], "missing_branches": []}, "from_paligemma": {"executed_lines": [235, 237, 240, 241, 243, 244, 246, 247, 248, 249, 251, 252, 253, 254, 255, 257], "summary": {"covered_lines": 16, "num_statements": 16, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 215, "executed_branches": [[243, 244], [243, 246], [251, 252], [251, 257]], "missing_branches": []}, "recover_truncated_qwen_2_5_vl_response": {"executed_lines": [276, 277, 278, 279, 280, 282, 283, 286, 288, 289, 292, 293, 295, 298, 300, 301, 302], "summary": {"covered_lines": 17, "num_statements": 20, "percent_covered": 78.57142857142857, "percent_covered_display": "79", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 85.0, "percent_statements_covered_display": "85", "num_branches": 8, "num_partial_branches": 3, "covered_branches": 5, "missing_branches": 3, "percent_branches_covered": 62.5, "percent_branches_covered_display": "62"}, "missing_lines": [284, 290, 296], "excluded_lines": [], "start_line": 260, "executed_branches": [[278, 279], [278, 280], [283, 286], [289, 292], [295, 298]], "missing_branches": [[283, 284], [289, 290], [295, 296]]}, "from_qwen_2_5_vl": {"executed_lines": [337, 338, 340, 341, 342, 344, 345, 346, 347, 349, 350, 351, 352, 353, 354, 356, 357, 358, 359, 365, 366, 368, 369, 371, 372, 373, 374, 375, 377, 378, 380, 381, 383, 384, 386, 388, 389, 390, 391, 392, 394], "summary": {"covered_lines": 41, "num_statements": 41, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 1, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 14, "num_partial_branches": 0, "covered_branches": 14, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [311], "start_line": 305, "executed_branches": [[346, 347], [346, 349], [353, 354], [353, 356], [365, 366], [365, 368], [371, 372], [371, 377], [372, 373], [372, 374], [377, 378], [377, 380], [388, 389], [388, 394]], "missing_branches": []}, "from_qwen_3_vl": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [416], "excluded_lines": [], "start_line": 397, "executed_branches": [], "missing_branches": []}, "from_deepseek_vl_2": {"executed_lines": [453, 454, 455, 457, 458, 463, 464, 465, 466, 467, 468, 469, 477, 479, 480, 482, 483, 484, 485, 486, 488, 489, 490, 492], "summary": {"covered_lines": 24, "num_statements": 24, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 8, "num_partial_branches": 0, "covered_branches": 8, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 424, "executed_branches": [[457, 458], [457, 463], [465, 466], [465, 479], [467, 465], [467, 468], [482, 483], [482, 488]], "missing_branches": []}, "from_florence_2": {"executed_lines": [519, 520, 521, 522, 525, 527, 528, 529, 530, 532, 533, 535, 537, 538, 539, 540, 541, 542, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 557, 558, 559, 561, 562, 563, 565, 567, 568, 572, 573, 575, 576, 577, 581, 582, 583, 584, 585, 586], "summary": {"covered_lines": 48, "num_statements": 49, "percent_covered": 97.10144927536231, "percent_covered_display": "97", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 97.95918367346938, "percent_statements_covered_display": "98", "num_branches": 20, "num_partial_branches": 1, "covered_branches": 19, "missing_branches": 1, "percent_branches_covered": 95.0, "percent_branches_covered_display": "95"}, "missing_lines": [588], "excluded_lines": [], "start_line": 495, "executed_branches": [[521, 522], [521, 525], [527, 528], [527, 532], [532, 533], [532, 537], [537, 538], [537, 544], [544, 545], [544, 561], [547, 548], [547, 557], [548, 547], [548, 549], [561, 562], [561, 567], [567, 568], [572, 573], [572, 575]], "missing_branches": [[567, 588]]}, "from_google_gemini_2_0": {"executed_lines": [630, 632, 633, 634, 635, 636, 637, 639, 640, 641, 642, 644, 645, 647, 648, 650, 651, 652, 653, 654, 656, 658, 659, 661, 666, 667, 669, 670, 671, 672, 673, 675], "summary": {"covered_lines": 32, "num_statements": 32, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 1, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 14, "num_partial_branches": 0, "covered_branches": 14, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [596], "start_line": 591, "executed_branches": [[633, 634], [633, 639], [634, 633], [634, 635], [644, 645], [644, 647], [650, 651], [650, 658], [651, 652], [651, 653], [658, 659], [658, 661], [669, 670], [669, 675]], "missing_branches": []}, "from_google_gemini_2_5": {"executed_lines": [721, 723, 724, 725, 726, 727, 728, 730, 731, 732, 733, 741, 742, 750, 751, 752, 753, 755, 756, 757, 758, 759, 761, 766, 768, 769, 770, 771, 777, 779, 780, 781, 782, 786, 787, 789, 790, 792, 793, 797, 800, 801, 805, 807, 808, 809, 811, 813, 814, 822, 823, 826, 827, 828, 829, 830, 831, 832, 834, 835, 837, 838, 839, 841, 844, 846], "summary": {"covered_lines": 66, "num_statements": 69, "percent_covered": 93.93939393939394, "percent_covered_display": "94", "missing_lines": 3, "excluded_lines": 1, "percent_statements_covered": 95.65217391304348, "percent_statements_covered_display": "96", "num_branches": 30, "num_partial_branches": 3, "covered_branches": 27, "missing_branches": 3, "percent_branches_covered": 90.0, "percent_branches_covered_display": "90"}, "missing_lines": [783, 784, 803], "excluded_lines": [689], "start_line": 678, "executed_branches": [[724, 725], [724, 730], [725, 724], [725, 726], [741, 742], [741, 750], [755, 756], [755, 813], [756, 757], [756, 758], [768, 769], [768, 805], [769, 770], [771, 777], [771, 779], [792, 793], [807, 808], [807, 811], [808, 809], [813, 814], [813, 822], [826, 827], [826, 837], [831, 832], [831, 834], [834, 835], [834, 841]], "missing_branches": [[769, 807], [792, 803], [808, 755]]}, "from_moondream": {"executed_lines": [887, 888, 889, 893, 894, 896, 898, 899, 900, 902, 903, 904, 905, 907, 909, 910, 912], "summary": {"covered_lines": 17, "num_statements": 17, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 1, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 10, "num_partial_branches": 0, "covered_branches": 10, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [859], "start_line": 855, "executed_branches": [[888, 889], [888, 893], [893, 894], [893, 896], [898, 899], [898, 909], [899, 900], [899, 902], [909, 910], [909, 912]], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 16, 17, 18, 19, 22, 40, 41, 42, 43, 44, 45, 46, 47, 49, 50, 53, 54, 73, 87, 88, 89, 90, 91, 92, 93, 94, 96, 97, 100, 101, 116, 127, 138, 149, 163, 206, 211, 215, 260, 305, 397, 424, 495, 591, 678, 855], "summary": {"covered_lines": 58, "num_statements": 58, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"LMM": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 11, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 11, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 4, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [51, 55, 59, 60, 61, 62, 63, 64, 65, 66, 67], "excluded_lines": [], "start_line": 22, "executed_branches": [], "missing_branches": [[59, 60], [59, 61], [61, 62], [61, 67]]}, "VLM": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 10, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 10, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 4, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [98, 102, 103, 104, 105, 106, 107, 108, 109, 110], "excluded_lines": [], "start_line": 73, "executed_branches": [], "missing_branches": [[102, 103], [102, 104], [104, 105], [104, 110]]}, "": {"executed_lines": [1, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 16, 17, 18, 19, 22, 40, 41, 42, 43, 44, 45, 46, 47, 49, 50, 53, 54, 73, 87, 88, 89, 90, 91, 92, 93, 94, 96, 97, 100, 101, 116, 127, 138, 149, 163, 180, 188, 193, 194, 195, 198, 199, 200, 203, 206, 211, 215, 235, 237, 240, 241, 243, 244, 246, 247, 248, 249, 251, 252, 253, 254, 255, 257, 260, 276, 277, 278, 279, 280, 282, 283, 286, 288, 289, 292, 293, 295, 298, 300, 301, 302, 305, 337, 338, 340, 341, 342, 344, 345, 346, 347, 349, 350, 351, 352, 353, 354, 356, 357, 358, 359, 365, 366, 368, 369, 371, 372, 373, 374, 375, 377, 378, 380, 381, 383, 384, 386, 388, 389, 390, 391, 392, 394, 397, 424, 453, 454, 455, 457, 458, 463, 464, 465, 466, 467, 468, 469, 477, 479, 480, 482, 483, 484, 485, 486, 488, 489, 490, 492, 495, 519, 520, 521, 522, 525, 527, 528, 529, 530, 532, 533, 535, 537, 538, 539, 540, 541, 542, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 557, 558, 559, 561, 562, 563, 565, 567, 568, 572, 573, 575, 576, 577, 581, 582, 583, 584, 585, 586, 591, 630, 632, 633, 634, 635, 636, 637, 639, 640, 641, 642, 644, 645, 647, 648, 650, 651, 652, 653, 654, 656, 658, 659, 661, 666, 667, 669, 670, 671, 672, 673, 675, 678, 721, 723, 724, 725, 726, 727, 728, 730, 731, 732, 733, 741, 742, 750, 751, 752, 753, 755, 756, 757, 758, 759, 761, 766, 768, 769, 770, 771, 777, 779, 780, 781, 782, 786, 787, 789, 790, 792, 793, 797, 800, 801, 805, 807, 808, 809, 811, 813, 814, 822, 823, 826, 827, 828, 829, 830, 831, 832, 834, 835, 837, 838, 839, 841, 844, 846, 855, 887, 888, 889, 893, 894, 896, 898, 899, 900, 902, 903, 904, 905, 907, 909, 910, 912], "summary": {"covered_lines": 328, "num_statements": 344, "percent_covered": 94.18103448275862, "percent_covered_display": "94", "missing_lines": 16, "excluded_lines": 4, "percent_statements_covered": 95.34883720930233, "percent_statements_covered_display": "95", "num_branches": 120, "num_partial_branches": 11, "covered_branches": 109, "missing_branches": 11, "percent_branches_covered": 90.83333333333333, "percent_branches_covered_display": "91"}, "missing_lines": [181, 182, 183, 184, 189, 196, 201, 212, 284, 290, 296, 416, 588, 783, 784, 803], "excluded_lines": [311, 596, 689, 859], "start_line": 1, "executed_branches": [[180, 188], [188, 193], [194, 195], [194, 198], [195, 194], [199, 200], [199, 203], [200, 199], [243, 244], [243, 246], [251, 252], [251, 257], [278, 279], [278, 280], [283, 286], [289, 292], [295, 298], [346, 347], [346, 349], [353, 354], [353, 356], [365, 366], [365, 368], [371, 372], [371, 377], [372, 373], [372, 374], [377, 378], [377, 380], [388, 389], [388, 394], [457, 458], [457, 463], [465, 466], [465, 479], [467, 465], [467, 468], [482, 483], [482, 488], [521, 522], [521, 525], [527, 528], [527, 532], [532, 533], [532, 537], [537, 538], [537, 544], [544, 545], [544, 561], [547, 548], [547, 557], [548, 547], [548, 549], [561, 562], [561, 567], [567, 568], [572, 573], [572, 575], [633, 634], [633, 639], [634, 633], [634, 635], [644, 645], [644, 647], [650, 651], [650, 658], [651, 652], [651, 653], [658, 659], [658, 661], [669, 670], [669, 675], [724, 725], [724, 730], [725, 724], [725, 726], [741, 742], [741, 750], [755, 756], [755, 813], [756, 757], [756, 758], [768, 769], [768, 805], [769, 770], [771, 777], [771, 779], [792, 793], [807, 808], [807, 811], [808, 809], [813, 814], [813, 822], [826, 827], [826, 837], [831, 832], [831, 834], [834, 835], [834, 841], [888, 889], [888, 893], [893, 894], [893, 896], [898, 899], [898, 909], [899, 900], [899, 902], [909, 910], [909, 912]], "missing_branches": [[180, 181], [188, 189], [195, 196], [200, 201], [283, 284], [289, 290], [295, 296], [567, 588], [769, 807], [792, 803], [808, 755]]}}}, "src\\supervision\\draw\\__init__.py": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "src\\supervision\\draw\\base.py": {"executed_lines": [1, 3, 4, 5, 7, 8], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"": {"executed_lines": [1, 3, 4, 5, 7, 8], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 3, 4, 5, 7, 8], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "src\\supervision\\draw\\color.py": {"executed_lines": [1, 3, 4, 6, 8, 10, 34, 54, 57, 58, 59, 60, 61, 62, 65, 66, 100, 101, 102, 103, 105, 106, 134, 135, 136, 137, 138, 139, 141, 142, 143, 145, 146, 148, 149, 171, 172, 173, 174, 176, 177, 199, 200, 201, 202, 204, 205, 227, 228, 229, 232, 234, 235, 257, 258, 259, 262, 264, 283, 284, 285, 287, 302, 304, 319, 321, 336, 338, 353, 355, 356, 357, 359, 360, 361, 363, 364, 365, 367, 368, 369, 371, 372, 373, 375, 376, 377, 379, 380, 381, 383, 384, 385, 387, 388, 390, 391, 392, 393, 395, 396, 405, 406, 407, 409, 410, 428, 430, 431, 451, 452, 455, 456, 475, 476, 478, 479, 512, 532, 534, 535, 537, 547, 568, 571, 572], "summary": {"covered_lines": 126, "num_statements": 137, "percent_covered": 90.9090909090909, "percent_covered_display": "91", "missing_lines": 11, "excluded_lines": 0, "percent_statements_covered": 91.97080291970804, "percent_statements_covered_display": "92", "num_branches": 28, "num_partial_branches": 2, "covered_branches": 24, "missing_branches": 4, "percent_branches_covered": 85.71428571428571, "percent_branches_covered_display": "86"}, "missing_lines": [449, 453, 501, 503, 504, 506, 508, 533, 544, 569, 570], "excluded_lines": [], "executed_branches": [[59, 60], [59, 61], [61, -57], [61, 62], [136, 137], [136, 138], [138, 139], [138, 141], [141, 142], [141, 145], [172, 173], [172, 174], [200, 201], [200, 202], [228, 229], [228, 232], [258, 259], [258, 262], [283, 284], [283, 285], [391, 392], [391, 393], [532, 534], [568, 571]], "missing_branches": [[503, 504], [503, 506], [532, 533], [568, 569]], "functions": {"_validate_color_hex": {"executed_lines": [58, 59, 60, 61, 62], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 57, "executed_branches": [[59, 60], [59, 61], [61, -57], [61, 62]], "missing_branches": []}, "Color.from_hex": {"executed_lines": [134, 135, 136, 137, 138, 139, 141, 142, 143, 145, 146], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 6, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 106, "executed_branches": [[136, 137], [136, 138], [138, 139], [138, 141], [141, 142], [141, 145]], "missing_branches": []}, "Color.from_rgb_tuple": {"executed_lines": [171, 172, 173, 174], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 149, "executed_branches": [[172, 173], [172, 174]], "missing_branches": []}, "Color.from_bgr_tuple": {"executed_lines": [199, 200, 201, 202], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 177, "executed_branches": [[200, 201], [200, 202]], "missing_branches": []}, "Color.from_rgba_tuple": {"executed_lines": [227, 228, 229, 232], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 205, "executed_branches": [[228, 229], [228, 232]], "missing_branches": []}, "Color.from_bgra_tuple": {"executed_lines": [257, 258, 259, 262], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 235, "executed_branches": [[258, 259], [258, 262]], "missing_branches": []}, "Color.as_hex": {"executed_lines": [283, 284, 285], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 264, "executed_branches": [[283, 284], [283, 285]], "missing_branches": []}, "Color.as_rgb": {"executed_lines": [302], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 287, "executed_branches": [], "missing_branches": []}, "Color.as_bgr": {"executed_lines": [319], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 304, "executed_branches": [], "missing_branches": []}, "Color.as_rgba": {"executed_lines": [336], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 321, "executed_branches": [], "missing_branches": []}, "Color.as_bgra": {"executed_lines": [353], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 338, "executed_branches": [], "missing_branches": []}, "Color.WHITE": {"executed_lines": [357], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 356, "executed_branches": [], "missing_branches": []}, "Color.BLACK": {"executed_lines": [361], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 360, "executed_branches": [], "missing_branches": []}, "Color.GREY": {"executed_lines": [365], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 364, "executed_branches": [], "missing_branches": []}, "Color.RED": {"executed_lines": [369], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 368, "executed_branches": [], "missing_branches": []}, "Color.GREEN": {"executed_lines": [373], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 372, "executed_branches": [], "missing_branches": []}, "Color.BLUE": {"executed_lines": [377], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 376, "executed_branches": [], "missing_branches": []}, "Color.YELLOW": {"executed_lines": [381], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 380, "executed_branches": [], "missing_branches": []}, "Color.ROBOFLOW": {"executed_lines": [385], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 384, "executed_branches": [], "missing_branches": []}, "Color.__hash__": {"executed_lines": [388], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 387, "executed_branches": [], "missing_branches": []}, "Color.__repr__": {"executed_lines": [391, 392, 393], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 390, "executed_branches": [[391, 392], [391, 393]], "missing_branches": []}, "Color.__eq__": {"executed_lines": [396], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 395, "executed_branches": [], "missing_branches": []}, "ColorPalette.DEFAULT": {"executed_lines": [428], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 410, "executed_branches": [], "missing_branches": []}, "ColorPalette.ROBOFLOW": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [449], "excluded_lines": [], "start_line": 431, "executed_branches": [], "missing_branches": []}, "ColorPalette.LEGACY": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [453], "excluded_lines": [], "start_line": 452, "executed_branches": [], "missing_branches": []}, "ColorPalette.from_hex": {"executed_lines": [475, 476], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 456, "executed_branches": [], "missing_branches": []}, "ColorPalette.from_matplotlib": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 5, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 5, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 2, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [501, 503, 504, 506, 508], "excluded_lines": [], "start_line": 479, "executed_branches": [], "missing_branches": [[503, 504], [503, 506]]}, "ColorPalette.by_idx": {"executed_lines": [532, 534, 535], "summary": {"covered_lines": 3, "num_statements": 4, "percent_covered": 66.66666666666667, "percent_covered_display": "67", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 75.0, "percent_statements_covered_display": "75", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [533], "excluded_lines": [], "start_line": 512, "executed_branches": [[532, 534]], "missing_branches": [[532, 533]]}, "ColorPalette.__len__": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [544], "excluded_lines": [], "start_line": 537, "executed_branches": [], "missing_branches": []}, "unify_to_bgr": {"executed_lines": [568, 571, 572], "summary": {"covered_lines": 3, "num_statements": 5, "percent_covered": 57.142857142857146, "percent_covered_display": "57", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 60.0, "percent_statements_covered_display": "60", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [569, 570], "excluded_lines": [], "start_line": 547, "executed_branches": [[568, 571]], "missing_branches": [[568, 569]]}, "": {"executed_lines": [1, 3, 4, 6, 8, 10, 34, 54, 57, 65, 66, 100, 101, 102, 103, 105, 106, 148, 149, 176, 177, 204, 205, 234, 235, 264, 287, 304, 321, 338, 355, 356, 359, 360, 363, 364, 367, 368, 371, 372, 375, 376, 379, 380, 383, 384, 387, 390, 395, 405, 406, 407, 409, 410, 430, 431, 451, 452, 455, 456, 478, 479, 512, 537, 547], "summary": {"covered_lines": 65, "num_statements": 65, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"Color": {"executed_lines": [134, 135, 136, 137, 138, 139, 141, 142, 143, 145, 146, 171, 172, 173, 174, 199, 200, 201, 202, 227, 228, 229, 232, 257, 258, 259, 262, 283, 284, 285, 302, 319, 336, 353, 357, 361, 365, 369, 373, 377, 381, 385, 388, 391, 392, 393, 396], "summary": {"covered_lines": 47, "num_statements": 47, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 18, "num_partial_branches": 0, "covered_branches": 18, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 66, "executed_branches": [[136, 137], [136, 138], [138, 139], [138, 141], [141, 142], [141, 145], [172, 173], [172, 174], [200, 201], [200, 202], [228, 229], [228, 232], [258, 259], [258, 262], [283, 284], [283, 285], [391, 392], [391, 393]], "missing_branches": []}, "ColorPalette": {"executed_lines": [428, 475, 476, 532, 534, 535], "summary": {"covered_lines": 6, "num_statements": 15, "percent_covered": 36.8421052631579, "percent_covered_display": "37", "missing_lines": 9, "excluded_lines": 0, "percent_statements_covered": 40.0, "percent_statements_covered_display": "40", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 3, "percent_branches_covered": 25.0, "percent_branches_covered_display": "25"}, "missing_lines": [449, 453, 501, 503, 504, 506, 508, 533, 544], "excluded_lines": [], "start_line": 406, "executed_branches": [[532, 534]], "missing_branches": [[503, 504], [503, 506], [532, 533]]}, "": {"executed_lines": [1, 3, 4, 6, 8, 10, 34, 54, 57, 58, 59, 60, 61, 62, 65, 66, 100, 101, 102, 103, 105, 106, 148, 149, 176, 177, 204, 205, 234, 235, 264, 287, 304, 321, 338, 355, 356, 359, 360, 363, 364, 367, 368, 371, 372, 375, 376, 379, 380, 383, 384, 387, 390, 395, 405, 406, 407, 409, 410, 430, 431, 451, 452, 455, 456, 478, 479, 512, 537, 547, 568, 571, 572], "summary": {"covered_lines": 73, "num_statements": 75, "percent_covered": 96.29629629629629, "percent_covered_display": "96", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 97.33333333333333, "percent_statements_covered_display": "97", "num_branches": 6, "num_partial_branches": 1, "covered_branches": 5, "missing_branches": 1, "percent_branches_covered": 83.33333333333333, "percent_branches_covered_display": "83"}, "missing_lines": [569, 570], "excluded_lines": [], "start_line": 1, "executed_branches": [[59, 60], [59, 61], [61, -57], [61, 62], [568, 571]], "missing_branches": [[568, 569]]}}}, "src\\supervision\\draw\\utils.py": {"executed_lines": [1, 3, 4, 6, 7, 8, 10, 11, 14, 44, 62, 69, 72, 114, 166, 183, 186, 189, 206, 209, 210, 211, 215, 218, 301, 371, 396], "summary": {"covered_lines": 27, "num_statements": 78, "percent_covered": 28.571428571428573, "percent_covered_display": "29", "missing_lines": 51, "excluded_lines": 0, "percent_statements_covered": 34.61538461538461, "percent_statements_covered_display": "35", "num_branches": 20, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 19, "percent_branches_covered": 5.0, "percent_branches_covered_display": "5"}, "missing_lines": [34, 41, 90, 91, 99, 100, 107, 111, 132, 133, 134, 136, 140, 147, 148, 155, 156, 163, 207, 267, 274, 276, 283, 284, 288, 298, 325, 326, 327, 328, 331, 332, 334, 335, 336, 337, 339, 345, 348, 349, 350, 355, 358, 359, 360, 366, 368, 393, 418, 419, 420], "excluded_lines": [], "executed_branches": [[206, 209]], "missing_branches": [[90, 91], [90, 99], [147, 148], [147, 155], [155, 156], [155, 163], [206, 207], [283, 284], [283, 288], [325, 326], [325, 331], [326, 327], [326, 328], [331, 332], [331, 334], [339, 345], [339, 348], [418, 419], [418, 420]], "functions": {"draw_line": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 2, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [34, 41], "excluded_lines": [], "start_line": 14, "executed_branches": [], "missing_branches": []}, "draw_rectangle": {"executed_lines": [62, 69], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 44, "executed_branches": [], "missing_branches": []}, "draw_filled_rectangle": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 6, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 6, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 2, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [90, 91, 99, 100, 107, 111], "excluded_lines": [], "start_line": 72, "executed_branches": [], "missing_branches": [[90, 91], [90, 99]]}, "draw_rounded_rectangle": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 10, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 10, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 4, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [132, 133, 134, 136, 140, 147, 148, 155, 156, 163], "excluded_lines": [], "start_line": 114, "executed_branches": [], "missing_branches": [[147, 148], [147, 155], [155, 156], [155, 163]]}, "draw_polygon": {"executed_lines": [183, 186], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 166, "executed_branches": [], "missing_branches": []}, "draw_filled_polygon": {"executed_lines": [206, 209, 210, 211, 215], "summary": {"covered_lines": 5, "num_statements": 6, "percent_covered": 75.0, "percent_covered_display": "75", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 83.33333333333333, "percent_statements_covered_display": "83", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [207], "excluded_lines": [], "start_line": 189, "executed_branches": [[206, 209]], "missing_branches": [[206, 207]]}, "draw_text": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 7, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 7, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 2, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [267, 274, 276, 283, 284, 288, 298], "excluded_lines": [], "start_line": 218, "executed_branches": [], "missing_branches": [[283, 284], [283, 288]]}, "draw_image": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 21, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 21, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 8, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 8, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [325, 326, 327, 328, 331, 332, 334, 335, 336, 337, 339, 345, 348, 349, 350, 355, 358, 359, 360, 366, 368], "excluded_lines": [], "start_line": 301, "executed_branches": [], "missing_branches": [[325, 326], [325, 331], [326, 327], [326, 328], [331, 332], [331, 334], [339, 345], [339, 348]]}, "calculate_optimal_text_scale": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [393], "excluded_lines": [], "start_line": 371, "executed_branches": [], "missing_branches": []}, "calculate_optimal_line_thickness": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 3, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 2, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [418, 419, 420], "excluded_lines": [], "start_line": 396, "executed_branches": [], "missing_branches": [[418, 419], [418, 420]]}, "": {"executed_lines": [1, 3, 4, 6, 7, 8, 10, 11, 14, 44, 72, 114, 166, 189, 218, 301, 371, 396], "summary": {"covered_lines": 18, "num_statements": 18, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 3, 4, 6, 7, 8, 10, 11, 14, 44, 62, 69, 72, 114, 166, 183, 186, 189, 206, 209, 210, 211, 215, 218, 301, 371, 396], "summary": {"covered_lines": 27, "num_statements": 78, "percent_covered": 28.571428571428573, "percent_covered_display": "29", "missing_lines": 51, "excluded_lines": 0, "percent_statements_covered": 34.61538461538461, "percent_statements_covered_display": "35", "num_branches": 20, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 19, "percent_branches_covered": 5.0, "percent_branches_covered_display": "5"}, "missing_lines": [34, 41, 90, 91, 99, 100, 107, 111, 132, 133, 134, 136, 140, 147, 148, 155, 156, 163, 207, 267, 274, 276, 283, 284, 288, 298, 325, 326, 327, 328, 331, 332, 334, 335, 336, 337, 339, 345, 348, 349, 350, 355, 358, 359, 360, 366, 368, 393, 418, 419, 420], "excluded_lines": [], "start_line": 1, "executed_branches": [[206, 209]], "missing_branches": [[90, 91], [90, 99], [147, 148], [147, 155], [155, 156], [155, 163], [206, 207], [283, 284], [283, 288], [325, 326], [325, 331], [326, 327], [326, 328], [331, 332], [331, 334], [339, 345], [339, 348], [418, 419], [418, 420]]}}}, "src\\supervision\\geometry\\__init__.py": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "src\\supervision\\geometry\\core.py": {"executed_lines": [1, 3, 4, 5, 8, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 24, 25, 29, 30, 50, 51, 53, 60, 62, 72, 73, 95, 96, 98, 99, 106, 107, 108, 110, 111, 123, 138, 139, 140, 141, 142, 145, 146, 170, 171, 172, 173, 175, 176, 180, 181, 182, 184, 185, 186, 188, 196], "summary": {"covered_lines": 57, "num_statements": 64, "percent_covered": 89.0625, "percent_covered_display": "89", "missing_lines": 7, "excluded_lines": 0, "percent_statements_covered": 89.0625, "percent_statements_covered_display": "89", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [26, 69, 118, 177, 178, 189, 197], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"Position.list": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [26], "excluded_lines": [], "start_line": 25, "executed_branches": [], "missing_branches": []}, "Point.as_xy_int_tuple": {"executed_lines": [60], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 53, "executed_branches": [], "missing_branches": []}, "Point.as_xy_float_tuple": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [69], "excluded_lines": [], "start_line": 62, "executed_branches": [], "missing_branches": []}, "Vector.magnitude": {"executed_lines": [106, 107, 108], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 99, "executed_branches": [], "missing_branches": []}, "Vector.center": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [118], "excluded_lines": [], "start_line": 111, "executed_branches": [], "missing_branches": []}, "Vector.cross_product": {"executed_lines": [138, 139, 140, 141, 142], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 123, "executed_branches": [], "missing_branches": []}, "Rect.from_xyxy": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 2, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [177, 178], "excluded_lines": [], "start_line": 176, "executed_branches": [], "missing_branches": []}, "Rect.top_left": {"executed_lines": [182], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 181, "executed_branches": [], "missing_branches": []}, "Rect.bottom_right": {"executed_lines": [186], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 185, "executed_branches": [], "missing_branches": []}, "Rect.pad": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [189], "excluded_lines": [], "start_line": 188, "executed_branches": [], "missing_branches": []}, "Rect.as_xyxy_int_tuple": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [197], "excluded_lines": [], "start_line": 196, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 5, 8, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 24, 25, 29, 30, 50, 51, 53, 62, 72, 73, 95, 96, 98, 99, 110, 111, 123, 145, 146, 170, 171, 172, 173, 175, 176, 180, 181, 184, 185, 188, 196], "summary": {"covered_lines": 46, "num_statements": 46, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"Position": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [26], "excluded_lines": [], "start_line": 8, "executed_branches": [], "missing_branches": []}, "Point": {"executed_lines": [60], "summary": {"covered_lines": 1, "num_statements": 2, "percent_covered": 50.0, "percent_covered_display": "50", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 50.0, "percent_statements_covered_display": "50", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [69], "excluded_lines": [], "start_line": 30, "executed_branches": [], "missing_branches": []}, "Vector": {"executed_lines": [106, 107, 108, 138, 139, 140, 141, 142], "summary": {"covered_lines": 8, "num_statements": 9, "percent_covered": 88.88888888888889, "percent_covered_display": "89", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 88.88888888888889, "percent_statements_covered_display": "89", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [118], "excluded_lines": [], "start_line": 73, "executed_branches": [], "missing_branches": []}, "Rect": {"executed_lines": [182, 186], "summary": {"covered_lines": 2, "num_statements": 6, "percent_covered": 33.333333333333336, "percent_covered_display": "33", "missing_lines": 4, "excluded_lines": 0, "percent_statements_covered": 33.333333333333336, "percent_statements_covered_display": "33", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [177, 178, 189, 197], "excluded_lines": [], "start_line": 146, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 5, 8, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 24, 25, 29, 30, 50, 51, 53, 62, 72, 73, 95, 96, 98, 99, 110, 111, 123, 145, 146, 170, 171, 172, 173, 175, 176, 180, 181, 184, 185, 188, 196], "summary": {"covered_lines": 46, "num_statements": 46, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "src\\supervision\\geometry\\utils.py": {"executed_lines": [1, 2, 4, 7, 40, 43, 44, 45, 48, 49, 51], "summary": {"covered_lines": 11, "num_statements": 14, "percent_covered": 72.22222222222223, "percent_covered_display": "72", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 78.57142857142857, "percent_statements_covered_display": "79", "num_branches": 4, "num_partial_branches": 2, "covered_branches": 2, "missing_branches": 2, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [41, 46, 47], "excluded_lines": [], "executed_branches": [[40, 43], [45, 48]], "missing_branches": [[40, 41], [45, 46]], "functions": {"get_polygon_center": {"executed_lines": [40, 43, 44, 45, 48, 49, 51], "summary": {"covered_lines": 7, "num_statements": 10, "percent_covered": 64.28571428571429, "percent_covered_display": "64", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 70.0, "percent_statements_covered_display": "70", "num_branches": 4, "num_partial_branches": 2, "covered_branches": 2, "missing_branches": 2, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [41, 46, 47], "excluded_lines": [], "start_line": 7, "executed_branches": [[40, 43], [45, 48]], "missing_branches": [[40, 41], [45, 46]]}, "": {"executed_lines": [1, 2, 4, 7], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 2, 4, 7, 40, 43, 44, 45, 48, 49, 51], "summary": {"covered_lines": 11, "num_statements": 14, "percent_covered": 72.22222222222223, "percent_covered_display": "72", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 78.57142857142857, "percent_statements_covered_display": "79", "num_branches": 4, "num_partial_branches": 2, "covered_branches": 2, "missing_branches": 2, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [41, 46, 47], "excluded_lines": [], "start_line": 1, "executed_branches": [[40, 43], [45, 48]], "missing_branches": [[40, 41], [45, 46]]}}}, "src\\supervision\\key_points\\__init__.py": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "src\\supervision\\key_points\\annotators.py": {"executed_lines": [1, 3, 4, 5, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19, 21, 24, 25, 26, 30, 37, 47, 48, 50, 51, 87, 88, 89, 91, 92, 93, 95, 99, 100, 108, 111, 117, 136, 137, 138, 140, 141, 208, 209, 210, 212, 213, 227, 228, 230, 231, 232, 233, 234, 236, 237, 238, 239, 240, 241, 243, 244, 248, 250, 258, 261, 268, 274, 277, 279, 280, 281, 282, 283, 284, 285, 291, 294, 295, 296, 298, 299, 300, 301, 304, 307, 308, 309, 313, 315, 319, 321, 322, 325, 327, 328, 330, 334, 335, 338, 339, 340, 342, 346, 347, 348, 349, 351, 352, 355, 356, 357, 358, 359, 360, 364, 367, 370, 383, 402, 403, 405, 406, 448, 449, 450, 452, 453, 454, 455, 467, 468, 471, 482, 500, 501, 503, 504, 547, 548, 549, 551, 552, 553, 565, 568, 581, 583, 602, 603, 605, 606, 648, 649, 650, 652, 653, 655, 656, 657, 658, 661, 662, 663, 664, 666, 667, 668, 669, 670, 673, 674, 675, 677, 678, 679, 680, 681, 683, 684, 686, 687, 689, 691, 692, 693, 694, 696, 697, 700, 703, 709, 740, 907, 908, 929, 930, 936, 937, 940, 941, 942, 946, 947, 948, 950, 952, 953, 957, 959, 960, 965, 966, 967, 971, 972], "summary": {"covered_lines": 217, "num_statements": 282, "percent_covered": 75.62814070351759, "percent_covered_display": "76", "missing_lines": 65, "excluded_lines": 0, "percent_statements_covered": 76.95035460992908, "percent_statements_covered_display": "77", "num_branches": 116, "num_partial_branches": 10, "covered_branches": 84, "missing_branches": 32, "percent_branches_covered": 72.41379310344827, "percent_branches_covered_display": "72"}, "missing_lines": [27, 94, 214, 219, 220, 224, 225, 226, 242, 286, 320, 323, 324, 326, 341, 350, 659, 671, 732, 733, 734, 735, 736, 737, 738, 827, 828, 830, 831, 832, 834, 835, 836, 837, 839, 840, 842, 845, 846, 847, 851, 852, 853, 854, 855, 856, 858, 859, 860, 861, 862, 864, 865, 867, 879, 881, 882, 883, 885, 888, 894, 905, 915, 921, 922], "excluded_lines": [], "executed_branches": [[88, 89], [88, 91], [91, 92], [91, 108], [92, 91], [92, 93], [93, 95], [95, 99], [95, 100], [209, 210], [209, 212], [212, 213], [212, 258], [213, 227], [227, 228], [227, 230], [231, 232], [231, 234], [236, 212], [236, 237], [241, 243], [243, 244], [243, 250], [244, 248], [244, 250], [279, 280], [279, 281], [281, 282], [281, 283], [283, 284], [283, 285], [285, 291], [300, 301], [300, 304], [308, 309], [308, 313], [319, 321], [325, 327], [338, 339], [338, 367], [339, 338], [339, 340], [340, 342], [342, 346], [342, 347], [349, 351], [356, 339], [356, 357], [358, 359], [358, 360], [449, 450], [449, 452], [453, 454], [453, 467], [454, 453], [454, 455], [548, 549], [548, 551], [551, 552], [551, 565], [552, 551], [552, 553], [649, 650], [649, 652], [655, 656], [655, 696], [656, 655], [656, 657], [658, 661], [670, 673], [936, 937], [936, 940], [940, 941], [940, 950], [941, 942], [941, 946], [946, 947], [946, 948], [952, 953], [952, 957], [965, 966], [965, 972], [966, 967], [966, 971]], "missing_branches": [[93, 94], [213, 214], [219, 220], [219, 224], [224, 225], [224, 226], [241, 242], [285, 286], [319, 320], [325, 326], [340, 341], [349, 350], [658, 659], [670, 671], [831, 832], [831, 834], [839, 840], [839, 864], [851, 839], [851, 852], [852, 853], [852, 855], [853, 854], [853, 858], [855, 856], [855, 858], [864, 865], [864, 867], [881, 882], [881, 885], [885, 888], [885, 905]], "functions": {"BaseKeyPointAnnotator.annotate": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [27], "excluded_lines": [], "start_line": 26, "executed_branches": [], "missing_branches": []}, "VertexAnnotator.__init__": {"executed_lines": [47, 48], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 37, "executed_branches": [], "missing_branches": []}, "VertexAnnotator.annotate": {"executed_lines": [87, 88, 89, 91, 92, 93, 95, 99, 100, 108], "summary": {"covered_lines": 10, "num_statements": 11, "percent_covered": 90.47619047619048, "percent_covered_display": "90", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 90.9090909090909, "percent_statements_covered_display": "91", "num_branches": 10, "num_partial_branches": 1, "covered_branches": 9, "missing_branches": 1, "percent_branches_covered": 90.0, "percent_branches_covered_display": "90"}, "missing_lines": [94], "excluded_lines": [], "start_line": 51, "executed_branches": [[88, 89], [88, 91], [91, 92], [91, 108], [92, 91], [92, 93], [93, 95], [95, 99], [95, 100]], "missing_branches": [[93, 94]]}, "EdgeAnnotator.__init__": {"executed_lines": [136, 137, 138], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 117, "executed_branches": [], "missing_branches": []}, "EdgeAnnotator.annotate": {"executed_lines": [208, 209, 210, 212, 213, 227, 228, 230, 231, 232, 233, 234, 236, 237, 238, 239, 240, 241, 243, 244, 248, 250, 258], "summary": {"covered_lines": 23, "num_statements": 30, "percent_covered": 75.0, "percent_covered_display": "75", "missing_lines": 7, "excluded_lines": 0, "percent_statements_covered": 76.66666666666667, "percent_statements_covered_display": "77", "num_branches": 22, "num_partial_branches": 2, "covered_branches": 16, "missing_branches": 6, "percent_branches_covered": 72.72727272727273, "percent_branches_covered_display": "73"}, "missing_lines": [214, 219, 220, 224, 225, 226, 242], "excluded_lines": [], "start_line": 141, "executed_branches": [[209, 210], [209, 212], [212, 213], [212, 258], [213, 227], [227, 228], [227, 230], [231, 232], [231, 234], [236, 212], [236, 237], [241, 243], [243, 244], [243, 250], [244, 248], [244, 250]], "missing_branches": [[213, 214], [219, 220], [219, 224], [224, 225], [224, 226], [241, 242]]}, "_BaseVertexEllipseAnnotator.__init__": {"executed_lines": [274, 277, 279, 280, 281, 282, 283, 284, 285, 291, 294, 295, 296], "summary": {"covered_lines": 13, "num_statements": 14, "percent_covered": 90.9090909090909, "percent_covered_display": "91", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 92.85714285714286, "percent_statements_covered_display": "93", "num_branches": 8, "num_partial_branches": 1, "covered_branches": 7, "missing_branches": 1, "percent_branches_covered": 87.5, "percent_branches_covered_display": "88"}, "missing_lines": [286], "excluded_lines": [], "start_line": 268, "executed_branches": [[279, 280], [279, 281], [281, 282], [281, 283], [283, 284], [283, 285], [285, 291]], "missing_branches": [[285, 286]]}, "_BaseVertexEllipseAnnotator._get_covariances": {"executed_lines": [299, 300, 301, 304, 307, 308, 309, 313], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 298, "executed_branches": [[300, 301], [300, 304], [308, 309], [308, 313]], "missing_branches": []}, "_BaseVertexEllipseAnnotator._decompose_covariance": {"executed_lines": [319, 321, 322, 325, 327, 328], "summary": {"covered_lines": 6, "num_statements": 10, "percent_covered": 57.142857142857146, "percent_covered_display": "57", "missing_lines": 4, "excluded_lines": 0, "percent_statements_covered": 60.0, "percent_statements_covered_display": "60", "num_branches": 4, "num_partial_branches": 2, "covered_branches": 2, "missing_branches": 2, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [320, 323, 324, 326], "excluded_lines": [], "start_line": 315, "executed_branches": [[319, 321], [325, 327]], "missing_branches": [[319, 320], [325, 326]]}, "_BaseVertexEllipseAnnotator._iter_ellipse_params": {"executed_lines": [334, 335, 338, 339, 340, 342, 346, 347, 348, 349, 351, 352, 355, 356, 357, 358, 359, 360, 364, 367], "summary": {"covered_lines": 20, "num_statements": 22, "percent_covered": 88.88888888888889, "percent_covered_display": "89", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 90.9090909090909, "percent_statements_covered_display": "91", "num_branches": 14, "num_partial_branches": 2, "covered_branches": 12, "missing_branches": 2, "percent_branches_covered": 85.71428571428571, "percent_branches_covered_display": "86"}, "missing_lines": [341, 350], "excluded_lines": [], "start_line": 330, "executed_branches": [[338, 339], [338, 367], [339, 338], [339, 340], [340, 342], [342, 346], [342, 347], [349, 351], [356, 339], [356, 357], [358, 359], [358, 360]], "missing_branches": [[340, 341], [349, 350]]}, "VertexEllipseAreaAnnotator.__init__": {"executed_lines": [402, 403], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 383, "executed_branches": [], "missing_branches": []}, "VertexEllipseAreaAnnotator.annotate": {"executed_lines": [448, 449, 450, 452, 453, 454, 455, 467, 468], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 6, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 406, "executed_branches": [[449, 450], [449, 452], [453, 454], [453, 467], [454, 453], [454, 455]], "missing_branches": []}, "VertexEllipseOutlineAnnotator.__init__": {"executed_lines": [500, 501], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 482, "executed_branches": [], "missing_branches": []}, "VertexEllipseOutlineAnnotator.annotate": {"executed_lines": [547, 548, 549, 551, 552, 553, 565], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 6, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 504, "executed_branches": [[548, 549], [548, 551], [551, 552], [551, 565], [552, 551], [552, 553]], "missing_branches": []}, "VertexEllipseHaloAnnotator.__init__": {"executed_lines": [602, 603], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 583, "executed_branches": [], "missing_branches": []}, "VertexEllipseHaloAnnotator.annotate": {"executed_lines": [648, 649, 650, 652, 653, 655, 656, 657, 658, 661, 662, 663, 664, 666, 667, 668, 669, 670, 673, 674, 675, 677, 678, 679, 680, 681, 683, 684, 686, 687, 689, 691, 692, 693, 694, 696, 697], "summary": {"covered_lines": 37, "num_statements": 39, "percent_covered": 91.83673469387755, "percent_covered_display": "92", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 94.87179487179488, "percent_statements_covered_display": "95", "num_branches": 10, "num_partial_branches": 2, "covered_branches": 8, "missing_branches": 2, "percent_branches_covered": 80.0, "percent_branches_covered_display": "80"}, "missing_lines": [659, 671], "excluded_lines": [], "start_line": 606, "executed_branches": [[649, 650], [649, 652], [655, 656], [655, 696], [656, 655], [656, 657], [658, 661], [670, 673]], "missing_branches": [[658, 659], [670, 671]]}, "VertexLabelAnnotator.__init__": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 7, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 7, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [732, 733, 734, 735, 736, 737, 738], "excluded_lines": [], "start_line": 709, "executed_branches": [], "missing_branches": []}, "VertexLabelAnnotator.annotate": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 37, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 37, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 18, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 18, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [827, 828, 830, 831, 832, 834, 835, 836, 837, 839, 840, 842, 845, 846, 847, 851, 852, 853, 854, 855, 856, 858, 859, 860, 861, 862, 864, 865, 867, 879, 881, 882, 883, 885, 888, 894, 905], "excluded_lines": [], "start_line": 740, "executed_branches": [], "missing_branches": [[831, 832], [831, 834], [839, 840], [839, 864], [851, 839], [851, 852], [852, 853], [852, 855], [853, 854], [853, 858], [855, 856], [855, 858], [864, 865], [864, 867], [881, 882], [881, 885], [885, 888], [885, 905]]}, "VertexLabelAnnotator.get_text_bounding_box": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 3, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [915, 921, 922], "excluded_lines": [], "start_line": 908, "executed_branches": [], "missing_branches": []}, "VertexLabelAnnotator._resolve_labels": {"executed_lines": [936, 937, 940, 941, 942, 946, 947, 948, 950, 952, 953, 957], "summary": {"covered_lines": 12, "num_statements": 12, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 10, "num_partial_branches": 0, "covered_branches": 10, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 930, "executed_branches": [[936, 937], [936, 940], [940, 941], [940, 950], [941, 942], [941, 946], [946, 947], [946, 948], [952, 953], [952, 957]], "missing_branches": []}, "VertexLabelAnnotator._resolve_color_list": {"executed_lines": [965, 966, 967, 971, 972], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 960, "executed_branches": [[965, 966], [965, 972], [966, 967], [966, 971]], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 5, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19, 21, 24, 25, 26, 30, 37, 50, 51, 111, 117, 140, 141, 261, 268, 298, 315, 330, 370, 383, 405, 406, 471, 482, 503, 504, 568, 581, 583, 605, 606, 700, 703, 709, 740, 907, 908, 929, 930, 959, 960], "summary": {"covered_lines": 56, "num_statements": 56, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"BaseKeyPointAnnotator": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [27], "excluded_lines": [], "start_line": 24, "executed_branches": [], "missing_branches": []}, "VertexAnnotator": {"executed_lines": [47, 48, 87, 88, 89, 91, 92, 93, 95, 99, 100, 108], "summary": {"covered_lines": 12, "num_statements": 13, "percent_covered": 91.30434782608695, "percent_covered_display": "91", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 92.3076923076923, "percent_statements_covered_display": "92", "num_branches": 10, "num_partial_branches": 1, "covered_branches": 9, "missing_branches": 1, "percent_branches_covered": 90.0, "percent_branches_covered_display": "90"}, "missing_lines": [94], "excluded_lines": [], "start_line": 30, "executed_branches": [[88, 89], [88, 91], [91, 92], [91, 108], [92, 91], [92, 93], [93, 95], [95, 99], [95, 100]], "missing_branches": [[93, 94]]}, "EdgeAnnotator": {"executed_lines": [136, 137, 138, 208, 209, 210, 212, 213, 227, 228, 230, 231, 232, 233, 234, 236, 237, 238, 239, 240, 241, 243, 244, 248, 250, 258], "summary": {"covered_lines": 26, "num_statements": 33, "percent_covered": 76.36363636363636, "percent_covered_display": "76", "missing_lines": 7, "excluded_lines": 0, "percent_statements_covered": 78.78787878787878, "percent_statements_covered_display": "79", "num_branches": 22, "num_partial_branches": 2, "covered_branches": 16, "missing_branches": 6, "percent_branches_covered": 72.72727272727273, "percent_branches_covered_display": "73"}, "missing_lines": [214, 219, 220, 224, 225, 226, 242], "excluded_lines": [], "start_line": 111, "executed_branches": [[209, 210], [209, 212], [212, 213], [212, 258], [213, 227], [227, 228], [227, 230], [231, 232], [231, 234], [236, 212], [236, 237], [241, 243], [243, 244], [243, 250], [244, 248], [244, 250]], "missing_branches": [[213, 214], [219, 220], [219, 224], [224, 225], [224, 226], [241, 242]]}, "_BaseVertexEllipseAnnotator": {"executed_lines": [274, 277, 279, 280, 281, 282, 283, 284, 285, 291, 294, 295, 296, 299, 300, 301, 304, 307, 308, 309, 313, 319, 321, 322, 325, 327, 328, 334, 335, 338, 339, 340, 342, 346, 347, 348, 349, 351, 352, 355, 356, 357, 358, 359, 360, 364, 367], "summary": {"covered_lines": 47, "num_statements": 54, "percent_covered": 85.71428571428571, "percent_covered_display": "86", "missing_lines": 7, "excluded_lines": 0, "percent_statements_covered": 87.03703703703704, "percent_statements_covered_display": "87", "num_branches": 30, "num_partial_branches": 5, "covered_branches": 25, "missing_branches": 5, "percent_branches_covered": 83.33333333333333, "percent_branches_covered_display": "83"}, "missing_lines": [286, 320, 323, 324, 326, 341, 350], "excluded_lines": [], "start_line": 261, "executed_branches": [[279, 280], [279, 281], [281, 282], [281, 283], [283, 284], [283, 285], [285, 291], [300, 301], [300, 304], [308, 309], [308, 313], [319, 321], [325, 327], [338, 339], [338, 367], [339, 338], [339, 340], [340, 342], [342, 346], [342, 347], [349, 351], [356, 339], [356, 357], [358, 359], [358, 360]], "missing_branches": [[285, 286], [319, 320], [325, 326], [340, 341], [349, 350]]}, "VertexEllipseAreaAnnotator": {"executed_lines": [402, 403, 448, 449, 450, 452, 453, 454, 455, 467, 468], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 6, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 370, "executed_branches": [[449, 450], [449, 452], [453, 454], [453, 467], [454, 453], [454, 455]], "missing_branches": []}, "VertexEllipseOutlineAnnotator": {"executed_lines": [500, 501, 547, 548, 549, 551, 552, 553, 565], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 6, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 471, "executed_branches": [[548, 549], [548, 551], [551, 552], [551, 565], [552, 551], [552, 553]], "missing_branches": []}, "VertexEllipseHaloAnnotator": {"executed_lines": [602, 603, 648, 649, 650, 652, 653, 655, 656, 657, 658, 661, 662, 663, 664, 666, 667, 668, 669, 670, 673, 674, 675, 677, 678, 679, 680, 681, 683, 684, 686, 687, 689, 691, 692, 693, 694, 696, 697], "summary": {"covered_lines": 39, "num_statements": 41, "percent_covered": 92.15686274509804, "percent_covered_display": "92", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 95.1219512195122, "percent_statements_covered_display": "95", "num_branches": 10, "num_partial_branches": 2, "covered_branches": 8, "missing_branches": 2, "percent_branches_covered": 80.0, "percent_branches_covered_display": "80"}, "missing_lines": [659, 671], "excluded_lines": [], "start_line": 568, "executed_branches": [[649, 650], [649, 652], [655, 656], [655, 696], [656, 655], [656, 657], [658, 661], [670, 673]], "missing_branches": [[658, 659], [670, 671]]}, "VertexLabelAnnotator": {"executed_lines": [936, 937, 940, 941, 942, 946, 947, 948, 950, 952, 953, 957, 965, 966, 967, 971, 972], "summary": {"covered_lines": 17, "num_statements": 64, "percent_covered": 32.291666666666664, "percent_covered_display": "32", "missing_lines": 47, "excluded_lines": 0, "percent_statements_covered": 26.5625, "percent_statements_covered_display": "27", "num_branches": 32, "num_partial_branches": 0, "covered_branches": 14, "missing_branches": 18, "percent_branches_covered": 43.75, "percent_branches_covered_display": "44"}, "missing_lines": [732, 733, 734, 735, 736, 737, 738, 827, 828, 830, 831, 832, 834, 835, 836, 837, 839, 840, 842, 845, 846, 847, 851, 852, 853, 854, 855, 856, 858, 859, 860, 861, 862, 864, 865, 867, 879, 881, 882, 883, 885, 888, 894, 905, 915, 921, 922], "excluded_lines": [], "start_line": 703, "executed_branches": [[936, 937], [936, 940], [940, 941], [940, 950], [941, 942], [941, 946], [946, 947], [946, 948], [952, 953], [952, 957], [965, 966], [965, 972], [966, 967], [966, 971]], "missing_branches": [[831, 832], [831, 834], [839, 840], [839, 864], [851, 839], [851, 852], [852, 853], [852, 855], [853, 854], [853, 858], [855, 856], [855, 858], [864, 865], [864, 867], [881, 882], [881, 885], [885, 888], [885, 905]]}, "": {"executed_lines": [1, 3, 4, 5, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19, 21, 24, 25, 26, 30, 37, 50, 51, 111, 117, 140, 141, 261, 268, 298, 315, 330, 370, 383, 405, 406, 471, 482, 503, 504, 568, 581, 583, 605, 606, 700, 703, 709, 740, 907, 908, 929, 930, 959, 960], "summary": {"covered_lines": 56, "num_statements": 56, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "src\\supervision\\key_points\\core.py": {"executed_lines": [1, 3, 4, 5, 6, 8, 9, 11, 12, 13, 14, 18, 19, 21, 23, 31, 32, 39, 42, 46, 47, 48, 51, 63, 65, 67, 68, 69, 71, 74, 75, 238, 239, 240, 241, 242, 243, 245, 277, 278, 279, 283, 288, 290, 291, 292, 293, 294, 295, 296, 298, 299, 308, 309, 317, 318, 325, 343, 345, 359, 360, 369, 370, 372, 387, 388, 430, 431, 436, 438, 440, 441, 443, 444, 445, 446, 448, 449, 450, 451, 452, 453, 454, 455, 457, 458, 460, 464, 471, 472, 550, 551, 552, 553, 556, 573, 576, 577, 578, 579, 580, 581, 582, 586, 587, 589, 590, 592, 597, 598, 636, 637, 666, 667, 669, 670, 674, 675, 679, 680, 687, 694, 695, 745, 746, 830, 864, 865, 866, 870, 871, 875, 876, 877, 883, 884, 885, 886, 887, 891, 892, 893, 894, 895, 896, 897, 901, 904, 905, 906, 907, 910, 911, 912, 914, 916, 925, 930, 931, 932, 934, 935, 937, 938, 939, 940, 942, 943, 944, 945, 947, 949, 959, 961, 971, 972, 977, 982, 985, 988, 989, 998, 1009, 1017, 1018, 1021, 1022, 1023, 1026, 1028, 1031, 1032, 1033, 1036, 1038, 1040, 1082, 1085, 1086, 1088, 1089, 1090, 1092, 1101, 1128, 1129, 1131, 1132, 1134, 1136, 1137, 1153, 1155, 1171, 1172, 1173, 1175, 1218, 1219, 1221, 1222, 1226, 1227, 1233, 1234, 1235, 1236, 1237, 1238, 1239, 1240, 1241, 1243, 1244, 1246, 1247, 1255, 1261, 1263, 1295, 1296, 1298, 1299, 1300, 1301, 1305, 1306, 1308, 1309, 1310, 1311, 1312, 1314, 1316, 1318, 1319, 1320, 1321, 1322, 1323, 1324, 1328, 1329, 1330, 1331, 1333], "summary": {"covered_lines": 266, "num_statements": 323, "percent_covered": 78.34394904458598, "percent_covered_display": "78", "missing_lines": 57, "excluded_lines": 0, "percent_statements_covered": 82.3529411764706, "percent_statements_covered_display": "82", "num_branches": 148, "num_partial_branches": 23, "covered_branches": 103, "missing_branches": 45, "percent_branches_covered": 69.5945945945946, "percent_branches_covered_display": "70"}, "missing_lines": [64, 66, 70, 311, 315, 319, 323, 371, 437, 439, 554, 562, 563, 564, 565, 566, 568, 574, 623, 624, 626, 627, 628, 630, 631, 634, 677, 681, 682, 683, 684, 685, 727, 728, 729, 730, 743, 808, 809, 810, 812, 820, 822, 828, 908, 955, 956, 957, 1010, 1011, 1012, 1015, 1016, 1027, 1037, 1083, 1326], "excluded_lines": [], "executed_branches": [[46, 47], [46, 48], [63, 65], [65, 67], [67, 68], [67, 69], [69, 71], [277, 278], [277, 290], [278, 279], [278, 283], [359, -345], [359, 360], [370, 372], [430, 431], [430, 436], [436, 438], [438, 440], [440, 441], [440, 443], [448, 449], [448, 460], [451, 452], [451, 454], [550, 551], [552, 553], [552, 573], [553, 556], [573, 576], [578, 579], [578, 592], [581, 582], [581, 589], [666, 667], [666, 669], [674, 675], [680, 687], [865, 866], [865, 870], [870, 871], [870, 875], [876, 877], [876, 883], [886, 887], [886, 891], [892, 893], [892, 894], [894, 895], [894, 906], [897, 901], [897, 904], [904, 894], [904, 905], [907, 910], [911, 912], [930, 931], [930, 932], [934, 935], [934, 937], [937, 938], [937, 939], [939, 940], [939, 942], [942, 943], [942, 944], [944, 945], [944, 947], [949, 959], [1009, 1017], [1017, 1018], [1017, 1038], [1018, 1021], [1018, 1028], [1022, 1023], [1026, 1038], [1028, 1031], [1032, 1033], [1036, 1038], [1082, 1085], [1085, 1086], [1085, 1088], [1128, 1129], [1128, 1131], [1131, 1132], [1218, 1219], [1218, 1221], [1221, 1222], [1221, 1226], [1226, 1227], [1226, 1233], [1235, 1236], [1235, 1237], [1243, 1244], [1243, 1246], [1295, 1296], [1295, 1298], [1299, 1300], [1299, 1305], [1318, 1319], [1318, 1320], [1320, 1321], [1322, 1323], [1322, 1324]], "missing_branches": [[63, 64], [65, 66], [69, 70], [370, 371], [436, 437], [438, 439], [550, 562], [553, 554], [562, 563], [562, 564], [564, 565], [564, 573], [565, 566], [565, 568], [573, 574], [623, 624], [623, 626], [674, 677], [680, 681], [682, 683], [682, 685], [727, 728], [727, 743], [728, 729], [728, 730], [808, 809], [808, 828], [809, 810], [809, 812], [907, 908], [911, 914], [949, 955], [1009, 1010], [1011, 1012], [1011, 1015], [1015, 1016], [1015, 1038], [1022, 1026], [1026, 1027], [1028, 1038], [1032, 1036], [1036, 1037], [1082, 1083], [1131, 1134], [1320, 1326]], "functions": {"_optional_array_equal": {"executed_lines": [46, 47, 48], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 42, "executed_branches": [[46, 47], [46, 48]], "missing_branches": []}, "_normalize_row_index": {"executed_lines": [63, 65, 67, 68, 69, 71], "summary": {"covered_lines": 6, "num_statements": 9, "percent_covered": 64.70588235294117, "percent_covered_display": "65", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 66.66666666666667, "percent_statements_covered_display": "67", "num_branches": 8, "num_partial_branches": 3, "covered_branches": 5, "missing_branches": 3, "percent_branches_covered": 62.5, "percent_branches_covered_display": "62"}, "missing_lines": [64, 66, 70], "excluded_lines": [], "start_line": 51, "executed_branches": [[63, 65], [65, 67], [67, 68], [67, 69], [69, 71]], "missing_branches": [[63, 64], [65, 66], [69, 70]]}, "KeyPoints.__init__": {"executed_lines": [277, 278, 279, 283, 288, 290, 291, 292, 293, 294, 295, 296], "summary": {"covered_lines": 12, "num_statements": 12, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 245, "executed_branches": [[277, 278], [277, 290], [278, 279], [278, 283]], "missing_branches": []}, "KeyPoints.__post_init__": {"executed_lines": [299], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 298, "executed_branches": [], "missing_branches": []}, "KeyPoints.confidence": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 2, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [319, 323], "excluded_lines": [], "start_line": 318, "executed_branches": [], "missing_branches": []}, "KeyPoints.__len__": {"executed_lines": [343], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 325, "executed_branches": [], "missing_branches": []}, "KeyPoints.__iter__": {"executed_lines": [359, 360], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 345, "executed_branches": [[359, -345], [359, 360]], "missing_branches": []}, "KeyPoints.__eq__": {"executed_lines": [370, 372], "summary": {"covered_lines": 2, "num_statements": 3, "percent_covered": 60.0, "percent_covered_display": "60", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 66.66666666666667, "percent_statements_covered_display": "67", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [371], "excluded_lines": [], "start_line": 369, "executed_branches": [[370, 372]], "missing_branches": [[370, 371]]}, "KeyPoints.from_inference": {"executed_lines": [430, 431, 436, 438, 440, 441, 443, 444, 445, 446, 448, 449, 450, 451, 452, 453, 454, 455, 457, 458, 460, 464], "summary": {"covered_lines": 22, "num_statements": 24, "percent_covered": 88.88888888888889, "percent_covered_display": "89", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 91.66666666666667, "percent_statements_covered_display": "92", "num_branches": 12, "num_partial_branches": 2, "covered_branches": 10, "missing_branches": 2, "percent_branches_covered": 83.33333333333333, "percent_branches_covered_display": "83"}, "missing_lines": [437, 439], "excluded_lines": [], "start_line": 388, "executed_branches": [[430, 431], [430, 436], [436, 438], [438, 440], [440, 441], [440, 443], [448, 449], [448, 460], [451, 452], [451, 454]], "missing_branches": [[436, 437], [438, 439]]}, "KeyPoints.from_mediapipe": {"executed_lines": [550, 551, 552, 553, 556, 573, 576, 577, 578, 579, 580, 581, 582, 586, 587, 589, 590, 592], "summary": {"covered_lines": 18, "num_statements": 26, "percent_covered": 61.36363636363637, "percent_covered_display": "61", "missing_lines": 8, "excluded_lines": 0, "percent_statements_covered": 69.23076923076923, "percent_statements_covered_display": "69", "num_branches": 18, "num_partial_branches": 3, "covered_branches": 9, "missing_branches": 9, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [554, 562, 563, 564, 565, 566, 568, 574], "excluded_lines": [], "start_line": 472, "executed_branches": [[550, 551], [552, 553], [552, 573], [553, 556], [573, 576], [578, 579], [578, 592], [581, 582], [581, 589]], "missing_branches": [[550, 562], [553, 554], [562, 563], [562, 564], [564, 565], [564, 573], [565, 566], [565, 568], [573, 574]]}, "KeyPoints.from_ultralytics": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 8, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 8, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 2, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [623, 624, 626, 627, 628, 630, 631, 634], "excluded_lines": [], "start_line": 598, "executed_branches": [], "missing_branches": [[623, 624], [623, 626]]}, "KeyPoints.from_yolo_nas": {"executed_lines": [666, 667, 669, 670, 674, 675, 679, 680, 687], "summary": {"covered_lines": 9, "num_statements": 15, "percent_covered": 56.52173913043478, "percent_covered_display": "57", "missing_lines": 6, "excluded_lines": 0, "percent_statements_covered": 60.0, "percent_statements_covered_display": "60", "num_branches": 8, "num_partial_branches": 2, "covered_branches": 4, "missing_branches": 4, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [677, 681, 682, 683, 684, 685], "excluded_lines": [], "start_line": 637, "executed_branches": [[666, 667], [666, 669], [674, 675], [680, 687]], "missing_branches": [[674, 677], [680, 681], [682, 683], [682, 685]]}, "KeyPoints.from_detectron2": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 5, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 5, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 4, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [727, 728, 729, 730, 743], "excluded_lines": [], "start_line": 695, "executed_branches": [], "missing_branches": [[727, 728], [727, 743], [728, 729], [728, 730]]}, "KeyPoints.from_transformers": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 7, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 7, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 4, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [808, 809, 810, 812, 820, 822, 828], "excluded_lines": [], "start_line": 746, "executed_branches": [], "missing_branches": [[808, 809], [808, 828], [809, 810], [809, 812]]}, "KeyPoints._get_by_2d_bool_mask": {"executed_lines": [864, 865, 866, 870, 871, 875, 876, 877, 883, 884, 885, 886, 887, 891, 892, 893, 894, 895, 896, 897, 901, 904, 905, 906, 907, 910, 911, 912, 914, 916], "summary": {"covered_lines": 30, "num_statements": 31, "percent_covered": 94.11764705882354, "percent_covered_display": "94", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 96.7741935483871, "percent_statements_covered_display": "97", "num_branches": 20, "num_partial_branches": 2, "covered_branches": 18, "missing_branches": 2, "percent_branches_covered": 90.0, "percent_branches_covered_display": "90"}, "missing_lines": [908], "excluded_lines": [], "start_line": 830, "executed_branches": [[865, 866], [865, 870], [870, 871], [870, 875], [876, 877], [876, 883], [886, 887], [886, 891], [892, 893], [892, 894], [894, 895], [894, 906], [897, 901], [897, 904], [904, 894], [904, 905], [907, 910], [911, 912]], "missing_branches": [[907, 908], [911, 914]]}, "KeyPoints._normalize_getitem_index": {"executed_lines": [930, 931, 932, 934, 935, 937, 938, 939, 940, 942, 943, 944, 945, 947, 949, 959], "summary": {"covered_lines": 16, "num_statements": 19, "percent_covered": 87.87878787878788, "percent_covered_display": "88", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 84.21052631578948, "percent_statements_covered_display": "84", "num_branches": 14, "num_partial_branches": 1, "covered_branches": 13, "missing_branches": 1, "percent_branches_covered": 92.85714285714286, "percent_branches_covered_display": "93"}, "missing_lines": [955, 956, 957], "excluded_lines": [], "start_line": 925, "executed_branches": [[930, 931], [930, 932], [934, 935], [934, 937], [937, 938], [937, 939], [939, 940], [939, 942], [942, 943], [942, 944], [944, 945], [944, 947], [949, 959]], "missing_branches": [[949, 955]]}, "KeyPoints._select_fields": {"executed_lines": [971, 972, 977, 982, 985, 988, 989], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 961, "executed_branches": [], "missing_branches": []}, "KeyPoints._reshape_selected": {"executed_lines": [1009, 1017, 1018, 1021, 1022, 1023, 1026, 1028, 1031, 1032, 1033, 1036, 1038], "summary": {"covered_lines": 13, "num_statements": 20, "percent_covered": 57.5, "percent_covered_display": "58", "missing_lines": 7, "excluded_lines": 0, "percent_statements_covered": 65.0, "percent_statements_covered_display": "65", "num_branches": 20, "num_partial_branches": 6, "covered_branches": 10, "missing_branches": 10, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [1010, 1011, 1012, 1015, 1016, 1027, 1037], "excluded_lines": [], "start_line": 998, "executed_branches": [[1009, 1017], [1017, 1018], [1017, 1038], [1018, 1021], [1018, 1028], [1022, 1023], [1026, 1038], [1028, 1031], [1032, 1033], [1036, 1038]], "missing_branches": [[1009, 1010], [1011, 1012], [1011, 1015], [1015, 1016], [1015, 1038], [1022, 1026], [1026, 1027], [1028, 1038], [1032, 1036], [1036, 1037]]}, "KeyPoints.__getitem__": {"executed_lines": [1082, 1085, 1086, 1088, 1089, 1090, 1092], "summary": {"covered_lines": 7, "num_statements": 8, "percent_covered": 83.33333333333333, "percent_covered_display": "83", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 87.5, "percent_statements_covered_display": "88", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [1083], "excluded_lines": [], "start_line": 1040, "executed_branches": [[1082, 1085], [1085, 1086], [1085, 1088]], "missing_branches": [[1082, 1083]]}, "KeyPoints.__setitem__": {"executed_lines": [1128, 1129, 1131, 1132, 1134], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 88.88888888888889, "percent_covered_display": "89", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [], "excluded_lines": [], "start_line": 1101, "executed_branches": [[1128, 1129], [1128, 1131], [1131, 1132]], "missing_branches": [[1131, 1134]]}, "KeyPoints.empty": {"executed_lines": [1153], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1137, "executed_branches": [], "missing_branches": []}, "KeyPoints.is_empty": {"executed_lines": [1171, 1172, 1173], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1155, "executed_branches": [], "missing_branches": []}, "KeyPoints.with_nms": {"executed_lines": [1218, 1219, 1221, 1222, 1226, 1227, 1233, 1234, 1235, 1236, 1237, 1238, 1239, 1240, 1241, 1243, 1244, 1246, 1247, 1255, 1261], "summary": {"covered_lines": 21, "num_statements": 21, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 10, "num_partial_branches": 0, "covered_branches": 10, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1175, "executed_branches": [[1218, 1219], [1218, 1221], [1221, 1222], [1221, 1226], [1226, 1227], [1226, 1233], [1235, 1236], [1235, 1237], [1243, 1244], [1243, 1246]], "missing_branches": []}, "KeyPoints.as_detections": {"executed_lines": [1295, 1296, 1298, 1299, 1300, 1301, 1305, 1306, 1308, 1309, 1310, 1311, 1312, 1314, 1316, 1318, 1319, 1320, 1321, 1322, 1323, 1324, 1328, 1329, 1330, 1331, 1333], "summary": {"covered_lines": 27, "num_statements": 28, "percent_covered": 94.73684210526316, "percent_covered_display": "95", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 96.42857142857143, "percent_statements_covered_display": "96", "num_branches": 10, "num_partial_branches": 1, "covered_branches": 9, "missing_branches": 1, "percent_branches_covered": 90.0, "percent_branches_covered_display": "90"}, "missing_lines": [1326], "excluded_lines": [], "start_line": 1263, "executed_branches": [[1295, 1296], [1295, 1298], [1299, 1300], [1299, 1305], [1318, 1319], [1318, 1320], [1320, 1321], [1322, 1323], [1322, 1324]], "missing_branches": [[1320, 1326]]}, "": {"executed_lines": [1, 3, 4, 5, 6, 8, 9, 11, 12, 13, 14, 18, 19, 21, 23, 31, 32, 39, 42, 51, 74, 75, 238, 239, 240, 241, 242, 243, 245, 298, 308, 309, 317, 318, 325, 345, 369, 387, 388, 471, 472, 597, 598, 636, 637, 694, 695, 745, 746, 830, 925, 961, 998, 1040, 1101, 1136, 1137, 1155, 1175, 1263], "summary": {"covered_lines": 60, "num_statements": 60, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"KeyPoints": {"executed_lines": [277, 278, 279, 283, 288, 290, 291, 292, 293, 294, 295, 296, 299, 343, 359, 360, 370, 372, 430, 431, 436, 438, 440, 441, 443, 444, 445, 446, 448, 449, 450, 451, 452, 453, 454, 455, 457, 458, 460, 464, 550, 551, 552, 553, 556, 573, 576, 577, 578, 579, 580, 581, 582, 586, 587, 589, 590, 592, 666, 667, 669, 670, 674, 675, 679, 680, 687, 864, 865, 866, 870, 871, 875, 876, 877, 883, 884, 885, 886, 887, 891, 892, 893, 894, 895, 896, 897, 901, 904, 905, 906, 907, 910, 911, 912, 914, 916, 930, 931, 932, 934, 935, 937, 938, 939, 940, 942, 943, 944, 945, 947, 949, 959, 971, 972, 977, 982, 985, 988, 989, 1009, 1017, 1018, 1021, 1022, 1023, 1026, 1028, 1031, 1032, 1033, 1036, 1038, 1082, 1085, 1086, 1088, 1089, 1090, 1092, 1128, 1129, 1131, 1132, 1134, 1153, 1171, 1172, 1173, 1218, 1219, 1221, 1222, 1226, 1227, 1233, 1234, 1235, 1236, 1237, 1238, 1239, 1240, 1241, 1243, 1244, 1246, 1247, 1255, 1261, 1295, 1296, 1298, 1299, 1300, 1301, 1305, 1306, 1308, 1309, 1310, 1311, 1312, 1314, 1316, 1318, 1319, 1320, 1321, 1322, 1323, 1324, 1328, 1329, 1330, 1331, 1333], "summary": {"covered_lines": 197, "num_statements": 251, "percent_covered": 75.32133676092545, "percent_covered_display": "75", "missing_lines": 54, "excluded_lines": 0, "percent_statements_covered": 78.48605577689243, "percent_statements_covered_display": "78", "num_branches": 138, "num_partial_branches": 20, "covered_branches": 96, "missing_branches": 42, "percent_branches_covered": 69.56521739130434, "percent_branches_covered_display": "70"}, "missing_lines": [311, 315, 319, 323, 371, 437, 439, 554, 562, 563, 564, 565, 566, 568, 574, 623, 624, 626, 627, 628, 630, 631, 634, 677, 681, 682, 683, 684, 685, 727, 728, 729, 730, 743, 808, 809, 810, 812, 820, 822, 828, 908, 955, 956, 957, 1010, 1011, 1012, 1015, 1016, 1027, 1037, 1083, 1326], "excluded_lines": [], "start_line": 75, "executed_branches": [[277, 278], [277, 290], [278, 279], [278, 283], [359, -345], [359, 360], [370, 372], [430, 431], [430, 436], [436, 438], [438, 440], [440, 441], [440, 443], [448, 449], [448, 460], [451, 452], [451, 454], [550, 551], [552, 553], [552, 573], [553, 556], [573, 576], [578, 579], [578, 592], [581, 582], [581, 589], [666, 667], [666, 669], [674, 675], [680, 687], [865, 866], [865, 870], [870, 871], [870, 875], [876, 877], [876, 883], [886, 887], [886, 891], [892, 893], [892, 894], [894, 895], [894, 906], [897, 901], [897, 904], [904, 894], [904, 905], [907, 910], [911, 912], [930, 931], [930, 932], [934, 935], [934, 937], [937, 938], [937, 939], [939, 940], [939, 942], [942, 943], [942, 944], [944, 945], [944, 947], [949, 959], [1009, 1017], [1017, 1018], [1017, 1038], [1018, 1021], [1018, 1028], [1022, 1023], [1026, 1038], [1028, 1031], [1032, 1033], [1036, 1038], [1082, 1085], [1085, 1086], [1085, 1088], [1128, 1129], [1128, 1131], [1131, 1132], [1218, 1219], [1218, 1221], [1221, 1222], [1221, 1226], [1226, 1227], [1226, 1233], [1235, 1236], [1235, 1237], [1243, 1244], [1243, 1246], [1295, 1296], [1295, 1298], [1299, 1300], [1299, 1305], [1318, 1319], [1318, 1320], [1320, 1321], [1322, 1323], [1322, 1324]], "missing_branches": [[370, 371], [436, 437], [438, 439], [550, 562], [553, 554], [562, 563], [562, 564], [564, 565], [564, 573], [565, 566], [565, 568], [573, 574], [623, 624], [623, 626], [674, 677], [680, 681], [682, 683], [682, 685], [727, 728], [727, 743], [728, 729], [728, 730], [808, 809], [808, 828], [809, 810], [809, 812], [907, 908], [911, 914], [949, 955], [1009, 1010], [1011, 1012], [1011, 1015], [1015, 1016], [1015, 1038], [1022, 1026], [1026, 1027], [1028, 1038], [1032, 1036], [1036, 1037], [1082, 1083], [1131, 1134], [1320, 1326]]}, "": {"executed_lines": [1, 3, 4, 5, 6, 8, 9, 11, 12, 13, 14, 18, 19, 21, 23, 31, 32, 39, 42, 46, 47, 48, 51, 63, 65, 67, 68, 69, 71, 74, 75, 238, 239, 240, 241, 242, 243, 245, 298, 308, 309, 317, 318, 325, 345, 369, 387, 388, 471, 472, 597, 598, 636, 637, 694, 695, 745, 746, 830, 925, 961, 998, 1040, 1101, 1136, 1137, 1155, 1175, 1263], "summary": {"covered_lines": 69, "num_statements": 72, "percent_covered": 92.6829268292683, "percent_covered_display": "93", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 95.83333333333333, "percent_statements_covered_display": "96", "num_branches": 10, "num_partial_branches": 3, "covered_branches": 7, "missing_branches": 3, "percent_branches_covered": 70.0, "percent_branches_covered_display": "70"}, "missing_lines": [64, 66, 70], "excluded_lines": [], "start_line": 1, "executed_branches": [[46, 47], [46, 48], [63, 65], [65, 67], [67, 68], [67, 69], [69, 71]], "missing_branches": [[63, 64], [65, 66], [69, 70]]}}}, "src\\supervision\\key_points\\skeletons.py": {"executed_lines": [1, 3, 6, 7, 27, 65, 2624, 2639, 2640, 2642, 2643, 2645, 2646], "summary": {"covered_lines": 13, "num_statements": 13, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [[2642, -1], [2642, 2643]], "missing_branches": [], "functions": {"": {"executed_lines": [1, 3, 6, 7, 27, 65, 2624, 2639, 2640, 2642, 2643, 2645, 2646], "summary": {"covered_lines": 13, "num_statements": 13, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [[2642, -1], [2642, 2643]], "missing_branches": []}}, "classes": {"Skeleton": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 6, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 6, 7, 27, 65, 2624, 2639, 2640, 2642, 2643, 2645, 2646], "summary": {"covered_lines": 13, "num_statements": 13, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [[2642, -1], [2642, 2643]], "missing_branches": []}}}, "src\\supervision\\metrics\\__init__.py": {"executed_lines": [1, 6, 7, 11, 15, 16, 17, 23], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"": {"executed_lines": [1, 6, 7, 11, 15, 16, 17, 23], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 6, 7, 11, 15, 16, 17, 23], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "src\\supervision\\metrics\\core.py": {"executed_lines": [1, 3, 4, 5, 8, 13, 14, 21, 22, 28, 29, 36, 46, 47, 48, 51, 70, 71, 72], "summary": {"covered_lines": 19, "num_statements": 22, "percent_covered": 86.36363636363636, "percent_covered_display": "86", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 86.36363636363636, "percent_statements_covered_display": "86", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [19, 26, 33], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"Metric.update": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [19], "excluded_lines": [], "start_line": 14, "executed_branches": [], "missing_branches": []}, "Metric.reset": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [26], "excluded_lines": [], "start_line": 22, "executed_branches": [], "missing_branches": []}, "Metric.compute": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [33], "excluded_lines": [], "start_line": 29, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 5, 8, 13, 14, 21, 22, 28, 29, 36, 46, 47, 48, 51, 70, 71, 72], "summary": {"covered_lines": 19, "num_statements": 19, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"Metric": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 3, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [19, 26, 33], "excluded_lines": [], "start_line": 8, "executed_branches": [], "missing_branches": []}, "MetricTarget": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 36, "executed_branches": [], "missing_branches": []}, "AveragingMethod": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 51, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 5, 8, 13, 14, 21, 22, 28, 29, 36, 46, 47, 48, 51, 70, 71, 72], "summary": {"covered_lines": 19, "num_statements": 19, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "src\\supervision\\metrics\\detection.py": {"executed_lines": [1, 3, 4, 6, 7, 8, 9, 10, 12, 13, 14, 15, 19, 22, 23, 24, 29, 97, 99, 100, 104, 105, 106, 107, 108, 112, 114, 116, 117, 118, 119, 126, 128, 130, 135, 136, 137, 140, 142, 143, 146, 154, 159, 160, 168, 171, 175, 176, 180, 181, 187, 192, 199, 200, 219, 220, 221, 222, 223, 225, 235, 237, 238, 299, 300, 301, 302, 307, 312, 321, 322, 391, 392, 394, 395, 396, 397, 405, 413, 414, 453, 455, 458, 461, 466, 472, 475, 476, 477, 479, 480, 482, 484, 485, 486, 487, 489, 491, 494, 495, 496, 498, 499, 502, 503, 506, 507, 511, 517, 518, 521, 522, 524, 525, 526, 527, 535, 539, 550, 551, 553, 554, 556, 557, 560, 561, 562, 565, 566, 567, 570, 571, 572, 574, 576, 577, 584, 585, 586, 587, 588, 589, 590, 592, 593, 660, 750, 755, 756, 781, 782, 783, 784, 786, 787, 839, 840, 886, 887, 983, 984, 999, 1000, 1001, 1004, 1005, 1010, 1011, 1019, 1021, 1022, 1066, 1067], "summary": {"covered_lines": 173, "num_statements": 297, "percent_covered": 56.479217603911984, "percent_covered_display": "56", "missing_lines": 124, "excluded_lines": 0, "percent_statements_covered": 58.24915824915825, "percent_statements_covered_display": "58", "num_branches": 112, "num_partial_branches": 6, "covered_branches": 58, "missing_branches": 54, "percent_branches_covered": 51.785714285714285, "percent_branches_covered_display": "52"}, "missing_lines": [155, 163, 196, 226, 227, 228, 462, 467, 646, 647, 648, 649, 650, 651, 684, 686, 687, 688, 690, 692, 694, 695, 696, 697, 698, 699, 701, 702, 703, 704, 706, 707, 709, 710, 712, 713, 714, 716, 718, 719, 721, 722, 723, 724, 725, 726, 737, 738, 740, 741, 742, 743, 744, 747, 827, 828, 829, 830, 833, 834, 876, 877, 878, 879, 880, 881, 935, 936, 937, 940, 941, 942, 943, 950, 952, 953, 956, 966, 967, 968, 969, 970, 971, 973, 974, 976, 1015, 1044, 1045, 1046, 1047, 1049, 1050, 1052, 1053, 1054, 1055, 1057, 1058, 1059, 1060, 1062, 1063, 1064, 1088, 1089, 1090, 1092, 1093, 1095, 1099, 1100, 1101, 1102, 1104, 1105, 1107, 1108, 1109, 1110, 1112, 1113, 1119, 1120], "excluded_lines": [], "executed_branches": [[23, -22], [23, 24], [99, 100], [99, 104], [104, 105], [104, 128], [106, 107], [106, 114], [107, 108], [107, 112], [116, 117], [116, 118], [118, 119], [118, 126], [135, 136], [135, 142], [136, 137], [136, 140], [154, 159], [159, -146], [159, 160], [160, 168], [175, 176], [175, 180], [180, -146], [180, 181], [301, 302], [301, 312], [396, 397], [396, 405], [461, 466], [466, 472], [482, 484], [482, 489], [485, 486], [485, 487], [489, 491], [489, 498], [494, 495], [494, 496], [506, 507], [506, 511], [521, 522], [521, 524], [553, 554], [553, 565], [554, 553], [554, 556], [565, 566], [565, 570], [566, 565], [566, 567], [570, 571], [570, 574], [571, 570], [571, 572], [584, 585], [1010, 1011]], "missing_branches": [[154, 155], [160, 163], [226, 227], [226, 228], [461, 462], [466, 467], [584, 589], [647, 648], [647, 651], [686, 687], [686, 690], [696, 697], [696, 701], [709, 710], [709, 712], [721, 722], [721, 737], [722, 723], [722, 737], [723, 722], [723, 724], [725, 723], [725, 726], [737, 738], [737, 740], [743, 744], [743, 747], [829, 830], [829, 834], [877, 878], [877, 881], [940, 941], [940, 966], [941, 942], [941, 952], [942, 943], [942, 950], [952, 940], [952, 953], [966, 967], [966, 973], [1010, 1015], [1049, 1050], [1049, 1063], [1052, 1049], [1052, 1053], [1057, 1058], [1057, 1062], [1099, 1100], [1099, 1119], [1104, 1105], [1104, 1107], [1112, 1099], [1112, 1113]], "functions": {"_assert_supported_target": {"executed_lines": [23, 24], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 22, "executed_branches": [[23, -22], [23, 24]], "missing_branches": []}, "detections_to_tensor": {"executed_lines": [97, 99, 100, 104, 105, 106, 107, 108, 112, 114, 116, 117, 118, 119, 126, 128, 130, 135, 136, 137, 140, 142, 143], "summary": {"covered_lines": 23, "num_statements": 23, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 16, "num_partial_branches": 0, "covered_branches": 16, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 29, "executed_branches": [[99, 100], [99, 104], [104, 105], [104, 128], [106, 107], [106, 114], [107, 108], [107, 112], [116, 117], [116, 118], [118, 119], [118, 126], [135, 136], [135, 142], [136, 137], [136, 140]], "missing_branches": []}, "_validate_input_tensors": {"executed_lines": [154, 159, 160, 168, 171, 175, 176, 180, 181], "summary": {"covered_lines": 9, "num_statements": 11, "percent_covered": 80.95238095238095, "percent_covered_display": "81", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 81.81818181818181, "percent_statements_covered_display": "82", "num_branches": 10, "num_partial_branches": 2, "covered_branches": 8, "missing_branches": 2, "percent_branches_covered": 80.0, "percent_branches_covered_display": "80"}, "missing_lines": [155, 163], "excluded_lines": [], "start_line": 146, "executed_branches": [[154, 159], [159, -146], [159, 160], [160, 168], [175, 176], [175, 180], [180, -146], [180, 181]], "missing_branches": [[154, 155], [160, 163]]}, "validate_input_tensors": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [196], "excluded_lines": [], "start_line": 192, "executed_branches": [], "missing_branches": []}, "ConfusionMatrix.__eq__": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 3, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 2, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [226, 227, 228], "excluded_lines": [], "start_line": 225, "executed_branches": [], "missing_branches": [[226, 227], [226, 228]]}, "ConfusionMatrix.from_detections": {"executed_lines": [299, 300, 301, 302, 307, 312], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 238, "executed_branches": [[301, 302], [301, 312]], "missing_branches": []}, "ConfusionMatrix.from_tensors": {"executed_lines": [391, 392, 394, 395, 396, 397, 405], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 322, "executed_branches": [[396, 397], [396, 405]], "missing_branches": []}, "ConfusionMatrix.evaluate_detection_batch": {"executed_lines": [453, 455, 458, 461, 466, 472, 475, 476, 477, 479, 480, 482, 484, 485, 486, 487, 489, 491, 494, 495, 496, 498, 499, 502, 503, 506, 507, 511, 517, 518, 521, 522, 524, 525, 526, 527, 535, 539, 550, 551, 553, 554, 556, 557, 560, 561, 562, 565, 566, 567, 570, 571, 572, 574], "summary": {"covered_lines": 54, "num_statements": 56, "percent_covered": 95.23809523809524, "percent_covered_display": "95", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 96.42857142857143, "percent_statements_covered_display": "96", "num_branches": 28, "num_partial_branches": 2, "covered_branches": 26, "missing_branches": 2, "percent_branches_covered": 92.85714285714286, "percent_branches_covered_display": "93"}, "missing_lines": [462, 467], "excluded_lines": [], "start_line": 414, "executed_branches": [[461, 466], [466, 472], [482, 484], [482, 489], [485, 486], [485, 487], [489, 491], [489, 498], [494, 495], [494, 496], [506, 507], [506, 511], [521, 522], [521, 524], [553, 554], [553, 565], [554, 553], [554, 556], [565, 566], [565, 570], [566, 565], [566, 567], [570, 571], [570, 574], [571, 570], [571, 572]], "missing_branches": [[461, 462], [466, 467]]}, "ConfusionMatrix._drop_extra_matches": {"executed_lines": [584, 585, 586, 587, 588, 589, 590], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 88.88888888888889, "percent_covered_display": "89", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [], "excluded_lines": [], "start_line": 577, "executed_branches": [[584, 585]], "missing_branches": [[584, 589]]}, "ConfusionMatrix.benchmark": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 6, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 6, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 2, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [646, 647, 648, 649, 650, 651], "excluded_lines": [], "start_line": 593, "executed_branches": [], "missing_branches": [[647, 648], [647, 651]]}, "ConfusionMatrix.plot": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 40, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 40, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 18, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 18, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [684, 686, 687, 688, 690, 692, 694, 695, 696, 697, 698, 699, 701, 702, 703, 704, 706, 707, 709, 710, 712, 713, 714, 716, 718, 719, 721, 722, 723, 724, 725, 726, 737, 738, 740, 741, 742, 743, 744, 747], "excluded_lines": [], "start_line": 660, "executed_branches": [], "missing_branches": [[686, 687], [686, 690], [696, 697], [696, 701], [709, 710], [709, 712], [721, 722], [721, 737], [722, 723], [722, 737], [723, 722], [723, 724], [725, 723], [725, 726], [737, 738], [737, 740], [743, 744], [743, 747]]}, "MeanAveragePrecision.from_detections": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 6, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 6, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 2, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [827, 828, 829, 830, 833, 834], "excluded_lines": [], "start_line": 787, "executed_branches": [], "missing_branches": [[829, 830], [829, 834]]}, "MeanAveragePrecision.benchmark": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 6, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 6, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 2, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [876, 877, 878, 879, 880, 881], "excluded_lines": [], "start_line": 840, "executed_branches": [], "missing_branches": [[877, 878], [877, 881]]}, "MeanAveragePrecision.from_tensors": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 20, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 20, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 10, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 10, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [935, 936, 937, 940, 941, 942, 943, 950, 952, 953, 956, 966, 967, 968, 969, 970, 971, 973, 974, 976], "excluded_lines": [], "start_line": 887, "executed_branches": [], "missing_branches": [[940, 941], [940, 966], [941, 942], [941, 952], [942, 943], [942, 950], [952, 940], [952, 953], [966, 967], [966, 973]]}, "MeanAveragePrecision.compute_average_precision": {"executed_lines": [999, 1000, 1001, 1004, 1005, 1010, 1011, 1019], "summary": {"covered_lines": 8, "num_statements": 9, "percent_covered": 81.81818181818181, "percent_covered_display": "82", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 88.88888888888889, "percent_statements_covered_display": "89", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [1015], "excluded_lines": [], "start_line": 984, "executed_branches": [[1010, 1011]], "missing_branches": [[1010, 1015]]}, "MeanAveragePrecision._match_detection_batch": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 17, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 17, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 6, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [1044, 1045, 1046, 1047, 1049, 1050, 1052, 1053, 1054, 1055, 1057, 1058, 1059, 1060, 1062, 1063, 1064], "excluded_lines": [], "start_line": 1022, "executed_branches": [], "missing_branches": [[1049, 1050], [1049, 1063], [1052, 1049], [1052, 1053], [1057, 1058], [1057, 1062]]}, "MeanAveragePrecision._average_precisions_per_class": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 20, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 20, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 6, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [1088, 1089, 1090, 1092, 1093, 1095, 1099, 1100, 1101, 1102, 1104, 1105, 1107, 1108, 1109, 1110, 1112, 1113, 1119, 1120], "excluded_lines": [], "start_line": 1067, "executed_branches": [], "missing_branches": [[1099, 1100], [1099, 1119], [1104, 1105], [1104, 1107], [1112, 1099], [1112, 1113]]}, "": {"executed_lines": [1, 3, 4, 6, 7, 8, 9, 10, 12, 13, 14, 15, 19, 22, 29, 146, 187, 192, 199, 200, 219, 220, 221, 222, 223, 225, 235, 237, 238, 321, 322, 413, 414, 576, 577, 592, 593, 660, 750, 755, 756, 781, 782, 783, 784, 786, 787, 839, 840, 886, 887, 983, 984, 1021, 1022, 1066, 1067], "summary": {"covered_lines": 57, "num_statements": 57, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"ConfusionMatrix": {"executed_lines": [299, 300, 301, 302, 307, 312, 391, 392, 394, 395, 396, 397, 405, 453, 455, 458, 461, 466, 472, 475, 476, 477, 479, 480, 482, 484, 485, 486, 487, 489, 491, 494, 495, 496, 498, 499, 502, 503, 506, 507, 511, 517, 518, 521, 522, 524, 525, 526, 527, 535, 539, 550, 551, 553, 554, 556, 557, 560, 561, 562, 565, 566, 567, 570, 571, 572, 574, 584, 585, 586, 587, 588, 589, 590], "summary": {"covered_lines": 74, "num_statements": 125, "percent_covered": 58.011049723756905, "percent_covered_display": "58", "missing_lines": 51, "excluded_lines": 0, "percent_statements_covered": 59.2, "percent_statements_covered_display": "59", "num_branches": 56, "num_partial_branches": 3, "covered_branches": 31, "missing_branches": 25, "percent_branches_covered": 55.357142857142854, "percent_branches_covered_display": "55"}, "missing_lines": [226, 227, 228, 462, 467, 646, 647, 648, 649, 650, 651, 684, 686, 687, 688, 690, 692, 694, 695, 696, 697, 698, 699, 701, 702, 703, 704, 706, 707, 709, 710, 712, 713, 714, 716, 718, 719, 721, 722, 723, 724, 725, 726, 737, 738, 740, 741, 742, 743, 744, 747], "excluded_lines": [], "start_line": 200, "executed_branches": [[301, 302], [301, 312], [396, 397], [396, 405], [461, 466], [466, 472], [482, 484], [482, 489], [485, 486], [485, 487], [489, 491], [489, 498], [494, 495], [494, 496], [506, 507], [506, 511], [521, 522], [521, 524], [553, 554], [553, 565], [554, 553], [554, 556], [565, 566], [565, 570], [566, 565], [566, 567], [570, 571], [570, 574], [571, 570], [571, 572], [584, 585]], "missing_branches": [[226, 227], [226, 228], [461, 462], [466, 467], [584, 589], [647, 648], [647, 651], [686, 687], [686, 690], [696, 697], [696, 701], [709, 710], [709, 712], [721, 722], [721, 737], [722, 723], [722, 737], [723, 722], [723, 724], [725, 723], [725, 726], [737, 738], [737, 740], [743, 744], [743, 747]]}, "MeanAveragePrecision": {"executed_lines": [999, 1000, 1001, 1004, 1005, 1010, 1011, 1019], "summary": {"covered_lines": 8, "num_statements": 78, "percent_covered": 8.49056603773585, "percent_covered_display": "8", "missing_lines": 70, "excluded_lines": 0, "percent_statements_covered": 10.256410256410257, "percent_statements_covered_display": "10", "num_branches": 28, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 27, "percent_branches_covered": 3.5714285714285716, "percent_branches_covered_display": "4"}, "missing_lines": [827, 828, 829, 830, 833, 834, 876, 877, 878, 879, 880, 881, 935, 936, 937, 940, 941, 942, 943, 950, 952, 953, 956, 966, 967, 968, 969, 970, 971, 973, 974, 976, 1015, 1044, 1045, 1046, 1047, 1049, 1050, 1052, 1053, 1054, 1055, 1057, 1058, 1059, 1060, 1062, 1063, 1064, 1088, 1089, 1090, 1092, 1093, 1095, 1099, 1100, 1101, 1102, 1104, 1105, 1107, 1108, 1109, 1110, 1112, 1113, 1119, 1120], "excluded_lines": [], "start_line": 756, "executed_branches": [[1010, 1011]], "missing_branches": [[829, 830], [829, 834], [877, 878], [877, 881], [940, 941], [940, 966], [941, 942], [941, 952], [942, 943], [942, 950], [952, 940], [952, 953], [966, 967], [966, 973], [1010, 1015], [1049, 1050], [1049, 1063], [1052, 1049], [1052, 1053], [1057, 1058], [1057, 1062], [1099, 1100], [1099, 1119], [1104, 1105], [1104, 1107], [1112, 1099], [1112, 1113]]}, "": {"executed_lines": [1, 3, 4, 6, 7, 8, 9, 10, 12, 13, 14, 15, 19, 22, 23, 24, 29, 97, 99, 100, 104, 105, 106, 107, 108, 112, 114, 116, 117, 118, 119, 126, 128, 130, 135, 136, 137, 140, 142, 143, 146, 154, 159, 160, 168, 171, 175, 176, 180, 181, 187, 192, 199, 200, 219, 220, 221, 222, 223, 225, 235, 237, 238, 321, 322, 413, 414, 576, 577, 592, 593, 660, 750, 755, 756, 781, 782, 783, 784, 786, 787, 839, 840, 886, 887, 983, 984, 1021, 1022, 1066, 1067], "summary": {"covered_lines": 91, "num_statements": 94, "percent_covered": 95.90163934426229, "percent_covered_display": "96", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 96.80851063829788, "percent_statements_covered_display": "97", "num_branches": 28, "num_partial_branches": 2, "covered_branches": 26, "missing_branches": 2, "percent_branches_covered": 92.85714285714286, "percent_branches_covered_display": "93"}, "missing_lines": [155, 163, 196], "excluded_lines": [], "start_line": 1, "executed_branches": [[23, -22], [23, 24], [99, 100], [99, 104], [104, 105], [104, 128], [106, 107], [106, 114], [107, 108], [107, 112], [116, 117], [116, 118], [118, 119], [118, 126], [135, 136], [135, 142], [136, 137], [136, 140], [154, 159], [159, -146], [159, 160], [160, 168], [175, 176], [175, 180], [180, -146], [180, 181]], "missing_branches": [[154, 155], [160, 163]]}}}, "src\\supervision\\metrics\\f1_score.py": {"executed_lines": [1, 3, 4, 5, 7, 8, 9, 11, 12, 13, 18, 19, 20, 24, 30, 66, 79, 80, 82, 83, 85, 89, 90, 92, 107, 108, 109, 110, 112, 113, 118, 119, 121, 123, 131, 133, 136, 138, 143, 145, 148, 150, 152, 163, 164, 166, 167, 168, 170, 173, 175, 185, 186, 187, 197, 198, 199, 201, 202, 210, 220, 229, 230, 242, 243, 247, 259, 275, 276, 277, 281, 284, 285, 286, 289, 294, 297, 298, 299, 300, 301, 302, 303, 304, 308, 310, 312, 314, 315, 321, 325, 326, 328, 329, 331, 332, 333, 334, 336, 337, 338, 339, 341, 343, 344, 346, 347, 374, 375, 377, 380, 381, 382, 383, 385, 386, 387, 388, 389, 390, 391, 392, 394, 395, 396, 397, 401, 402, 404, 405, 418, 423, 424, 425, 428, 429, 431, 432, 434, 436, 437, 438, 439, 444, 445, 446, 447, 448, 449, 452, 453, 456, 459, 460, 461, 464, 468, 469, 470, 472, 473, 475, 476, 478, 479, 480, 481, 482, 484, 485, 486, 488, 490, 499, 500, 501, 502, 505, 508, 511, 512, 542, 543, 545, 546, 547, 549, 550, 551, 553, 554, 555, 556, 558, 559, 560, 562, 630, 660], "summary": {"covered_lines": 199, "num_statements": 281, "percent_covered": 67.09511568123393, "percent_covered_display": "67", "missing_lines": 82, "excluded_lines": 3, "percent_statements_covered": 70.8185053380783, "percent_statements_covered_display": "71", "num_branches": 108, "num_partial_branches": 14, "covered_branches": 62, "missing_branches": 46, "percent_branches_covered": 57.407407407407405, "percent_branches_covered_display": "57"}, "missing_lines": [174, 200, 206, 419, 440, 441, 442, 443, 450, 454, 455, 457, 458, 462, 477, 483, 602, 612, 613, 614, 615, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 628, 637, 638, 640, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 658, 669, 670, 671, 673, 674, 675, 676, 677, 679, 680, 681, 682, 683, 685, 686, 687, 688, 689, 691, 693, 694, 695, 696, 701, 703, 704, 706, 707, 709, 710, 711, 719, 721, 722], "excluded_lines": [26, 27, 563], "executed_branches": [[107, 108], [107, 109], [109, 110], [109, 112], [112, 113], [112, 118], [166, 167], [166, 229], [170, 173], [170, 185], [173, 175], [185, 166], [185, 186], [186, 187], [186, 197], [197, 198], [197, 199], [199, 201], [201, 202], [229, 230], [229, 242], [297, 298], [297, 299], [299, 300], [299, 302], [302, 303], [304, 308], [304, 310], [328, 329], [328, 343], [331, 328], [331, 332], [336, 337], [336, 341], [380, 381], [380, 401], [385, 386], [385, 389], [389, 390], [389, 394], [418, 423], [436, 437], [436, 439], [439, 444], [444, 445], [446, 447], [446, 449], [453, 456], [456, 459], [459, 460], [469, 470], [469, 472], [476, 478], [478, 479], [480, 481], [480, 482], [482, 484], [484, 485], [485, 486], [485, 488], [501, 502], [501, 508]], "missing_branches": [[173, 174], [199, 200], [201, 206], [302, 312], [418, 419], [439, 440], [440, 441], [440, 443], [444, 450], [453, 454], [456, 457], [459, 462], [476, 477], [478, 480], [482, 483], [484, 488], [612, 613], [612, 614], [614, 615], [614, 617], [618, 619], [618, 621], [621, 622], [621, 624], [624, 625], [624, 628], [645, 646], [645, 649], [647, 648], [647, 649], [649, 650], [649, 653], [651, 652], [651, 653], [653, 654], [653, 658], [655, 656], [655, 658], [673, 674], [673, 679], [679, 680], [679, 685], [685, 686], [685, 691], [709, 710], [709, 719]], "functions": {"F1Score.__init__": {"executed_lines": [79, 80, 82, 83], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 66, "executed_branches": [], "missing_branches": []}, "F1Score.reset": {"executed_lines": [89, 90], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 85, "executed_branches": [], "missing_branches": []}, "F1Score.update": {"executed_lines": [107, 108, 109, 110, 112, 113, 118, 119, 121], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 6, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 92, "executed_branches": [[107, 108], [107, 109], [109, 110], [109, 112], [112, 113], [112, 118]], "missing_branches": []}, "F1Score.compute": {"executed_lines": [131, 133, 136, 138, 143, 145, 148, 150], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 123, "executed_branches": [], "missing_branches": []}, "F1Score._compute": {"executed_lines": [163, 164, 166, 167, 168, 170, 173, 175, 185, 186, 187, 197, 198, 199, 201, 202, 210, 220, 229, 230, 242, 243, 247], "summary": {"covered_lines": 23, "num_statements": 26, "percent_covered": 86.36363636363636, "percent_covered_display": "86", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 88.46153846153847, "percent_statements_covered_display": "88", "num_branches": 18, "num_partial_branches": 3, "covered_branches": 15, "missing_branches": 3, "percent_branches_covered": 83.33333333333333, "percent_branches_covered_display": "83"}, "missing_lines": [174, 200, 206], "excluded_lines": [], "start_line": 152, "executed_branches": [[166, 167], [166, 229], [170, 173], [170, 185], [173, 175], [185, 166], [185, 186], [186, 187], [186, 197], [197, 198], [197, 199], [199, 201], [201, 202], [229, 230], [229, 242]], "missing_branches": [[173, 174], [199, 200], [201, 206]]}, "F1Score._compute_f1_for_classes": {"executed_lines": [275, 276, 277, 281, 284, 285, 286, 289, 294, 297, 298, 299, 300, 301, 302, 303, 304, 308, 310, 312], "summary": {"covered_lines": 20, "num_statements": 20, "percent_covered": 96.42857142857143, "percent_covered_display": "96", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 8, "num_partial_branches": 1, "covered_branches": 7, "missing_branches": 1, "percent_branches_covered": 87.5, "percent_branches_covered_display": "88"}, "missing_lines": [], "excluded_lines": [], "start_line": 259, "executed_branches": [[297, 298], [297, 299], [299, 300], [299, 302], [302, 303], [304, 308], [304, 310]], "missing_branches": [[302, 312]]}, "F1Score._match_detection_batch": {"executed_lines": [321, 325, 326, 328, 329, 331, 332, 333, 334, 336, 337, 338, 339, 341, 343, 344], "summary": {"covered_lines": 16, "num_statements": 16, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 6, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 315, "executed_branches": [[328, 329], [328, 343], [331, 328], [331, 332], [336, 337], [336, 341]], "missing_branches": []}, "F1Score._compute_confusion_matrix": {"executed_lines": [374, 375, 377, 380, 381, 382, 383, 385, 386, 387, 388, 389, 390, 391, 392, 394, 395, 396, 397, 401, 402], "summary": {"covered_lines": 21, "num_statements": 21, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 6, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 347, "executed_branches": [[380, 381], [380, 401], [385, 386], [385, 389], [389, 390], [389, 394]], "missing_branches": []}, "F1Score._compute_f1": {"executed_lines": [418, 423, 424, 425, 428, 429, 431, 432], "summary": {"covered_lines": 8, "num_statements": 9, "percent_covered": 81.81818181818181, "percent_covered_display": "82", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 88.88888888888889, "percent_statements_covered_display": "89", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [419], "excluded_lines": [], "start_line": 405, "executed_branches": [[418, 423]], "missing_branches": [[418, 419]]}, "F1Score._detections_content": {"executed_lines": [436, 437, 438, 439, 444, 445, 446, 447, 448, 449], "summary": {"covered_lines": 10, "num_statements": 15, "percent_covered": 64.0, "percent_covered_display": "64", "missing_lines": 5, "excluded_lines": 0, "percent_statements_covered": 66.66666666666667, "percent_statements_covered_display": "67", "num_branches": 10, "num_partial_branches": 2, "covered_branches": 6, "missing_branches": 4, "percent_branches_covered": 60.0, "percent_branches_covered_display": "60"}, "missing_lines": [440, 441, 442, 443, 450], "excluded_lines": [], "start_line": 434, "executed_branches": [[436, 437], [436, 439], [439, 444], [444, 445], [446, 447], [446, 449]], "missing_branches": [[439, 440], [440, 441], [440, 443], [444, 450]]}, "F1Score._make_empty_content": {"executed_lines": [453, 456, 459, 460, 461], "summary": {"covered_lines": 5, "num_statements": 10, "percent_covered": 50.0, "percent_covered_display": "50", "missing_lines": 5, "excluded_lines": 0, "percent_statements_covered": 50.0, "percent_statements_covered_display": "50", "num_branches": 6, "num_partial_branches": 3, "covered_branches": 3, "missing_branches": 3, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [454, 455, 457, 458, 462], "excluded_lines": [], "start_line": 452, "executed_branches": [[453, 456], [456, 459], [459, 460]], "missing_branches": [[453, 454], [456, 457], [459, 462]]}, "F1Score._filter_detections_by_size": {"executed_lines": [468, 469, 470, 472, 473, 475, 476, 478, 479, 480, 481, 482, 484, 485, 486, 488], "summary": {"covered_lines": 16, "num_statements": 18, "percent_covered": 81.25, "percent_covered_display": "81", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 88.88888888888889, "percent_statements_covered_display": "89", "num_branches": 14, "num_partial_branches": 4, "covered_branches": 10, "missing_branches": 4, "percent_branches_covered": 71.42857142857143, "percent_branches_covered_display": "71"}, "missing_lines": [477, 483], "excluded_lines": [], "start_line": 464, "executed_branches": [[469, 470], [469, 472], [476, 478], [478, 479], [480, 481], [480, 482], [482, 484], [484, 485], [485, 486], [485, 488]], "missing_branches": [[476, 477], [478, 480], [482, 483], [484, 488]]}, "F1Score._filter_predictions_and_targets_by_size": {"executed_lines": [499, 500, 501, 502, 505, 508], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 490, "executed_branches": [[501, 502], [501, 508]], "missing_branches": []}, "F1ScoreResult.f1_50": {"executed_lines": [547], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 546, "executed_branches": [], "missing_branches": []}, "F1ScoreResult.f1_75": {"executed_lines": [551], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 550, "executed_branches": [], "missing_branches": []}, "F1ScoreResult.__str__": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 16, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 16, "excluded_lines": 1, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 10, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 10, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [602, 612, 613, 614, 615, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 628], "excluded_lines": [563], "start_line": 562, "executed_branches": [], "missing_branches": [[612, 613], [612, 614], [614, 615], [614, 617], [618, 619], [618, 621], [621, 622], [621, 624], [624, 625], [624, 628]]}, "F1ScoreResult.to_pandas": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 16, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 16, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 12, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 12, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [637, 638, 640, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 658], "excluded_lines": [], "start_line": 630, "executed_branches": [], "missing_branches": [[645, 646], [645, 649], [647, 648], [647, 649], [649, 650], [649, 653], [651, 652], [651, 653], [653, 654], [653, 658], [655, 656], [655, 658]]}, "F1ScoreResult.plot": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 34, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 34, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 8, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 8, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [669, 670, 671, 673, 674, 675, 676, 677, 679, 680, 681, 682, 683, 685, 686, 687, 688, 689, 691, 693, 694, 695, 696, 701, 703, 704, 706, 707, 709, 710, 711, 719, 721, 722], "excluded_lines": [], "start_line": 660, "executed_branches": [], "missing_branches": [[673, 674], [673, 679], [679, 680], [679, 685], [685, 686], [685, 691], [709, 710], [709, 719]]}, "": {"executed_lines": [1, 3, 4, 5, 7, 8, 9, 11, 12, 13, 18, 19, 20, 24, 30, 66, 85, 92, 123, 152, 259, 314, 315, 346, 347, 404, 405, 434, 452, 464, 490, 511, 512, 542, 543, 545, 546, 549, 550, 553, 554, 555, 556, 558, 559, 560, 562, 630, 660], "summary": {"covered_lines": 49, "num_statements": 49, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 2, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [26, 27], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"F1Score": {"executed_lines": [79, 80, 82, 83, 89, 90, 107, 108, 109, 110, 112, 113, 118, 119, 121, 131, 133, 136, 138, 143, 145, 148, 150, 163, 164, 166, 167, 168, 170, 173, 175, 185, 186, 187, 197, 198, 199, 201, 202, 210, 220, 229, 230, 242, 243, 247, 275, 276, 277, 281, 284, 285, 286, 289, 294, 297, 298, 299, 300, 301, 302, 303, 304, 308, 310, 312, 321, 325, 326, 328, 329, 331, 332, 333, 334, 336, 337, 338, 339, 341, 343, 344, 374, 375, 377, 380, 381, 382, 383, 385, 386, 387, 388, 389, 390, 391, 392, 394, 395, 396, 397, 401, 402, 418, 423, 424, 425, 428, 429, 431, 432, 436, 437, 438, 439, 444, 445, 446, 447, 448, 449, 453, 456, 459, 460, 461, 468, 469, 470, 472, 473, 475, 476, 478, 479, 480, 481, 482, 484, 485, 486, 488, 499, 500, 501, 502, 505, 508], "summary": {"covered_lines": 148, "num_statements": 164, "percent_covered": 86.77685950413223, "percent_covered_display": "87", "missing_lines": 16, "excluded_lines": 0, "percent_statements_covered": 90.2439024390244, "percent_statements_covered_display": "90", "num_branches": 78, "num_partial_branches": 14, "covered_branches": 62, "missing_branches": 16, "percent_branches_covered": 79.48717948717949, "percent_branches_covered_display": "79"}, "missing_lines": [174, 200, 206, 419, 440, 441, 442, 443, 450, 454, 455, 457, 458, 462, 477, 483], "excluded_lines": [], "start_line": 30, "executed_branches": [[107, 108], [107, 109], [109, 110], [109, 112], [112, 113], [112, 118], [166, 167], [166, 229], [170, 173], [170, 185], [173, 175], [185, 166], [185, 186], [186, 187], [186, 197], [197, 198], [197, 199], [199, 201], [201, 202], [229, 230], [229, 242], [297, 298], [297, 299], [299, 300], [299, 302], [302, 303], [304, 308], [304, 310], [328, 329], [328, 343], [331, 328], [331, 332], [336, 337], [336, 341], [380, 381], [380, 401], [385, 386], [385, 389], [389, 390], [389, 394], [418, 423], [436, 437], [436, 439], [439, 444], [444, 445], [446, 447], [446, 449], [453, 456], [456, 459], [459, 460], [469, 470], [469, 472], [476, 478], [478, 479], [480, 481], [480, 482], [482, 484], [484, 485], [485, 486], [485, 488], [501, 502], [501, 508]], "missing_branches": [[173, 174], [199, 200], [201, 206], [302, 312], [418, 419], [439, 440], [440, 441], [440, 443], [444, 450], [453, 454], [456, 457], [459, 462], [476, 477], [478, 480], [482, 483], [484, 488]]}, "F1ScoreResult": {"executed_lines": [547, 551], "summary": {"covered_lines": 2, "num_statements": 68, "percent_covered": 2.0408163265306123, "percent_covered_display": "2", "missing_lines": 66, "excluded_lines": 1, "percent_statements_covered": 2.9411764705882355, "percent_statements_covered_display": "3", "num_branches": 30, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 30, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [602, 612, 613, 614, 615, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 628, 637, 638, 640, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 658, 669, 670, 671, 673, 674, 675, 676, 677, 679, 680, 681, 682, 683, 685, 686, 687, 688, 689, 691, 693, 694, 695, 696, 701, 703, 704, 706, 707, 709, 710, 711, 719, 721, 722], "excluded_lines": [563], "start_line": 512, "executed_branches": [], "missing_branches": [[612, 613], [612, 614], [614, 615], [614, 617], [618, 619], [618, 621], [621, 622], [621, 624], [624, 625], [624, 628], [645, 646], [645, 649], [647, 648], [647, 649], [649, 650], [649, 653], [651, 652], [651, 653], [653, 654], [653, 658], [655, 656], [655, 658], [673, 674], [673, 679], [679, 680], [679, 685], [685, 686], [685, 691], [709, 710], [709, 719]]}, "": {"executed_lines": [1, 3, 4, 5, 7, 8, 9, 11, 12, 13, 18, 19, 20, 24, 30, 66, 85, 92, 123, 152, 259, 314, 315, 346, 347, 404, 405, 434, 452, 464, 490, 511, 512, 542, 543, 545, 546, 549, 550, 553, 554, 555, 556, 558, 559, 560, 562, 630, 660], "summary": {"covered_lines": 49, "num_statements": 49, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 2, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [26, 27], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "src\\supervision\\metrics\\mean_average_precision.py": {"executed_lines": [1, 3, 4, 5, 6, 7, 8, 9, 10, 12, 13, 14, 16, 17, 18, 19, 20, 21, 23, 29, 30, 56, 57, 59, 60, 62, 63, 64, 66, 68, 69, 71, 73, 74, 76, 78, 79, 80, 81, 82, 83, 84, 86, 145, 180, 249, 255, 266, 267, 268, 269, 270, 271, 273, 274, 277, 278, 280, 281, 282, 284, 288, 289, 290, 291, 292, 293, 295, 296, 297, 299, 300, 301, 303, 304, 305, 308, 309, 310, 311, 312, 314, 332, 335, 336, 341, 346, 353, 362, 365, 366, 368, 386, 387, 411, 412, 414, 430, 431, 432, 445, 455, 457, 459, 470, 471, 473, 477, 478, 479, 481, 484, 489, 493, 497, 502, 503, 508, 509, 510, 513, 514, 516, 518, 520, 521, 522, 523, 527, 528, 529, 532, 535, 540, 541, 542, 543, 546, 551, 554, 555, 558, 566, 574, 576, 584, 589, 599, 601, 604, 605, 609, 611, 613, 614, 616, 618, 620, 622, 623, 625, 630, 633, 635, 638, 641, 642, 643, 646, 647, 648, 651, 652, 653, 656, 657, 659, 672, 673, 676, 677, 678, 681, 682, 686, 689, 690, 693, 695, 698, 700, 719, 720, 723, 724, 726, 730, 731, 732, 734, 737, 738, 741, 742, 745, 752, 753, 754, 757, 758, 760, 761, 762, 764, 766, 768, 770, 772, 775, 776, 777, 779, 788, 789, 790, 793, 794, 795, 796, 799, 804, 811, 825, 830, 831, 832, 833, 834, 835, 839, 849, 853, 865, 866, 869, 870, 873, 877, 881, 887, 895, 896, 899, 900, 903, 904, 907, 910, 914, 917, 918, 921, 924, 929, 930, 933, 934, 937, 940, 944, 945, 948, 949, 950, 951, 953, 955, 957, 959, 963, 968, 969, 970, 972, 975, 976, 978, 979, 982, 983, 986, 990, 994, 1010, 1014, 1015, 1017, 1020, 1021, 1022, 1028, 1030, 1031, 1032, 1035, 1036, 1038, 1043, 1048, 1049, 1052, 1057, 1058, 1061, 1066, 1067, 1070, 1074, 1097, 1192, 1198, 1199, 1200, 1202, 1205, 1212, 1215, 1223, 1226, 1264, 1280, 1281, 1283, 1284, 1285, 1286, 1288, 1295, 1310, 1312, 1315, 1321, 1332, 1333, 1335, 1337, 1341, 1342, 1345, 1346, 1347, 1351, 1354, 1355, 1358, 1360, 1361, 1362, 1365, 1368, 1369, 1370, 1372, 1373, 1375, 1376, 1379, 1388, 1390, 1391, 1393, 1399, 1404, 1405, 1406, 1409, 1412, 1413, 1415, 1416, 1418, 1419, 1420, 1423, 1425, 1426, 1429, 1430, 1434, 1436, 1437, 1439, 1447, 1448, 1450, 1459, 1460, 1462, 1468, 1469, 1471, 1473, 1475, 1478, 1481, 1490, 1499, 1509, 1520], "summary": {"covered_lines": 409, "num_statements": 546, "percent_covered": 70.37533512064343, "percent_covered_display": "70", "missing_lines": 137, "excluded_lines": 2, "percent_statements_covered": 74.9084249084249, "percent_statements_covered_display": "75", "num_branches": 200, "num_partial_branches": 38, "covered_branches": 116, "missing_branches": 84, "percent_branches_covered": 58.0, "percent_branches_covered_display": "58"}, "missing_lines": [116, 121, 130, 152, 153, 155, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 175, 189, 190, 191, 193, 194, 195, 200, 202, 203, 204, 209, 211, 212, 213, 218, 220, 222, 223, 224, 225, 227, 228, 230, 231, 233, 234, 235, 243, 245, 246, 333, 343, 363, 389, 392, 399, 408, 434, 436, 437, 438, 439, 441, 443, 456, 474, 490, 494, 498, 517, 600, 602, 687, 785, 911, 1102, 1108, 1109, 1110, 1111, 1116, 1117, 1118, 1119, 1122, 1124, 1125, 1126, 1127, 1131, 1132, 1133, 1134, 1135, 1136, 1137, 1139, 1140, 1143, 1145, 1146, 1147, 1148, 1151, 1154, 1159, 1164, 1169, 1170, 1171, 1172, 1177, 1182, 1187, 1189, 1190, 1292, 1293, 1311, 1313, 1316, 1322, 1323, 1325, 1326, 1327, 1328, 1329, 1330, 1343, 1348, 1352, 1363, 1377, 1407, 1410, 1421, 1463], "excluded_lines": [25, 26], "executed_branches": [[63, 64], [63, 66], [273, 274], [273, 277], [290, 291], [291, 292], [291, 295], [295, 296], [296, 297], [296, 299], [299, 300], [300, 301], [300, 303], [303, 304], [304, 305], [304, 308], [332, 335], [335, 336], [362, 365], [386, 387], [430, 431], [455, 457], [473, 477], [477, 478], [477, 481], [489, 493], [493, 497], [497, 502], [502, 503], [508, 509], [508, 521], [513, 514], [516, 518], [599, 601], [601, 604], [641, 642], [641, 646], [647, 648], [647, 651], [652, 653], [652, 656], [676, 677], [676, 681], [686, 689], [723, 724], [723, 726], [730, 731], [730, 737], [731, 732], [731, 734], [762, 764], [762, 799], [764, 766], [764, 799], [766, 764], [766, 768], [772, 775], [772, 793], [776, 777], [776, 779], [779, 788], [788, 772], [788, 789], [793, 766], [793, 794], [895, 896], [895, 994], [899, 895], [899, 900], [903, 899], [903, 904], [910, 914], [933, 934], [933, 937], [948, 903], [948, 949], [968, 969], [968, 972], [969, 968], [969, 970], [976, 978], [976, 986], [979, 976], [979, 982], [1310, 1312], [1312, 1315], [1315, 1321], [1321, 1332], [1342, 1345], [1346, 1347], [1346, 1390], [1347, 1351], [1351, 1354], [1354, 1346], [1354, 1355], [1360, 1361], [1362, 1365], [1369, 1370], [1369, 1372], [1372, 1373], [1372, 1375], [1376, 1379], [1405, 1406], [1405, 1448], [1406, 1409], [1409, 1412], [1412, 1405], [1412, 1413], [1418, 1419], [1420, 1423], [1425, 1426], [1430, 1434], [1430, 1436], [1436, 1437], [1436, 1439], [1462, 1468]], "missing_branches": [[116, 121], [116, 130], [161, 162], [161, 165], [163, 164], [163, 165], [165, 166], [165, 169], [167, 168], [167, 169], [169, 170], [169, 175], [171, 172], [171, 175], [193, 194], [193, 202], [202, 203], [202, 211], [211, 212], [211, 220], [233, 234], [233, 243], [290, 295], [295, 299], [299, 303], [303, 308], [332, 333], [335, 343], [362, 363], [386, 389], [430, 434], [436, 437], [436, 443], [437, 438], [437, 443], [438, 439], [438, 441], [455, 456], [473, 474], [489, 490], [493, 494], [497, 498], [502, 521], [513, 516], [516, 517], [599, 600], [601, 602], [686, 687], [779, 785], [910, 911], [1119, 1122], [1119, 1131], [1124, 1125], [1124, 1127], [1132, 1133], [1132, 1135], [1136, 1137], [1136, 1139], [1189, -1097], [1189, 1190], [1310, 1311], [1312, 1313], [1315, 1316], [1321, 1322], [1325, 1326], [1325, 1328], [1326, 1325], [1326, 1327], [1328, 1329], [1328, 1332], [1329, 1328], [1329, 1330], [1342, 1343], [1347, 1348], [1351, 1352], [1360, 1368], [1362, 1363], [1376, 1377], [1406, 1407], [1409, 1410], [1418, 1425], [1420, 1421], [1425, 1429], [1462, 1463]], "functions": {"MeanAveragePrecisionResult.map50_95": {"executed_lines": [62, 63, 64, 66], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 60, "executed_branches": [[63, 64], [63, 66]], "missing_branches": []}, "MeanAveragePrecisionResult.map50": {"executed_lines": [71], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 69, "executed_branches": [], "missing_branches": []}, "MeanAveragePrecisionResult.map75": {"executed_lines": [76], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 74, "executed_branches": [], "missing_branches": []}, "MeanAveragePrecisionResult.__str__": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 3, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 2, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [116, 121, 130], "excluded_lines": [], "start_line": 86, "executed_branches": [], "missing_branches": [[116, 121], [116, 130]]}, "MeanAveragePrecisionResult.to_pandas": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 16, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 16, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 12, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 12, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [152, 153, 155, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 175], "excluded_lines": [], "start_line": 145, "executed_branches": [], "missing_branches": [[161, 162], [161, 165], [163, 164], [163, 165], [165, 166], [165, 169], [167, 168], [167, 169], [169, 170], [169, 175], [171, 172], [171, 175]]}, "MeanAveragePrecisionResult.plot": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 30, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 30, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 8, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 8, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [189, 190, 191, 193, 194, 195, 200, 202, 203, 204, 209, 211, 212, 213, 218, 220, 222, 223, 224, 225, 227, 228, 230, 231, 233, 234, 235, 243, 245, 246], "excluded_lines": [], "start_line": 180, "executed_branches": [], "missing_branches": [[193, 194], [193, 202], [202, 203], [202, 211], [211, 212], [211, 220], [233, 234], [233, 243]]}, "EvaluationDataset.__init__": {"executed_lines": [266, 267, 268, 269, 270, 271, 273, 274, 277, 278], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 255, "executed_branches": [[273, 274], [273, 277]], "missing_branches": []}, "EvaluationDataset.empty": {"executed_lines": [282], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 281, "executed_branches": [], "missing_branches": []}, "EvaluationDataset.create_class_members": {"executed_lines": [288, 289, 290, 291, 292, 293, 295, 296, 297, 299, 300, 301, 303, 304, 305, 308, 309, 310, 311, 312], "summary": {"covered_lines": 20, "num_statements": 20, "percent_covered": 88.88888888888889, "percent_covered_display": "89", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 16, "num_partial_branches": 4, "covered_branches": 12, "missing_branches": 4, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [], "excluded_lines": [], "start_line": 284, "executed_branches": [[290, 291], [291, 292], [291, 295], [295, 296], [296, 297], [296, 299], [299, 300], [300, 301], [300, 303], [303, 304], [304, 305], [304, 308]], "missing_branches": [[290, 295], [295, 299], [299, 303], [303, 308]]}, "EvaluationDataset.get_annotation_ids": {"executed_lines": [332, 335, 336, 341, 346, 353, 362, 365, 366], "summary": {"covered_lines": 9, "num_statements": 12, "percent_covered": 66.66666666666667, "percent_covered_display": "67", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 75.0, "percent_statements_covered_display": "75", "num_branches": 6, "num_partial_branches": 3, "covered_branches": 3, "missing_branches": 3, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [333, 343, 363], "excluded_lines": [], "start_line": 314, "executed_branches": [[332, 335], [335, 336], [362, 365]], "missing_branches": [[332, 333], [335, 343], [362, 363]]}, "EvaluationDataset.get_category_ids": {"executed_lines": [386, 387, 411, 412], "summary": {"covered_lines": 4, "num_statements": 8, "percent_covered": 50.0, "percent_covered_display": "50", "missing_lines": 4, "excluded_lines": 0, "percent_statements_covered": 50.0, "percent_statements_covered_display": "50", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [389, 392, 399, 408], "excluded_lines": [], "start_line": 368, "executed_branches": [[386, 387]], "missing_branches": [[386, 389]]}, "EvaluationDataset.get_image_ids": {"executed_lines": [430, 431, 432], "summary": {"covered_lines": 3, "num_statements": 10, "percent_covered": 22.22222222222222, "percent_covered_display": "22", "missing_lines": 7, "excluded_lines": 0, "percent_statements_covered": 30.0, "percent_statements_covered_display": "30", "num_branches": 8, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 7, "percent_branches_covered": 12.5, "percent_branches_covered_display": "12"}, "missing_lines": [434, 436, 437, 438, 439, 441, 443], "excluded_lines": [], "start_line": 414, "executed_branches": [[430, 431]], "missing_branches": [[430, 434], [436, 437], [436, 443], [437, 438], [437, 443], [438, 439], [438, 441]]}, "EvaluationDataset.get_annotations": {"executed_lines": [455, 457], "summary": {"covered_lines": 2, "num_statements": 3, "percent_covered": 60.0, "percent_covered_display": "60", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 66.66666666666667, "percent_statements_covered_display": "67", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [456], "excluded_lines": [], "start_line": 445, "executed_branches": [[455, 457]], "missing_branches": [[455, 456]]}, "EvaluationDataset.load_predictions": {"executed_lines": [470, 471, 473, 477, 478, 479, 481, 484, 489, 493, 497, 502, 503, 508, 509, 510, 513, 514, 516, 518, 520, 521, 522, 523], "summary": {"covered_lines": 24, "num_statements": 29, "percent_covered": 74.46808510638297, "percent_covered_display": "74", "missing_lines": 5, "excluded_lines": 0, "percent_statements_covered": 82.75862068965517, "percent_statements_covered_display": "83", "num_branches": 18, "num_partial_branches": 7, "covered_branches": 11, "missing_branches": 7, "percent_branches_covered": 61.111111111111114, "percent_branches_covered_display": "61"}, "missing_lines": [474, 490, 494, 498, 517], "excluded_lines": [], "start_line": 459, "executed_branches": [[473, 477], [477, 478], [477, 481], [489, 493], [493, 497], [497, 502], [502, 503], [508, 509], [508, 521], [513, 514], [516, 518]], "missing_branches": [[473, 474], [489, 490], [493, 494], [497, 498], [502, 521], [513, 516], [516, 517]]}, "COCOEvaluatorParameters.__init__": {"executed_lines": [554, 555, 558, 566, 574, 576], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 551, "executed_branches": [], "missing_branches": []}, "COCOEvaluator.__init__": {"executed_lines": [599, 601, 604, 605, 609, 611, 613, 614, 616, 618, 620, 622, 623], "summary": {"covered_lines": 13, "num_statements": 15, "percent_covered": 78.94736842105263, "percent_covered_display": "79", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 86.66666666666667, "percent_statements_covered_display": "87", "num_branches": 4, "num_partial_branches": 2, "covered_branches": 2, "missing_branches": 2, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [600, 602], "excluded_lines": [], "start_line": 589, "executed_branches": [[599, 601], [601, 604]], "missing_branches": [[599, 600], [601, 602]]}, "COCOEvaluator._prepare_targets_and_predictions": {"executed_lines": [630, 633, 635, 638, 641, 642, 643, 646, 647, 648, 651, 652, 653, 656, 657], "summary": {"covered_lines": 15, "num_statements": 15, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 6, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 625, "executed_branches": [[641, 642], [641, 646], [647, 648], [647, 651], [652, 653], [652, 656]], "missing_branches": []}, "COCOEvaluator._compute_iou": {"executed_lines": [672, 673, 676, 677, 678, 681, 682, 686, 689, 690, 693, 695, 698], "summary": {"covered_lines": 13, "num_statements": 14, "percent_covered": 88.88888888888889, "percent_covered_display": "89", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 92.85714285714286, "percent_statements_covered_display": "93", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [687], "excluded_lines": [], "start_line": 659, "executed_branches": [[676, 677], [676, 681], [686, 689]], "missing_branches": [[686, 687]]}, "COCOEvaluator._evaluate_image": {"executed_lines": [719, 720, 723, 724, 726, 730, 731, 732, 734, 737, 738, 741, 742, 745, 752, 753, 754, 757, 758, 760, 761, 762, 764, 766, 768, 770, 772, 775, 776, 777, 779, 788, 789, 790, 793, 794, 795, 796, 799, 804, 811], "summary": {"covered_lines": 41, "num_statements": 42, "percent_covered": 96.875, "percent_covered_display": "97", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 97.61904761904762, "percent_statements_covered_display": "98", "num_branches": 22, "num_partial_branches": 1, "covered_branches": 21, "missing_branches": 1, "percent_branches_covered": 95.45454545454545, "percent_branches_covered_display": "95"}, "missing_lines": [785], "excluded_lines": [], "start_line": 700, "executed_branches": [[723, 724], [723, 726], [730, 731], [730, 737], [731, 732], [731, 734], [762, 764], [762, 799], [764, 766], [764, 799], [766, 764], [766, 768], [772, 775], [772, 793], [776, 777], [776, 779], [779, 788], [788, 772], [788, 789], [793, 766], [793, 794]], "missing_branches": [[779, 785]]}, "COCOEvaluator._accumulate": {"executed_lines": [830, 831, 832, 833, 834, 835, 839, 849, 853, 865, 866, 869, 870, 873, 877, 881, 887, 895, 896, 899, 900, 903, 904, 907, 910, 914, 917, 918, 921, 924, 929, 930, 933, 934, 937, 940, 944, 945, 948, 949, 950, 951, 953, 955, 957, 959, 963, 968, 969, 970, 972, 975, 976, 978, 979, 982, 983, 986, 990, 994, 1010, 1035, 1036, 1038, 1043, 1048, 1049, 1052, 1057, 1058, 1061, 1066, 1067, 1070, 1074], "summary": {"covered_lines": 75, "num_statements": 76, "percent_covered": 97.91666666666667, "percent_covered_display": "98", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 98.6842105263158, "percent_statements_covered_display": "99", "num_branches": 20, "num_partial_branches": 1, "covered_branches": 19, "missing_branches": 1, "percent_branches_covered": 95.0, "percent_branches_covered_display": "95"}, "missing_lines": [911], "excluded_lines": [], "start_line": 825, "executed_branches": [[895, 896], [895, 994], [899, 895], [899, 900], [903, 899], [903, 904], [910, 914], [933, 934], [933, 937], [948, 903], [948, 949], [968, 969], [968, 972], [969, 968], [969, 970], [976, 978], [976, 986], [979, 976], [979, 982]], "missing_branches": [[910, 911]]}, "COCOEvaluator._accumulate.compute_average_precision": {"executed_lines": [1014, 1015, 1017, 1030, 1031, 1032], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1010, "executed_branches": [], "missing_branches": []}, "COCOEvaluator._accumulate.compute_average_precision.mean_with_mask": {"executed_lines": [1020, 1021, 1022, 1028], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1017, "executed_branches": [], "missing_branches": []}, "COCOEvaluator._pycocotools_summarize": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 4, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 4, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 2, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [1102, 1145, 1189, 1190], "excluded_lines": [], "start_line": 1097, "executed_branches": [], "missing_branches": [[1189, -1097], [1189, 1190]]}, "COCOEvaluator._pycocotools_summarize._summarize": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 23, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 23, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 8, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 8, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [1108, 1109, 1110, 1111, 1116, 1117, 1118, 1119, 1122, 1124, 1125, 1126, 1127, 1131, 1132, 1133, 1134, 1135, 1136, 1137, 1139, 1140, 1143], "excluded_lines": [], "start_line": 1102, "executed_branches": [], "missing_branches": [[1119, 1122], [1119, 1131], [1124, 1125], [1124, 1127], [1132, 1133], [1132, 1135], [1136, 1137], [1136, 1139]]}, "COCOEvaluator._pycocotools_summarize._summarize_predictions": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 14, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 14, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [1146, 1147, 1148, 1151, 1154, 1159, 1164, 1169, 1170, 1171, 1172, 1177, 1182, 1187], "excluded_lines": [], "start_line": 1145, "executed_branches": [], "missing_branches": []}, "COCOEvaluator.evaluate": {"executed_lines": [1198, 1199, 1200, 1202, 1205, 1212, 1215, 1223], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1192, "executed_branches": [], "missing_branches": []}, "MeanAveragePrecision.__init__": {"executed_lines": [1280, 1281, 1283, 1284, 1285, 1286], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1264, "executed_branches": [], "missing_branches": []}, "MeanAveragePrecision.reset": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 2, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [1292, 1293], "excluded_lines": [], "start_line": 1288, "executed_branches": [], "missing_branches": []}, "MeanAveragePrecision.update": {"executed_lines": [1310, 1312, 1315, 1321, 1332, 1333, 1335], "summary": {"covered_lines": 7, "num_statements": 18, "percent_covered": 32.35294117647059, "percent_covered_display": "32", "missing_lines": 11, "excluded_lines": 0, "percent_statements_covered": 38.888888888888886, "percent_statements_covered_display": "39", "num_branches": 16, "num_partial_branches": 4, "covered_branches": 4, "missing_branches": 12, "percent_branches_covered": 25.0, "percent_branches_covered_display": "25"}, "missing_lines": [1311, 1313, 1316, 1322, 1323, 1325, 1326, 1327, 1328, 1329, 1330], "excluded_lines": [], "start_line": 1295, "executed_branches": [[1310, 1312], [1312, 1315], [1315, 1321], [1321, 1332]], "missing_branches": [[1310, 1311], [1312, 1313], [1315, 1316], [1321, 1322], [1325, 1326], [1325, 1328], [1326, 1325], [1326, 1327], [1328, 1329], [1328, 1332], [1329, 1328], [1329, 1330]]}, "MeanAveragePrecision._prepare_targets": {"executed_lines": [1341, 1342, 1345, 1346, 1347, 1351, 1354, 1355, 1358, 1360, 1361, 1362, 1365, 1368, 1369, 1370, 1372, 1373, 1375, 1376, 1379, 1388, 1390, 1391, 1393], "summary": {"covered_lines": 25, "num_statements": 30, "percent_covered": 78.0, "percent_covered_display": "78", "missing_lines": 5, "excluded_lines": 0, "percent_statements_covered": 83.33333333333333, "percent_statements_covered_display": "83", "num_branches": 20, "num_partial_branches": 6, "covered_branches": 14, "missing_branches": 6, "percent_branches_covered": 70.0, "percent_branches_covered_display": "70"}, "missing_lines": [1343, 1348, 1352, 1363, 1377], "excluded_lines": [], "start_line": 1337, "executed_branches": [[1342, 1345], [1346, 1347], [1346, 1390], [1347, 1351], [1351, 1354], [1354, 1346], [1354, 1355], [1360, 1361], [1362, 1365], [1369, 1370], [1369, 1372], [1372, 1373], [1372, 1375], [1376, 1379]], "missing_branches": [[1342, 1343], [1347, 1348], [1351, 1352], [1360, 1368], [1362, 1363], [1376, 1377]]}, "MeanAveragePrecision._prepare_predictions": {"executed_lines": [1404, 1405, 1406, 1409, 1412, 1413, 1415, 1416, 1418, 1419, 1420, 1423, 1425, 1426, 1429, 1430, 1434, 1436, 1437, 1439, 1447, 1448], "summary": {"covered_lines": 22, "num_statements": 25, "percent_covered": 81.3953488372093, "percent_covered_display": "81", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 88.0, "percent_statements_covered_display": "88", "num_branches": 18, "num_partial_branches": 5, "covered_branches": 13, "missing_branches": 5, "percent_branches_covered": 72.22222222222223, "percent_branches_covered_display": "72"}, "missing_lines": [1407, 1410, 1421], "excluded_lines": [], "start_line": 1399, "executed_branches": [[1405, 1406], [1405, 1448], [1406, 1409], [1409, 1412], [1412, 1405], [1412, 1413], [1418, 1419], [1420, 1423], [1425, 1426], [1430, 1434], [1430, 1436], [1436, 1437], [1436, 1439]], "missing_branches": [[1406, 1407], [1409, 1410], [1418, 1425], [1420, 1421], [1425, 1429]]}, "MeanAveragePrecision.compute": {"executed_lines": [1459, 1460, 1462, 1468, 1469, 1471, 1473, 1475, 1478, 1481, 1490, 1499, 1509, 1520], "summary": {"covered_lines": 14, "num_statements": 15, "percent_covered": 88.23529411764706, "percent_covered_display": "88", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 93.33333333333333, "percent_statements_covered_display": "93", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [1463], "excluded_lines": [], "start_line": 1450, "executed_branches": [[1462, 1468]], "missing_branches": [[1462, 1463]]}, "": {"executed_lines": [1, 3, 4, 5, 6, 7, 8, 9, 10, 12, 13, 14, 16, 17, 18, 19, 20, 21, 23, 29, 30, 56, 57, 59, 60, 68, 69, 73, 74, 78, 79, 80, 81, 82, 83, 84, 86, 145, 180, 249, 255, 280, 281, 284, 314, 368, 414, 445, 459, 527, 528, 529, 532, 535, 540, 541, 542, 543, 546, 551, 584, 589, 625, 659, 700, 825, 1097, 1192, 1226, 1264, 1288, 1295, 1337, 1399, 1450], "summary": {"covered_lines": 75, "num_statements": 75, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 2, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [25, 26], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"MeanAveragePrecisionResult": {"executed_lines": [62, 63, 64, 66, 71, 76], "summary": {"covered_lines": 6, "num_statements": 55, "percent_covered": 10.126582278481013, "percent_covered_display": "10", "missing_lines": 49, "excluded_lines": 0, "percent_statements_covered": 10.909090909090908, "percent_statements_covered_display": "11", "num_branches": 24, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 22, "percent_branches_covered": 8.333333333333334, "percent_branches_covered_display": "8"}, "missing_lines": [116, 121, 130, 152, 153, 155, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 175, 189, 190, 191, 193, 194, 195, 200, 202, 203, 204, 209, 211, 212, 213, 218, 220, 222, 223, 224, 225, 227, 228, 230, 231, 233, 234, 235, 243, 245, 246], "excluded_lines": [], "start_line": 30, "executed_branches": [[63, 64], [63, 66]], "missing_branches": [[116, 121], [116, 130], [161, 162], [161, 165], [163, 164], [163, 165], [165, 166], [165, 169], [167, 168], [167, 169], [169, 170], [169, 175], [171, 172], [171, 175], [193, 194], [193, 202], [202, 203], [202, 211], [211, 212], [211, 220], [233, 234], [233, 243]]}, "EvaluationDataset": {"executed_lines": [266, 267, 268, 269, 270, 271, 273, 274, 277, 278, 282, 288, 289, 290, 291, 292, 293, 295, 296, 297, 299, 300, 301, 303, 304, 305, 308, 309, 310, 311, 312, 332, 335, 336, 341, 346, 353, 362, 365, 366, 386, 387, 411, 412, 430, 431, 432, 455, 457, 470, 471, 473, 477, 478, 479, 481, 484, 489, 493, 497, 502, 503, 508, 509, 510, 513, 514, 516, 518, 520, 521, 522, 523], "summary": {"covered_lines": 73, "num_statements": 93, "percent_covered": 70.74829931972789, "percent_covered_display": "71", "missing_lines": 20, "excluded_lines": 0, "percent_statements_covered": 78.49462365591398, "percent_statements_covered_display": "78", "num_branches": 54, "num_partial_branches": 17, "covered_branches": 31, "missing_branches": 23, "percent_branches_covered": 57.407407407407405, "percent_branches_covered_display": "57"}, "missing_lines": [333, 343, 363, 389, 392, 399, 408, 434, 436, 437, 438, 439, 441, 443, 456, 474, 490, 494, 498, 517], "excluded_lines": [], "start_line": 249, "executed_branches": [[273, 274], [273, 277], [290, 291], [291, 292], [291, 295], [295, 296], [296, 297], [296, 299], [299, 300], [300, 301], [300, 303], [303, 304], [304, 305], [304, 308], [332, 335], [335, 336], [362, 365], [386, 387], [430, 431], [455, 457], [473, 477], [477, 478], [477, 481], [489, 493], [493, 497], [497, 502], [502, 503], [508, 509], [508, 521], [513, 514], [516, 518]], "missing_branches": [[290, 295], [295, 299], [299, 303], [303, 308], [332, 333], [335, 343], [362, 363], [386, 389], [430, 434], [436, 437], [436, 443], [437, 438], [437, 443], [438, 439], [438, 441], [455, 456], [473, 474], [489, 490], [493, 494], [497, 498], [502, 521], [513, 516], [516, 517]]}, "ObjectSize": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 535, "executed_branches": [], "missing_branches": []}, "COCOEvaluatorParameters": {"executed_lines": [554, 555, 558, 566, 574, 576], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 546, "executed_branches": [], "missing_branches": []}, "COCOEvaluator": {"executed_lines": [599, 601, 604, 605, 609, 611, 613, 614, 616, 618, 620, 622, 623, 630, 633, 635, 638, 641, 642, 643, 646, 647, 648, 651, 652, 653, 656, 657, 672, 673, 676, 677, 678, 681, 682, 686, 689, 690, 693, 695, 698, 719, 720, 723, 724, 726, 730, 731, 732, 734, 737, 738, 741, 742, 745, 752, 753, 754, 757, 758, 760, 761, 762, 764, 766, 768, 770, 772, 775, 776, 777, 779, 788, 789, 790, 793, 794, 795, 796, 799, 804, 811, 830, 831, 832, 833, 834, 835, 839, 849, 853, 865, 866, 869, 870, 873, 877, 881, 887, 895, 896, 899, 900, 903, 904, 907, 910, 914, 917, 918, 921, 924, 929, 930, 933, 934, 937, 940, 944, 945, 948, 949, 950, 951, 953, 955, 957, 959, 963, 968, 969, 970, 972, 975, 976, 978, 979, 982, 983, 986, 990, 994, 1010, 1014, 1015, 1017, 1020, 1021, 1022, 1028, 1030, 1031, 1032, 1035, 1036, 1038, 1043, 1048, 1049, 1052, 1057, 1058, 1061, 1066, 1067, 1070, 1074, 1198, 1199, 1200, 1202, 1205, 1212, 1215, 1223], "summary": {"covered_lines": 175, "num_statements": 221, "percent_covered": 78.74564459930313, "percent_covered_display": "79", "missing_lines": 46, "excluded_lines": 0, "percent_statements_covered": 79.18552036199095, "percent_statements_covered_display": "79", "num_branches": 66, "num_partial_branches": 5, "covered_branches": 51, "missing_branches": 15, "percent_branches_covered": 77.27272727272727, "percent_branches_covered_display": "77"}, "missing_lines": [600, 602, 687, 785, 911, 1102, 1108, 1109, 1110, 1111, 1116, 1117, 1118, 1119, 1122, 1124, 1125, 1126, 1127, 1131, 1132, 1133, 1134, 1135, 1136, 1137, 1139, 1140, 1143, 1145, 1146, 1147, 1148, 1151, 1154, 1159, 1164, 1169, 1170, 1171, 1172, 1177, 1182, 1187, 1189, 1190], "excluded_lines": [], "start_line": 584, "executed_branches": [[599, 601], [601, 604], [641, 642], [641, 646], [647, 648], [647, 651], [652, 653], [652, 656], [676, 677], [676, 681], [686, 689], [723, 724], [723, 726], [730, 731], [730, 737], [731, 732], [731, 734], [762, 764], [762, 799], [764, 766], [764, 799], [766, 764], [766, 768], [772, 775], [772, 793], [776, 777], [776, 779], [779, 788], [788, 772], [788, 789], [793, 766], [793, 794], [895, 896], [895, 994], [899, 895], [899, 900], [903, 899], [903, 904], [910, 914], [933, 934], [933, 937], [948, 903], [948, 949], [968, 969], [968, 972], [969, 968], [969, 970], [976, 978], [976, 986], [979, 976], [979, 982]], "missing_branches": [[599, 600], [601, 602], [686, 687], [779, 785], [910, 911], [1119, 1122], [1119, 1131], [1124, 1125], [1124, 1127], [1132, 1133], [1132, 1135], [1136, 1137], [1136, 1139], [1189, -1097], [1189, 1190]]}, "MeanAveragePrecision": {"executed_lines": [1280, 1281, 1283, 1284, 1285, 1286, 1310, 1312, 1315, 1321, 1332, 1333, 1335, 1341, 1342, 1345, 1346, 1347, 1351, 1354, 1355, 1358, 1360, 1361, 1362, 1365, 1368, 1369, 1370, 1372, 1373, 1375, 1376, 1379, 1388, 1390, 1391, 1393, 1404, 1405, 1406, 1409, 1412, 1413, 1415, 1416, 1418, 1419, 1420, 1423, 1425, 1426, 1429, 1430, 1434, 1436, 1437, 1439, 1447, 1448, 1459, 1460, 1462, 1468, 1469, 1471, 1473, 1475, 1478, 1481, 1490, 1499, 1509, 1520], "summary": {"covered_lines": 74, "num_statements": 96, "percent_covered": 69.73684210526316, "percent_covered_display": "70", "missing_lines": 22, "excluded_lines": 0, "percent_statements_covered": 77.08333333333333, "percent_statements_covered_display": "77", "num_branches": 56, "num_partial_branches": 16, "covered_branches": 32, "missing_branches": 24, "percent_branches_covered": 57.142857142857146, "percent_branches_covered_display": "57"}, "missing_lines": [1292, 1293, 1311, 1313, 1316, 1322, 1323, 1325, 1326, 1327, 1328, 1329, 1330, 1343, 1348, 1352, 1363, 1377, 1407, 1410, 1421, 1463], "excluded_lines": [], "start_line": 1226, "executed_branches": [[1310, 1312], [1312, 1315], [1315, 1321], [1321, 1332], [1342, 1345], [1346, 1347], [1346, 1390], [1347, 1351], [1351, 1354], [1354, 1346], [1354, 1355], [1360, 1361], [1362, 1365], [1369, 1370], [1369, 1372], [1372, 1373], [1372, 1375], [1376, 1379], [1405, 1406], [1405, 1448], [1406, 1409], [1409, 1412], [1412, 1405], [1412, 1413], [1418, 1419], [1420, 1423], [1425, 1426], [1430, 1434], [1430, 1436], [1436, 1437], [1436, 1439], [1462, 1468]], "missing_branches": [[1310, 1311], [1312, 1313], [1315, 1316], [1321, 1322], [1325, 1326], [1325, 1328], [1326, 1325], [1326, 1327], [1328, 1329], [1328, 1332], [1329, 1328], [1329, 1330], [1342, 1343], [1347, 1348], [1351, 1352], [1360, 1368], [1362, 1363], [1376, 1377], [1406, 1407], [1409, 1410], [1418, 1425], [1420, 1421], [1425, 1429], [1462, 1463]]}, "": {"executed_lines": [1, 3, 4, 5, 6, 7, 8, 9, 10, 12, 13, 14, 16, 17, 18, 19, 20, 21, 23, 29, 30, 56, 57, 59, 60, 68, 69, 73, 74, 78, 79, 80, 81, 82, 83, 84, 86, 145, 180, 249, 255, 280, 281, 284, 314, 368, 414, 445, 459, 527, 528, 529, 532, 535, 540, 541, 542, 543, 546, 551, 584, 589, 625, 659, 700, 825, 1097, 1192, 1226, 1264, 1288, 1295, 1337, 1399, 1450], "summary": {"covered_lines": 75, "num_statements": 75, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 2, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [25, 26], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "src\\supervision\\metrics\\mean_average_recall.py": {"executed_lines": [1, 3, 4, 5, 7, 8, 9, 11, 12, 13, 18, 19, 20, 24, 30, 31, 61, 63, 64, 65, 67, 68, 69, 71, 72, 73, 75, 76, 77, 78, 79, 81, 82, 83, 85, 154, 185, 259, 297, 307, 309, 310, 312, 314, 321, 336, 338, 341, 347, 348, 350, 352, 360, 362, 365, 367, 372, 374, 377, 379, 381, 384, 385, 387, 388, 389, 391, 392, 393, 403, 404, 405, 407, 408, 416, 427, 430, 441, 442, 454, 455, 459, 471, 482, 484, 485, 487, 495, 496, 499, 500, 503, 505, 507, 508, 514, 518, 519, 521, 522, 524, 525, 526, 527, 529, 530, 531, 532, 534, 535, 536, 538, 539, 568, 569, 571, 574, 575, 576, 577, 579, 580, 581, 582, 583, 588, 589, 591, 592, 594, 598, 599, 601, 602, 615, 620, 621, 623, 624, 626, 627, 629, 631, 632, 633, 634, 639, 640, 641, 642, 643, 644, 647, 648, 652, 656, 657, 658, 662, 666, 667, 668, 670, 671, 673, 674, 676, 677, 678, 679, 680, 682, 683, 684, 686, 688, 697, 698, 699, 700, 703, 706], "summary": {"covered_lines": 182, "num_statements": 271, "percent_covered": 62.87262872628726, "percent_covered_display": "63", "missing_lines": 89, "excluded_lines": 3, "percent_statements_covered": 67.15867158671587, "percent_statements_covered_display": "67", "num_branches": 98, "num_partial_branches": 16, "covered_branches": 50, "missing_branches": 48, "percent_branches_covered": 51.02040816326531, "percent_branches_covered_display": "51"}, "missing_lines": [124, 134, 135, 136, 139, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 152, 161, 162, 164, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 183, 193, 194, 195, 197, 198, 199, 200, 205, 207, 208, 209, 210, 215, 217, 218, 219, 220, 225, 227, 229, 230, 231, 232, 235, 237, 238, 240, 241, 243, 244, 245, 253, 255, 256, 318, 319, 337, 339, 342, 406, 412, 584, 585, 586, 616, 635, 636, 637, 638, 645, 649, 650, 653, 654, 660, 675, 681], "excluded_lines": [26, 27, 86], "executed_branches": [[336, 338], [338, 341], [341, 347], [387, 388], [387, 441], [391, 387], [391, 392], [392, 393], [392, 403], [403, 404], [403, 405], [405, 407], [407, 408], [441, 442], [441, 454], [485, 487], [485, 499], [521, 522], [521, 535], [524, 521], [524, 525], [529, 530], [529, 534], [574, 575], [574, 598], [579, 580], [579, 583], [583, 588], [615, 620], [631, 632], [631, 634], [634, 639], [639, 640], [641, 642], [641, 644], [648, 652], [652, 656], [656, 657], [667, 668], [667, 670], [674, 676], [676, 677], [678, 679], [678, 680], [680, 682], [682, 683], [683, 684], [683, 686], [699, 700], [699, 706]], "missing_branches": [[134, 135], [134, 136], [136, 139], [136, 141], [142, 143], [142, 145], [145, 146], [145, 148], [148, 149], [148, 152], [170, 171], [170, 174], [172, 173], [172, 174], [174, 175], [174, 178], [176, 177], [176, 178], [178, 179], [178, 183], [180, 181], [180, 183], [197, 198], [197, 207], [207, 208], [207, 217], [217, 218], [217, 227], [243, 244], [243, 253], [336, 337], [338, 339], [341, 342], [405, 406], [407, 412], [583, 584], [615, 616], [634, 635], [635, 636], [635, 638], [639, 645], [648, 649], [652, 653], [656, 660], [674, 675], [676, 678], [680, 681], [682, 686]], "functions": {"MeanAverageRecallResult.mAR_at_1": {"executed_lines": [65], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 64, "executed_branches": [], "missing_branches": []}, "MeanAverageRecallResult.mAR_at_10": {"executed_lines": [69], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 68, "executed_branches": [], "missing_branches": []}, "MeanAverageRecallResult.mAR_at_100": {"executed_lines": [73], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 72, "executed_branches": [], "missing_branches": []}, "MeanAverageRecallResult.__str__": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 16, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 16, "excluded_lines": 1, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 10, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 10, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [124, 134, 135, 136, 139, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 152], "excluded_lines": [86], "start_line": 85, "executed_branches": [], "missing_branches": [[134, 135], [134, 136], [136, 139], [136, 141], [142, 143], [142, 145], [145, 146], [145, 148], [148, 149], [148, 152]]}, "MeanAverageRecallResult.to_pandas": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 16, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 16, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 12, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 12, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [161, 162, 164, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 183], "excluded_lines": [], "start_line": 154, "executed_branches": [], "missing_branches": [[170, 171], [170, 174], [172, 173], [172, 174], [174, 175], [174, 178], [176, 177], [176, 178], [178, 179], [178, 183], [180, 181], [180, 183]]}, "MeanAverageRecallResult.plot": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 34, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 34, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 8, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 8, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [193, 194, 195, 197, 198, 199, 200, 205, 207, 208, 209, 210, 215, 217, 218, 219, 220, 225, 227, 229, 230, 231, 232, 235, 237, 238, 240, 241, 243, 244, 245, 253, 255, 256], "excluded_lines": [], "start_line": 185, "executed_branches": [], "missing_branches": [[197, 198], [197, 207], [207, 208], [207, 217], [217, 218], [217, 227], [243, 244], [243, 253]]}, "MeanAverageRecall.__init__": {"executed_lines": [307, 309, 310, 312], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 297, "executed_branches": [], "missing_branches": []}, "MeanAverageRecall.reset": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 2, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [318, 319], "excluded_lines": [], "start_line": 314, "executed_branches": [], "missing_branches": []}, "MeanAverageRecall.update": {"executed_lines": [336, 338, 341, 347, 348, 350], "summary": {"covered_lines": 6, "num_statements": 9, "percent_covered": 60.0, "percent_covered_display": "60", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 66.66666666666667, "percent_statements_covered_display": "67", "num_branches": 6, "num_partial_branches": 3, "covered_branches": 3, "missing_branches": 3, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [337, 339, 342], "excluded_lines": [], "start_line": 321, "executed_branches": [[336, 338], [338, 341], [341, 347]], "missing_branches": [[336, 337], [338, 339], [341, 342]]}, "MeanAverageRecall.compute": {"executed_lines": [360, 362, 365, 367, 372, 374, 377, 379], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 352, "executed_branches": [], "missing_branches": []}, "MeanAverageRecall._compute": {"executed_lines": [384, 385, 387, 388, 389, 391, 392, 393, 403, 404, 405, 407, 408, 416, 427, 430, 441, 442, 454, 455, 459], "summary": {"covered_lines": 21, "num_statements": 23, "percent_covered": 89.1891891891892, "percent_covered_display": "89", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 91.30434782608695, "percent_statements_covered_display": "91", "num_branches": 14, "num_partial_branches": 2, "covered_branches": 12, "missing_branches": 2, "percent_branches_covered": 85.71428571428571, "percent_branches_covered_display": "86"}, "missing_lines": [406, 412], "excluded_lines": [], "start_line": 381, "executed_branches": [[387, 388], [387, 441], [391, 387], [391, 392], [392, 393], [392, 403], [403, 404], [403, 405], [405, 407], [407, 408], [441, 442], [441, 454]], "missing_branches": [[405, 406], [407, 412]]}, "MeanAverageRecall._compute_average_recall_for_classes": {"executed_lines": [482, 484, 485, 487, 495, 496, 499, 500, 503, 505], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 471, "executed_branches": [[485, 487], [485, 499]], "missing_branches": []}, "MeanAverageRecall._match_detection_batch": {"executed_lines": [514, 518, 519, 521, 522, 524, 525, 526, 527, 529, 530, 531, 532, 534, 535, 536], "summary": {"covered_lines": 16, "num_statements": 16, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 6, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 508, "executed_branches": [[521, 522], [521, 535], [524, 521], [524, 525], [529, 530], [529, 534]], "missing_branches": []}, "MeanAverageRecall._compute_confusion_matrix": {"executed_lines": [568, 569, 571, 574, 575, 576, 577, 579, 580, 581, 582, 583, 588, 589, 591, 592, 594, 598, 599], "summary": {"covered_lines": 19, "num_statements": 22, "percent_covered": 85.71428571428571, "percent_covered_display": "86", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 86.36363636363636, "percent_statements_covered_display": "86", "num_branches": 6, "num_partial_branches": 1, "covered_branches": 5, "missing_branches": 1, "percent_branches_covered": 83.33333333333333, "percent_branches_covered_display": "83"}, "missing_lines": [584, 585, 586], "excluded_lines": [], "start_line": 539, "executed_branches": [[574, 575], [574, 598], [579, 580], [579, 583], [583, 588]], "missing_branches": [[583, 584]]}, "MeanAverageRecall._compute_recall": {"executed_lines": [615, 620, 621, 623, 624, 626, 627], "summary": {"covered_lines": 7, "num_statements": 8, "percent_covered": 80.0, "percent_covered_display": "80", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 87.5, "percent_statements_covered_display": "88", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [616], "excluded_lines": [], "start_line": 602, "executed_branches": [[615, 620]], "missing_branches": [[615, 616]]}, "MeanAverageRecall._detections_content": {"executed_lines": [631, 632, 633, 634, 639, 640, 641, 642, 643, 644], "summary": {"covered_lines": 10, "num_statements": 15, "percent_covered": 64.0, "percent_covered_display": "64", "missing_lines": 5, "excluded_lines": 0, "percent_statements_covered": 66.66666666666667, "percent_statements_covered_display": "67", "num_branches": 10, "num_partial_branches": 2, "covered_branches": 6, "missing_branches": 4, "percent_branches_covered": 60.0, "percent_branches_covered_display": "60"}, "missing_lines": [635, 636, 637, 638, 645], "excluded_lines": [], "start_line": 629, "executed_branches": [[631, 632], [631, 634], [634, 639], [639, 640], [641, 642], [641, 644]], "missing_branches": [[634, 635], [635, 636], [635, 638], [639, 645]]}, "MeanAverageRecall._make_empty_content": {"executed_lines": [648, 652, 656, 657, 658], "summary": {"covered_lines": 5, "num_statements": 10, "percent_covered": 50.0, "percent_covered_display": "50", "missing_lines": 5, "excluded_lines": 0, "percent_statements_covered": 50.0, "percent_statements_covered_display": "50", "num_branches": 6, "num_partial_branches": 3, "covered_branches": 3, "missing_branches": 3, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [649, 650, 653, 654, 660], "excluded_lines": [], "start_line": 647, "executed_branches": [[648, 652], [652, 656], [656, 657]], "missing_branches": [[648, 649], [652, 653], [656, 660]]}, "MeanAverageRecall._filter_detections_by_size": {"executed_lines": [666, 667, 668, 670, 671, 673, 674, 676, 677, 678, 679, 680, 682, 683, 684, 686], "summary": {"covered_lines": 16, "num_statements": 18, "percent_covered": 81.25, "percent_covered_display": "81", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 88.88888888888889, "percent_statements_covered_display": "89", "num_branches": 14, "num_partial_branches": 4, "covered_branches": 10, "missing_branches": 4, "percent_branches_covered": 71.42857142857143, "percent_branches_covered_display": "71"}, "missing_lines": [675, 681], "excluded_lines": [], "start_line": 662, "executed_branches": [[667, 668], [667, 670], [674, 676], [676, 677], [678, 679], [678, 680], [680, 682], [682, 683], [683, 684], [683, 686]], "missing_branches": [[674, 675], [676, 678], [680, 681], [682, 686]]}, "MeanAverageRecall._filter_predictions_and_targets_by_size": {"executed_lines": [697, 698, 699, 700, 703, 706], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 688, "executed_branches": [[699, 700], [699, 706]], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 5, 7, 8, 9, 11, 12, 13, 18, 19, 20, 24, 30, 31, 61, 63, 64, 67, 68, 71, 72, 75, 76, 77, 78, 79, 81, 82, 83, 85, 154, 185, 259, 297, 314, 321, 352, 381, 471, 507, 508, 538, 539, 601, 602, 629, 647, 662, 688], "summary": {"covered_lines": 51, "num_statements": 51, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 2, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [26, 27], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"MeanAverageRecallResult": {"executed_lines": [65, 69, 73], "summary": {"covered_lines": 3, "num_statements": 69, "percent_covered": 3.0303030303030303, "percent_covered_display": "3", "missing_lines": 66, "excluded_lines": 1, "percent_statements_covered": 4.3478260869565215, "percent_statements_covered_display": "4", "num_branches": 30, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 30, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [124, 134, 135, 136, 139, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 152, 161, 162, 164, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 183, 193, 194, 195, 197, 198, 199, 200, 205, 207, 208, 209, 210, 215, 217, 218, 219, 220, 225, 227, 229, 230, 231, 232, 235, 237, 238, 240, 241, 243, 244, 245, 253, 255, 256], "excluded_lines": [86], "start_line": 31, "executed_branches": [], "missing_branches": [[134, 135], [134, 136], [136, 139], [136, 141], [142, 143], [142, 145], [145, 146], [145, 148], [148, 149], [148, 152], [170, 171], [170, 174], [172, 173], [172, 174], [174, 175], [174, 178], [176, 177], [176, 178], [178, 179], [178, 183], [180, 181], [180, 183], [197, 198], [197, 207], [207, 208], [207, 217], [217, 218], [217, 227], [243, 244], [243, 253]]}, "MeanAverageRecall": {"executed_lines": [307, 309, 310, 312, 336, 338, 341, 347, 348, 350, 360, 362, 365, 367, 372, 374, 377, 379, 384, 385, 387, 388, 389, 391, 392, 393, 403, 404, 405, 407, 408, 416, 427, 430, 441, 442, 454, 455, 459, 482, 484, 485, 487, 495, 496, 499, 500, 503, 505, 514, 518, 519, 521, 522, 524, 525, 526, 527, 529, 530, 531, 532, 534, 535, 536, 568, 569, 571, 574, 575, 576, 577, 579, 580, 581, 582, 583, 588, 589, 591, 592, 594, 598, 599, 615, 620, 621, 623, 624, 626, 627, 631, 632, 633, 634, 639, 640, 641, 642, 643, 644, 648, 652, 656, 657, 658, 666, 667, 668, 670, 671, 673, 674, 676, 677, 678, 679, 680, 682, 683, 684, 686, 697, 698, 699, 700, 703, 706], "summary": {"covered_lines": 128, "num_statements": 151, "percent_covered": 81.27853881278538, "percent_covered_display": "81", "missing_lines": 23, "excluded_lines": 0, "percent_statements_covered": 84.76821192052981, "percent_statements_covered_display": "85", "num_branches": 68, "num_partial_branches": 16, "covered_branches": 50, "missing_branches": 18, "percent_branches_covered": 73.52941176470588, "percent_branches_covered_display": "74"}, "missing_lines": [318, 319, 337, 339, 342, 406, 412, 584, 585, 586, 616, 635, 636, 637, 638, 645, 649, 650, 653, 654, 660, 675, 681], "excluded_lines": [], "start_line": 259, "executed_branches": [[336, 338], [338, 341], [341, 347], [387, 388], [387, 441], [391, 387], [391, 392], [392, 393], [392, 403], [403, 404], [403, 405], [405, 407], [407, 408], [441, 442], [441, 454], [485, 487], [485, 499], [521, 522], [521, 535], [524, 521], [524, 525], [529, 530], [529, 534], [574, 575], [574, 598], [579, 580], [579, 583], [583, 588], [615, 620], [631, 632], [631, 634], [634, 639], [639, 640], [641, 642], [641, 644], [648, 652], [652, 656], [656, 657], [667, 668], [667, 670], [674, 676], [676, 677], [678, 679], [678, 680], [680, 682], [682, 683], [683, 684], [683, 686], [699, 700], [699, 706]], "missing_branches": [[336, 337], [338, 339], [341, 342], [405, 406], [407, 412], [583, 584], [615, 616], [634, 635], [635, 636], [635, 638], [639, 645], [648, 649], [652, 653], [656, 660], [674, 675], [676, 678], [680, 681], [682, 686]]}, "": {"executed_lines": [1, 3, 4, 5, 7, 8, 9, 11, 12, 13, 18, 19, 20, 24, 30, 31, 61, 63, 64, 67, 68, 71, 72, 75, 76, 77, 78, 79, 81, 82, 83, 85, 154, 185, 259, 297, 314, 321, 352, 381, 471, 507, 508, 538, 539, 601, 602, 629, 647, 662, 688], "summary": {"covered_lines": 51, "num_statements": 51, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 2, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [26, 27], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "src\\supervision\\metrics\\precision.py": {"executed_lines": [1, 3, 4, 5, 7, 8, 9, 11, 12, 13, 18, 19, 20, 24, 30, 69, 82, 83, 85, 86, 88, 92, 93, 95, 110, 111, 112, 113, 115, 116, 121, 122, 124, 126, 134, 136, 139, 141, 146, 148, 151, 153, 155, 166, 167, 169, 170, 171, 173, 176, 178, 188, 189, 190, 200, 201, 202, 204, 205, 213, 223, 232, 233, 245, 246, 250, 262, 278, 279, 280, 284, 287, 288, 289, 292, 297, 300, 301, 302, 303, 304, 305, 306, 307, 311, 313, 317, 319, 320, 326, 330, 331, 333, 334, 336, 337, 338, 339, 341, 342, 343, 344, 346, 347, 348, 350, 351, 378, 379, 381, 384, 385, 386, 387, 389, 390, 391, 392, 393, 394, 395, 396, 398, 399, 400, 401, 404, 405, 407, 408, 421, 426, 427, 429, 430, 437, 438, 440, 442, 443, 444, 445, 450, 451, 452, 453, 454, 455, 458, 459, 463, 467, 468, 469, 473, 477, 478, 479, 481, 482, 484, 485, 487, 488, 489, 490, 491, 493, 494, 495, 497, 499, 508, 509, 510, 511, 514, 517, 520, 521, 551, 552, 554, 555, 556, 558, 559, 560, 562, 563, 564, 565, 567, 568, 569, 571, 643, 673], "summary": {"covered_lines": 198, "num_statements": 280, "percent_covered": 67.01030927835052, "percent_covered_display": "67", "missing_lines": 82, "excluded_lines": 3, "percent_statements_covered": 70.71428571428571, "percent_statements_covered_display": "71", "num_branches": 108, "num_partial_branches": 14, "covered_branches": 62, "missing_branches": 46, "percent_branches_covered": 57.407407407407405, "percent_branches_covered_display": "57"}, "missing_lines": [177, 203, 209, 422, 446, 447, 448, 449, 456, 460, 461, 464, 465, 471, 486, 492, 613, 623, 624, 625, 628, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 641, 650, 651, 653, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 671, 682, 683, 684, 686, 687, 688, 689, 690, 692, 693, 694, 695, 696, 698, 699, 700, 701, 702, 704, 706, 707, 708, 709, 714, 716, 717, 719, 720, 722, 723, 724, 732, 734, 735], "excluded_lines": [26, 27, 572], "executed_branches": [[110, 111], [110, 112], [112, 113], [112, 115], [115, 116], [115, 121], [169, 170], [169, 232], [173, 176], [173, 188], [176, 178], [188, 169], [188, 189], [189, 190], [189, 200], [200, 201], [200, 202], [202, 204], [204, 205], [232, 233], [232, 245], [300, 301], [300, 302], [302, 303], [302, 305], [305, 306], [307, 311], [307, 313], [333, 334], [333, 347], [336, 333], [336, 337], [341, 342], [341, 346], [384, 385], [384, 404], [389, 390], [389, 393], [393, 394], [393, 398], [421, 426], [442, 443], [442, 445], [445, 450], [450, 451], [452, 453], [452, 455], [459, 463], [463, 467], [467, 468], [478, 479], [478, 481], [485, 487], [487, 488], [489, 490], [489, 491], [491, 493], [493, 494], [494, 495], [494, 497], [510, 511], [510, 517]], "missing_branches": [[176, 177], [202, 203], [204, 209], [305, 317], [421, 422], [445, 446], [446, 447], [446, 449], [450, 456], [459, 460], [463, 464], [467, 471], [485, 486], [487, 489], [491, 492], [493, 497], [623, 624], [623, 625], [625, 628], [625, 630], [631, 632], [631, 634], [634, 635], [634, 637], [637, 638], [637, 641], [658, 659], [658, 662], [660, 661], [660, 662], [662, 663], [662, 666], [664, 665], [664, 666], [666, 667], [666, 671], [668, 669], [668, 671], [686, 687], [686, 692], [692, 693], [692, 698], [698, 699], [698, 704], [722, 723], [722, 732]], "functions": {"Precision.__init__": {"executed_lines": [82, 83, 85, 86], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 69, "executed_branches": [], "missing_branches": []}, "Precision.reset": {"executed_lines": [92, 93], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 88, "executed_branches": [], "missing_branches": []}, "Precision.update": {"executed_lines": [110, 111, 112, 113, 115, 116, 121, 122, 124], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 6, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 95, "executed_branches": [[110, 111], [110, 112], [112, 113], [112, 115], [115, 116], [115, 121]], "missing_branches": []}, "Precision.compute": {"executed_lines": [134, 136, 139, 141, 146, 148, 151, 153], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 126, "executed_branches": [], "missing_branches": []}, "Precision._compute": {"executed_lines": [166, 167, 169, 170, 171, 173, 176, 178, 188, 189, 190, 200, 201, 202, 204, 205, 213, 223, 232, 233, 245, 246, 250], "summary": {"covered_lines": 23, "num_statements": 26, "percent_covered": 86.36363636363636, "percent_covered_display": "86", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 88.46153846153847, "percent_statements_covered_display": "88", "num_branches": 18, "num_partial_branches": 3, "covered_branches": 15, "missing_branches": 3, "percent_branches_covered": 83.33333333333333, "percent_branches_covered_display": "83"}, "missing_lines": [177, 203, 209], "excluded_lines": [], "start_line": 155, "executed_branches": [[169, 170], [169, 232], [173, 176], [173, 188], [176, 178], [188, 169], [188, 189], [189, 190], [189, 200], [200, 201], [200, 202], [202, 204], [204, 205], [232, 233], [232, 245]], "missing_branches": [[176, 177], [202, 203], [204, 209]]}, "Precision._compute_precision_for_classes": {"executed_lines": [278, 279, 280, 284, 287, 288, 289, 292, 297, 300, 301, 302, 303, 304, 305, 306, 307, 311, 313, 317], "summary": {"covered_lines": 20, "num_statements": 20, "percent_covered": 96.42857142857143, "percent_covered_display": "96", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 8, "num_partial_branches": 1, "covered_branches": 7, "missing_branches": 1, "percent_branches_covered": 87.5, "percent_branches_covered_display": "88"}, "missing_lines": [], "excluded_lines": [], "start_line": 262, "executed_branches": [[300, 301], [300, 302], [302, 303], [302, 305], [305, 306], [307, 311], [307, 313]], "missing_branches": [[305, 317]]}, "Precision._match_detection_batch": {"executed_lines": [326, 330, 331, 333, 334, 336, 337, 338, 339, 341, 342, 343, 344, 346, 347, 348], "summary": {"covered_lines": 16, "num_statements": 16, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 6, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 320, "executed_branches": [[333, 334], [333, 347], [336, 333], [336, 337], [341, 342], [341, 346]], "missing_branches": []}, "Precision._compute_confusion_matrix": {"executed_lines": [378, 379, 381, 384, 385, 386, 387, 389, 390, 391, 392, 393, 394, 395, 396, 398, 399, 400, 401, 404, 405], "summary": {"covered_lines": 21, "num_statements": 21, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 6, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 351, "executed_branches": [[384, 385], [384, 404], [389, 390], [389, 393], [393, 394], [393, 398]], "missing_branches": []}, "Precision._compute_precision": {"executed_lines": [421, 426, 427, 429, 430, 437, 438], "summary": {"covered_lines": 7, "num_statements": 8, "percent_covered": 80.0, "percent_covered_display": "80", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 87.5, "percent_statements_covered_display": "88", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [422], "excluded_lines": [], "start_line": 408, "executed_branches": [[421, 426]], "missing_branches": [[421, 422]]}, "Precision._detections_content": {"executed_lines": [442, 443, 444, 445, 450, 451, 452, 453, 454, 455], "summary": {"covered_lines": 10, "num_statements": 15, "percent_covered": 64.0, "percent_covered_display": "64", "missing_lines": 5, "excluded_lines": 0, "percent_statements_covered": 66.66666666666667, "percent_statements_covered_display": "67", "num_branches": 10, "num_partial_branches": 2, "covered_branches": 6, "missing_branches": 4, "percent_branches_covered": 60.0, "percent_branches_covered_display": "60"}, "missing_lines": [446, 447, 448, 449, 456], "excluded_lines": [], "start_line": 440, "executed_branches": [[442, 443], [442, 445], [445, 450], [450, 451], [452, 453], [452, 455]], "missing_branches": [[445, 446], [446, 447], [446, 449], [450, 456]]}, "Precision._make_empty_content": {"executed_lines": [459, 463, 467, 468, 469], "summary": {"covered_lines": 5, "num_statements": 10, "percent_covered": 50.0, "percent_covered_display": "50", "missing_lines": 5, "excluded_lines": 0, "percent_statements_covered": 50.0, "percent_statements_covered_display": "50", "num_branches": 6, "num_partial_branches": 3, "covered_branches": 3, "missing_branches": 3, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [460, 461, 464, 465, 471], "excluded_lines": [], "start_line": 458, "executed_branches": [[459, 463], [463, 467], [467, 468]], "missing_branches": [[459, 460], [463, 464], [467, 471]]}, "Precision._filter_detections_by_size": {"executed_lines": [477, 478, 479, 481, 482, 484, 485, 487, 488, 489, 490, 491, 493, 494, 495, 497], "summary": {"covered_lines": 16, "num_statements": 18, "percent_covered": 81.25, "percent_covered_display": "81", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 88.88888888888889, "percent_statements_covered_display": "89", "num_branches": 14, "num_partial_branches": 4, "covered_branches": 10, "missing_branches": 4, "percent_branches_covered": 71.42857142857143, "percent_branches_covered_display": "71"}, "missing_lines": [486, 492], "excluded_lines": [], "start_line": 473, "executed_branches": [[478, 479], [478, 481], [485, 487], [487, 488], [489, 490], [489, 491], [491, 493], [493, 494], [494, 495], [494, 497]], "missing_branches": [[485, 486], [487, 489], [491, 492], [493, 497]]}, "Precision._filter_predictions_and_targets_by_size": {"executed_lines": [508, 509, 510, 511, 514, 517], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 499, "executed_branches": [[510, 511], [510, 517]], "missing_branches": []}, "PrecisionResult.precision_at_50": {"executed_lines": [556], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 555, "executed_branches": [], "missing_branches": []}, "PrecisionResult.precision_at_75": {"executed_lines": [560], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 559, "executed_branches": [], "missing_branches": []}, "PrecisionResult.__str__": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 16, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 16, "excluded_lines": 1, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 10, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 10, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [613, 623, 624, 625, 628, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 641], "excluded_lines": [572], "start_line": 571, "executed_branches": [], "missing_branches": [[623, 624], [623, 625], [625, 628], [625, 630], [631, 632], [631, 634], [634, 635], [634, 637], [637, 638], [637, 641]]}, "PrecisionResult.to_pandas": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 16, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 16, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 12, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 12, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [650, 651, 653, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 671], "excluded_lines": [], "start_line": 643, "executed_branches": [], "missing_branches": [[658, 659], [658, 662], [660, 661], [660, 662], [662, 663], [662, 666], [664, 665], [664, 666], [666, 667], [666, 671], [668, 669], [668, 671]]}, "PrecisionResult.plot": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 34, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 34, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 8, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 8, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [682, 683, 684, 686, 687, 688, 689, 690, 692, 693, 694, 695, 696, 698, 699, 700, 701, 702, 704, 706, 707, 708, 709, 714, 716, 717, 719, 720, 722, 723, 724, 732, 734, 735], "excluded_lines": [], "start_line": 673, "executed_branches": [], "missing_branches": [[686, 687], [686, 692], [692, 693], [692, 698], [698, 699], [698, 704], [722, 723], [722, 732]]}, "": {"executed_lines": [1, 3, 4, 5, 7, 8, 9, 11, 12, 13, 18, 19, 20, 24, 30, 69, 88, 95, 126, 155, 262, 319, 320, 350, 351, 407, 408, 440, 458, 473, 499, 520, 521, 551, 552, 554, 555, 558, 559, 562, 563, 564, 565, 567, 568, 569, 571, 643, 673], "summary": {"covered_lines": 49, "num_statements": 49, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 2, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [26, 27], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"Precision": {"executed_lines": [82, 83, 85, 86, 92, 93, 110, 111, 112, 113, 115, 116, 121, 122, 124, 134, 136, 139, 141, 146, 148, 151, 153, 166, 167, 169, 170, 171, 173, 176, 178, 188, 189, 190, 200, 201, 202, 204, 205, 213, 223, 232, 233, 245, 246, 250, 278, 279, 280, 284, 287, 288, 289, 292, 297, 300, 301, 302, 303, 304, 305, 306, 307, 311, 313, 317, 326, 330, 331, 333, 334, 336, 337, 338, 339, 341, 342, 343, 344, 346, 347, 348, 378, 379, 381, 384, 385, 386, 387, 389, 390, 391, 392, 393, 394, 395, 396, 398, 399, 400, 401, 404, 405, 421, 426, 427, 429, 430, 437, 438, 442, 443, 444, 445, 450, 451, 452, 453, 454, 455, 459, 463, 467, 468, 469, 477, 478, 479, 481, 482, 484, 485, 487, 488, 489, 490, 491, 493, 494, 495, 497, 508, 509, 510, 511, 514, 517], "summary": {"covered_lines": 147, "num_statements": 163, "percent_covered": 86.72199170124482, "percent_covered_display": "87", "missing_lines": 16, "excluded_lines": 0, "percent_statements_covered": 90.1840490797546, "percent_statements_covered_display": "90", "num_branches": 78, "num_partial_branches": 14, "covered_branches": 62, "missing_branches": 16, "percent_branches_covered": 79.48717948717949, "percent_branches_covered_display": "79"}, "missing_lines": [177, 203, 209, 422, 446, 447, 448, 449, 456, 460, 461, 464, 465, 471, 486, 492], "excluded_lines": [], "start_line": 30, "executed_branches": [[110, 111], [110, 112], [112, 113], [112, 115], [115, 116], [115, 121], [169, 170], [169, 232], [173, 176], [173, 188], [176, 178], [188, 169], [188, 189], [189, 190], [189, 200], [200, 201], [200, 202], [202, 204], [204, 205], [232, 233], [232, 245], [300, 301], [300, 302], [302, 303], [302, 305], [305, 306], [307, 311], [307, 313], [333, 334], [333, 347], [336, 333], [336, 337], [341, 342], [341, 346], [384, 385], [384, 404], [389, 390], [389, 393], [393, 394], [393, 398], [421, 426], [442, 443], [442, 445], [445, 450], [450, 451], [452, 453], [452, 455], [459, 463], [463, 467], [467, 468], [478, 479], [478, 481], [485, 487], [487, 488], [489, 490], [489, 491], [491, 493], [493, 494], [494, 495], [494, 497], [510, 511], [510, 517]], "missing_branches": [[176, 177], [202, 203], [204, 209], [305, 317], [421, 422], [445, 446], [446, 447], [446, 449], [450, 456], [459, 460], [463, 464], [467, 471], [485, 486], [487, 489], [491, 492], [493, 497]]}, "PrecisionResult": {"executed_lines": [556, 560], "summary": {"covered_lines": 2, "num_statements": 68, "percent_covered": 2.0408163265306123, "percent_covered_display": "2", "missing_lines": 66, "excluded_lines": 1, "percent_statements_covered": 2.9411764705882355, "percent_statements_covered_display": "3", "num_branches": 30, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 30, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [613, 623, 624, 625, 628, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 641, 650, 651, 653, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 671, 682, 683, 684, 686, 687, 688, 689, 690, 692, 693, 694, 695, 696, 698, 699, 700, 701, 702, 704, 706, 707, 708, 709, 714, 716, 717, 719, 720, 722, 723, 724, 732, 734, 735], "excluded_lines": [572], "start_line": 521, "executed_branches": [], "missing_branches": [[623, 624], [623, 625], [625, 628], [625, 630], [631, 632], [631, 634], [634, 635], [634, 637], [637, 638], [637, 641], [658, 659], [658, 662], [660, 661], [660, 662], [662, 663], [662, 666], [664, 665], [664, 666], [666, 667], [666, 671], [668, 669], [668, 671], [686, 687], [686, 692], [692, 693], [692, 698], [698, 699], [698, 704], [722, 723], [722, 732]]}, "": {"executed_lines": [1, 3, 4, 5, 7, 8, 9, 11, 12, 13, 18, 19, 20, 24, 30, 69, 88, 95, 126, 155, 262, 319, 320, 350, 351, 407, 408, 440, 458, 473, 499, 520, 521, 551, 552, 554, 555, 558, 559, 562, 563, 564, 565, 567, 568, 569, 571, 643, 673], "summary": {"covered_lines": 49, "num_statements": 49, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 2, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [26, 27], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "src\\supervision\\metrics\\recall.py": {"executed_lines": [1, 3, 4, 5, 7, 8, 9, 11, 12, 13, 18, 19, 20, 24, 30, 69, 82, 83, 85, 86, 88, 92, 93, 95, 110, 111, 112, 113, 115, 116, 121, 122, 124, 126, 134, 136, 139, 141, 146, 148, 151, 153, 155, 158, 159, 161, 162, 163, 165, 166, 167, 177, 178, 179, 181, 182, 190, 200, 209, 210, 222, 223, 227, 239, 250, 251, 252, 253, 256, 261, 264, 265, 266, 267, 268, 269, 270, 271, 273, 275, 276, 282, 286, 287, 289, 290, 292, 293, 294, 295, 297, 298, 299, 300, 302, 303, 304, 306, 307, 334, 335, 337, 340, 341, 342, 343, 345, 346, 347, 348, 349, 354, 355, 356, 357, 360, 361, 363, 364, 377, 382, 383, 385, 386, 393, 394, 396, 398, 399, 400, 401, 406, 407, 408, 409, 410, 411, 414, 415, 419, 423, 424, 425, 431, 435, 436, 437, 439, 440, 442, 443, 445, 446, 447, 448, 449, 451, 452, 453, 455, 457, 466, 467, 468, 469, 472, 475, 478, 479, 507, 508, 510, 511, 512, 514, 515, 516, 518, 519, 520, 521, 523, 524, 525, 527, 597, 627], "summary": {"covered_lines": 187, "num_statements": 271, "percent_covered": 65.14745308310992, "percent_covered_display": "65", "missing_lines": 84, "excluded_lines": 3, "percent_statements_covered": 69.00369003690037, "percent_statements_covered_display": "69", "num_branches": 102, "num_partial_branches": 14, "covered_branches": 56, "missing_branches": 46, "percent_branches_covered": 54.90196078431372, "percent_branches_covered_display": "55"}, "missing_lines": [180, 186, 350, 351, 352, 378, 402, 403, 404, 405, 412, 416, 417, 420, 421, 427, 444, 450, 567, 577, 578, 579, 582, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 595, 604, 605, 607, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 625, 636, 637, 638, 640, 641, 642, 643, 644, 646, 647, 648, 649, 650, 652, 653, 654, 655, 656, 658, 660, 661, 662, 663, 668, 670, 671, 673, 674, 676, 677, 678, 686, 688, 689], "excluded_lines": [26, 27, 528], "executed_branches": [[110, 111], [110, 112], [112, 113], [112, 115], [115, 116], [115, 121], [161, 162], [161, 209], [165, 161], [165, 166], [166, 167], [166, 177], [177, 178], [177, 179], [179, 181], [181, 182], [209, 210], [209, 222], [264, 265], [264, 266], [266, 267], [266, 269], [269, 270], [289, 290], [289, 303], [292, 289], [292, 293], [297, 298], [297, 302], [340, 341], [340, 360], [345, 346], [345, 349], [349, 354], [377, 382], [398, 399], [398, 401], [401, 406], [406, 407], [408, 409], [408, 411], [415, 419], [419, 423], [423, 424], [436, 437], [436, 439], [443, 445], [445, 446], [447, 448], [447, 449], [449, 451], [451, 452], [452, 453], [452, 455], [468, 469], [468, 475]], "missing_branches": [[179, 180], [181, 186], [269, 273], [349, 350], [377, 378], [401, 402], [402, 403], [402, 405], [406, 412], [415, 416], [419, 420], [423, 427], [443, 444], [445, 447], [449, 450], [451, 455], [577, 578], [577, 579], [579, 582], [579, 584], [585, 586], [585, 588], [588, 589], [588, 591], [591, 592], [591, 595], [612, 613], [612, 616], [614, 615], [614, 616], [616, 617], [616, 620], [618, 619], [618, 620], [620, 621], [620, 625], [622, 623], [622, 625], [640, 641], [640, 646], [646, 647], [646, 652], [652, 653], [652, 658], [676, 677], [676, 686]], "functions": {"Recall.__init__": {"executed_lines": [82, 83, 85, 86], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 69, "executed_branches": [], "missing_branches": []}, "Recall.reset": {"executed_lines": [92, 93], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 88, "executed_branches": [], "missing_branches": []}, "Recall.update": {"executed_lines": [110, 111, 112, 113, 115, 116, 121, 122, 124], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 6, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 95, "executed_branches": [[110, 111], [110, 112], [112, 113], [112, 115], [115, 116], [115, 121]], "missing_branches": []}, "Recall.compute": {"executed_lines": [134, 136, 139, 141, 146, 148, 151, 153], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 126, "executed_branches": [], "missing_branches": []}, "Recall._compute": {"executed_lines": [158, 159, 161, 162, 163, 165, 166, 167, 177, 178, 179, 181, 182, 190, 200, 209, 210, 222, 223, 227], "summary": {"covered_lines": 20, "num_statements": 22, "percent_covered": 88.88888888888889, "percent_covered_display": "89", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 90.9090909090909, "percent_statements_covered_display": "91", "num_branches": 14, "num_partial_branches": 2, "covered_branches": 12, "missing_branches": 2, "percent_branches_covered": 85.71428571428571, "percent_branches_covered_display": "86"}, "missing_lines": [180, 186], "excluded_lines": [], "start_line": 155, "executed_branches": [[161, 162], [161, 209], [165, 161], [165, 166], [166, 167], [166, 177], [177, 178], [177, 179], [179, 181], [181, 182], [209, 210], [209, 222]], "missing_branches": [[179, 180], [181, 186]]}, "Recall._compute_recall_for_classes": {"executed_lines": [250, 251, 252, 253, 256, 261, 264, 265, 266, 267, 268, 269, 270, 271, 273], "summary": {"covered_lines": 15, "num_statements": 15, "percent_covered": 95.23809523809524, "percent_covered_display": "95", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 1, "covered_branches": 5, "missing_branches": 1, "percent_branches_covered": 83.33333333333333, "percent_branches_covered_display": "83"}, "missing_lines": [], "excluded_lines": [], "start_line": 239, "executed_branches": [[264, 265], [264, 266], [266, 267], [266, 269], [269, 270]], "missing_branches": [[269, 273]]}, "Recall._match_detection_batch": {"executed_lines": [282, 286, 287, 289, 290, 292, 293, 294, 295, 297, 298, 299, 300, 302, 303, 304], "summary": {"covered_lines": 16, "num_statements": 16, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 6, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 276, "executed_branches": [[289, 290], [289, 303], [292, 289], [292, 293], [297, 298], [297, 302]], "missing_branches": []}, "Recall._compute_confusion_matrix": {"executed_lines": [334, 335, 337, 340, 341, 342, 343, 345, 346, 347, 348, 349, 354, 355, 356, 357, 360, 361], "summary": {"covered_lines": 18, "num_statements": 21, "percent_covered": 85.18518518518519, "percent_covered_display": "85", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 85.71428571428571, "percent_statements_covered_display": "86", "num_branches": 6, "num_partial_branches": 1, "covered_branches": 5, "missing_branches": 1, "percent_branches_covered": 83.33333333333333, "percent_branches_covered_display": "83"}, "missing_lines": [350, 351, 352], "excluded_lines": [], "start_line": 307, "executed_branches": [[340, 341], [340, 360], [345, 346], [345, 349], [349, 354]], "missing_branches": [[349, 350]]}, "Recall._compute_recall": {"executed_lines": [377, 382, 383, 385, 386, 393, 394], "summary": {"covered_lines": 7, "num_statements": 8, "percent_covered": 80.0, "percent_covered_display": "80", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 87.5, "percent_statements_covered_display": "88", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [378], "excluded_lines": [], "start_line": 364, "executed_branches": [[377, 382]], "missing_branches": [[377, 378]]}, "Recall._detections_content": {"executed_lines": [398, 399, 400, 401, 406, 407, 408, 409, 410, 411], "summary": {"covered_lines": 10, "num_statements": 15, "percent_covered": 64.0, "percent_covered_display": "64", "missing_lines": 5, "excluded_lines": 0, "percent_statements_covered": 66.66666666666667, "percent_statements_covered_display": "67", "num_branches": 10, "num_partial_branches": 2, "covered_branches": 6, "missing_branches": 4, "percent_branches_covered": 60.0, "percent_branches_covered_display": "60"}, "missing_lines": [402, 403, 404, 405, 412], "excluded_lines": [], "start_line": 396, "executed_branches": [[398, 399], [398, 401], [401, 406], [406, 407], [408, 409], [408, 411]], "missing_branches": [[401, 402], [402, 403], [402, 405], [406, 412]]}, "Recall._make_empty_content": {"executed_lines": [415, 419, 423, 424, 425], "summary": {"covered_lines": 5, "num_statements": 10, "percent_covered": 50.0, "percent_covered_display": "50", "missing_lines": 5, "excluded_lines": 0, "percent_statements_covered": 50.0, "percent_statements_covered_display": "50", "num_branches": 6, "num_partial_branches": 3, "covered_branches": 3, "missing_branches": 3, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [416, 417, 420, 421, 427], "excluded_lines": [], "start_line": 414, "executed_branches": [[415, 419], [419, 423], [423, 424]], "missing_branches": [[415, 416], [419, 420], [423, 427]]}, "Recall._filter_detections_by_size": {"executed_lines": [435, 436, 437, 439, 440, 442, 443, 445, 446, 447, 448, 449, 451, 452, 453, 455], "summary": {"covered_lines": 16, "num_statements": 18, "percent_covered": 81.25, "percent_covered_display": "81", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 88.88888888888889, "percent_statements_covered_display": "89", "num_branches": 14, "num_partial_branches": 4, "covered_branches": 10, "missing_branches": 4, "percent_branches_covered": 71.42857142857143, "percent_branches_covered_display": "71"}, "missing_lines": [444, 450], "excluded_lines": [], "start_line": 431, "executed_branches": [[436, 437], [436, 439], [443, 445], [445, 446], [447, 448], [447, 449], [449, 451], [451, 452], [452, 453], [452, 455]], "missing_branches": [[443, 444], [445, 447], [449, 450], [451, 455]]}, "Recall._filter_predictions_and_targets_by_size": {"executed_lines": [466, 467, 468, 469, 472, 475], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 457, "executed_branches": [[468, 469], [468, 475]], "missing_branches": []}, "RecallResult.recall_at_50": {"executed_lines": [512], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 511, "executed_branches": [], "missing_branches": []}, "RecallResult.recall_at_75": {"executed_lines": [516], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 515, "executed_branches": [], "missing_branches": []}, "RecallResult.__str__": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 16, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 16, "excluded_lines": 1, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 10, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 10, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [567, 577, 578, 579, 582, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 595], "excluded_lines": [528], "start_line": 527, "executed_branches": [], "missing_branches": [[577, 578], [577, 579], [579, 582], [579, 584], [585, 586], [585, 588], [588, 589], [588, 591], [591, 592], [591, 595]]}, "RecallResult.to_pandas": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 16, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 16, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 12, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 12, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [604, 605, 607, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 625], "excluded_lines": [], "start_line": 597, "executed_branches": [], "missing_branches": [[612, 613], [612, 616], [614, 615], [614, 616], [616, 617], [616, 620], [618, 619], [618, 620], [620, 621], [620, 625], [622, 623], [622, 625]]}, "RecallResult.plot": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 34, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 34, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 8, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 8, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [636, 637, 638, 640, 641, 642, 643, 644, 646, 647, 648, 649, 650, 652, 653, 654, 655, 656, 658, 660, 661, 662, 663, 668, 670, 671, 673, 674, 676, 677, 678, 686, 688, 689], "excluded_lines": [], "start_line": 627, "executed_branches": [], "missing_branches": [[640, 641], [640, 646], [646, 647], [646, 652], [652, 653], [652, 658], [676, 677], [676, 686]]}, "": {"executed_lines": [1, 3, 4, 5, 7, 8, 9, 11, 12, 13, 18, 19, 20, 24, 30, 69, 88, 95, 126, 155, 239, 275, 276, 306, 307, 363, 364, 396, 414, 431, 457, 478, 479, 507, 508, 510, 511, 514, 515, 518, 519, 520, 521, 523, 524, 525, 527, 597, 627], "summary": {"covered_lines": 49, "num_statements": 49, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 2, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [26, 27], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"Recall": {"executed_lines": [82, 83, 85, 86, 92, 93, 110, 111, 112, 113, 115, 116, 121, 122, 124, 134, 136, 139, 141, 146, 148, 151, 153, 158, 159, 161, 162, 163, 165, 166, 167, 177, 178, 179, 181, 182, 190, 200, 209, 210, 222, 223, 227, 250, 251, 252, 253, 256, 261, 264, 265, 266, 267, 268, 269, 270, 271, 273, 282, 286, 287, 289, 290, 292, 293, 294, 295, 297, 298, 299, 300, 302, 303, 304, 334, 335, 337, 340, 341, 342, 343, 345, 346, 347, 348, 349, 354, 355, 356, 357, 360, 361, 377, 382, 383, 385, 386, 393, 394, 398, 399, 400, 401, 406, 407, 408, 409, 410, 411, 415, 419, 423, 424, 425, 435, 436, 437, 439, 440, 442, 443, 445, 446, 447, 448, 449, 451, 452, 453, 455, 466, 467, 468, 469, 472, 475], "summary": {"covered_lines": 136, "num_statements": 154, "percent_covered": 84.95575221238938, "percent_covered_display": "85", "missing_lines": 18, "excluded_lines": 0, "percent_statements_covered": 88.31168831168831, "percent_statements_covered_display": "88", "num_branches": 72, "num_partial_branches": 14, "covered_branches": 56, "missing_branches": 16, "percent_branches_covered": 77.77777777777777, "percent_branches_covered_display": "78"}, "missing_lines": [180, 186, 350, 351, 352, 378, 402, 403, 404, 405, 412, 416, 417, 420, 421, 427, 444, 450], "excluded_lines": [], "start_line": 30, "executed_branches": [[110, 111], [110, 112], [112, 113], [112, 115], [115, 116], [115, 121], [161, 162], [161, 209], [165, 161], [165, 166], [166, 167], [166, 177], [177, 178], [177, 179], [179, 181], [181, 182], [209, 210], [209, 222], [264, 265], [264, 266], [266, 267], [266, 269], [269, 270], [289, 290], [289, 303], [292, 289], [292, 293], [297, 298], [297, 302], [340, 341], [340, 360], [345, 346], [345, 349], [349, 354], [377, 382], [398, 399], [398, 401], [401, 406], [406, 407], [408, 409], [408, 411], [415, 419], [419, 423], [423, 424], [436, 437], [436, 439], [443, 445], [445, 446], [447, 448], [447, 449], [449, 451], [451, 452], [452, 453], [452, 455], [468, 469], [468, 475]], "missing_branches": [[179, 180], [181, 186], [269, 273], [349, 350], [377, 378], [401, 402], [402, 403], [402, 405], [406, 412], [415, 416], [419, 420], [423, 427], [443, 444], [445, 447], [449, 450], [451, 455]]}, "RecallResult": {"executed_lines": [512, 516], "summary": {"covered_lines": 2, "num_statements": 68, "percent_covered": 2.0408163265306123, "percent_covered_display": "2", "missing_lines": 66, "excluded_lines": 1, "percent_statements_covered": 2.9411764705882355, "percent_statements_covered_display": "3", "num_branches": 30, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 30, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [567, 577, 578, 579, 582, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 595, 604, 605, 607, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 625, 636, 637, 638, 640, 641, 642, 643, 644, 646, 647, 648, 649, 650, 652, 653, 654, 655, 656, 658, 660, 661, 662, 663, 668, 670, 671, 673, 674, 676, 677, 678, 686, 688, 689], "excluded_lines": [528], "start_line": 479, "executed_branches": [], "missing_branches": [[577, 578], [577, 579], [579, 582], [579, 584], [585, 586], [585, 588], [588, 589], [588, 591], [591, 592], [591, 595], [612, 613], [612, 616], [614, 615], [614, 616], [616, 617], [616, 620], [618, 619], [618, 620], [620, 621], [620, 625], [622, 623], [622, 625], [640, 641], [640, 646], [646, 647], [646, 652], [652, 653], [652, 658], [676, 677], [676, 686]]}, "": {"executed_lines": [1, 3, 4, 5, 7, 8, 9, 11, 12, 13, 18, 19, 20, 24, 30, 69, 88, 95, 126, 155, 239, 275, 276, 306, 307, 363, 364, 396, 414, 431, 457, 478, 479, 507, 508, 510, 511, 514, 515, 518, 519, 520, 521, 523, 524, 525, 527, 597, 627], "summary": {"covered_lines": 49, "num_statements": 49, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 2, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [26, 27], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "src\\supervision\\metrics\\utils\\__init__.py": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "src\\supervision\\metrics\\utils\\object_size.py": {"executed_lines": [1, 3, 4, 6, 7, 9, 10, 11, 16, 19, 40, 41, 42, 43, 46, 85, 111, 114, 115, 116, 118, 119, 120, 121, 122, 123, 126, 168, 193, 197, 198, 199, 200, 201, 206, 207, 208, 209, 210, 211, 214, 229, 230, 231, 235, 236, 238], "summary": {"covered_lines": 47, "num_statements": 72, "percent_covered": 56.25, "percent_covered_display": "56", "missing_lines": 25, "excluded_lines": 2, "percent_statements_covered": 65.27777777777777, "percent_statements_covered_display": "65", "num_branches": 24, "num_partial_branches": 5, "covered_branches": 7, "missing_branches": 17, "percent_branches_covered": 29.166666666666668, "percent_branches_covered_display": "29"}, "missing_lines": [76, 77, 78, 79, 80, 81, 82, 112, 153, 154, 156, 157, 158, 160, 161, 162, 163, 164, 165, 194, 232, 233, 234, 237, 241], "excluded_lines": [13, 14], "executed_branches": [[111, 114], [193, 197], [229, 230], [229, 231], [231, 235], [235, 236], [236, 238]], "missing_branches": [[76, 77], [76, 78], [78, 79], [78, 80], [80, 81], [80, 82], [111, 112], [153, 154], [153, 156], [156, 157], [156, 158], [193, 194], [231, 232], [232, 233], [232, 234], [235, 241], [236, 237]], "functions": {"get_object_size_category": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 7, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 7, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 6, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [76, 77, 78, 79, 80, 81, 82], "excluded_lines": [], "start_line": 46, "executed_branches": [], "missing_branches": [[76, 77], [76, 78], [78, 79], [78, 80], [80, 81], [80, 82]]}, "get_bbox_size_category": {"executed_lines": [111, 114, 115, 116, 118, 119, 120, 121, 122, 123], "summary": {"covered_lines": 10, "num_statements": 11, "percent_covered": 84.61538461538461, "percent_covered_display": "85", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 90.9090909090909, "percent_statements_covered_display": "91", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [112], "excluded_lines": [], "start_line": 85, "executed_branches": [[111, 114]], "missing_branches": [[111, 112]]}, "get_mask_size_category": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 11, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 11, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 4, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [153, 154, 156, 157, 158, 160, 161, 162, 163, 164, 165], "excluded_lines": [], "start_line": 126, "executed_branches": [], "missing_branches": [[153, 154], [153, 156], [156, 157], [156, 158]]}, "get_obb_size_category": {"executed_lines": [193, 197, 198, 199, 200, 201, 206, 207, 208, 209, 210, 211], "summary": {"covered_lines": 12, "num_statements": 13, "percent_covered": 86.66666666666667, "percent_covered_display": "87", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 92.3076923076923, "percent_statements_covered_display": "92", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [194], "excluded_lines": [], "start_line": 168, "executed_branches": [[193, 197]], "missing_branches": [[193, 194]]}, "get_detection_size_category": {"executed_lines": [229, 230, 231, 235, 236, 238], "summary": {"covered_lines": 6, "num_statements": 11, "percent_covered": 52.38095238095238, "percent_covered_display": "52", "missing_lines": 5, "excluded_lines": 0, "percent_statements_covered": 54.54545454545455, "percent_statements_covered_display": "55", "num_branches": 10, "num_partial_branches": 3, "covered_branches": 5, "missing_branches": 5, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [232, 233, 234, 237, 241], "excluded_lines": [], "start_line": 214, "executed_branches": [[229, 230], [229, 231], [231, 235], [235, 236], [236, 238]], "missing_branches": [[231, 232], [232, 233], [232, 234], [235, 241], [236, 237]]}, "": {"executed_lines": [1, 3, 4, 6, 7, 9, 10, 11, 16, 19, 40, 41, 42, 43, 46, 85, 126, 168, 214], "summary": {"covered_lines": 19, "num_statements": 19, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 2, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [13, 14], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"ObjectSizeCategory": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 19, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 6, 7, 9, 10, 11, 16, 19, 40, 41, 42, 43, 46, 85, 111, 114, 115, 116, 118, 119, 120, 121, 122, 123, 126, 168, 193, 197, 198, 199, 200, 201, 206, 207, 208, 209, 210, 211, 214, 229, 230, 231, 235, 236, 238], "summary": {"covered_lines": 47, "num_statements": 72, "percent_covered": 56.25, "percent_covered_display": "56", "missing_lines": 25, "excluded_lines": 2, "percent_statements_covered": 65.27777777777777, "percent_statements_covered_display": "65", "num_branches": 24, "num_partial_branches": 5, "covered_branches": 7, "missing_branches": 17, "percent_branches_covered": 29.166666666666668, "percent_branches_covered_display": "29"}, "missing_lines": [76, 77, 78, 79, 80, 81, 82, 112, 153, 154, 156, 157, 158, 160, 161, 162, 163, 164, 165, 194, 232, 233, 234, 237, 241], "excluded_lines": [13, 14], "start_line": 1, "executed_branches": [[111, 114], [193, 197], [229, 230], [229, 231], [231, 235], [235, 236], [236, 238]], "missing_branches": [[76, 77], [76, 78], [78, 79], [78, 80], [80, 81], [80, 82], [111, 112], [153, 154], [153, 156], [156, 157], [156, 158], [193, 194], [231, 232], [232, 233], [232, 234], [235, 241], [236, 237]]}}}, "src\\supervision\\metrics\\utils\\utils.py": {"executed_lines": [1], "summary": {"covered_lines": 1, "num_statements": 5, "percent_covered": 20.0, "percent_covered_display": "20", "missing_lines": 4, "excluded_lines": 0, "percent_statements_covered": 20.0, "percent_statements_covered_display": "20", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [2, 3, 4, 5], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"ensure_pandas_installed": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 4, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 4, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [2, 3, 4, 5], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1], "summary": {"covered_lines": 1, "num_statements": 5, "percent_covered": 20.0, "percent_covered_display": "20", "missing_lines": 4, "excluded_lines": 0, "percent_statements_covered": 20.0, "percent_statements_covered_display": "20", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [2, 3, 4, 5], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "src\\supervision\\tracker\\__init__.py": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "src\\supervision\\tracker\\byte_tracker\\__init__.py": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "src\\supervision\\tracker\\byte_tracker\\core.py": {"executed_lines": [1, 3, 5, 6, 7, 9, 10, 11, 12, 13, 14, 17, 22, 56, 64, 65, 67, 68, 69, 70, 71, 72, 74, 75, 76, 80, 81, 83, 122, 125, 131, 133, 134, 135, 137, 139, 141, 142, 143, 144, 148, 149, 157, 173, 183, 184, 185, 186, 187, 189, 190, 192, 193, 194, 196, 197, 198, 199, 200, 202, 203, 204, 218, 219, 220, 222, 223, 224, 226, 228, 229, 231, 232, 234, 235, 239, 240, 241, 242, 243, 244, 249, 251, 265, 266, 271, 272, 275, 285, 291, 292, 293, 295, 296, 299, 300, 301, 302, 303, 304, 305, 307, 308, 309, 310, 312, 313, 314, 315, 320, 323, 324, 325, 326, 327, 328, 329, 332, 334, 337, 352, 353, 355, 356, 357, 358, 360, 363, 374, 375, 377, 378, 380, 383, 386, 387, 389, 390, 398, 401, 405], "summary": {"covered_lines": 141, "num_statements": 176, "percent_covered": 76.33928571428571, "percent_covered_display": "76", "missing_lines": 35, "excluded_lines": 0, "percent_statements_covered": 80.11363636363636, "percent_statements_covered_display": "80", "num_branches": 48, "num_partial_branches": 10, "covered_branches": 30, "missing_branches": 18, "percent_branches_covered": 62.5, "percent_branches_covered_display": "62"}, "missing_lines": [123, 152, 153, 155, 166, 167, 168, 169, 170, 171, 216, 246, 247, 252, 253, 276, 277, 278, 279, 280, 282, 283, 286, 287, 288, 289, 311, 316, 317, 318, 391, 392, 393, 394, 396], "excluded_lines": [], "executed_branches": [[122, 125], [133, 134], [143, 144], [143, 148], [202, 203], [222, 223], [222, 228], [223, 224], [223, 226], [239, 240], [239, 249], [242, 243], [251, 265], [275, 285], [285, 291], [299, 300], [299, 302], [302, 303], [302, 307], [308, 309], [308, 314], [310, 312], [315, 320], [355, 356], [355, 360], [356, 355], [356, 357], [377, 378], [377, 380], [390, 398]], "missing_branches": [[122, 123], [133, 152], [202, 216], [242, 246], [251, 252], [275, 276], [278, 279], [278, 282], [285, 286], [287, 285], [287, 288], [310, 311], [315, 316], [316, 315], [316, 317], [390, 391], [393, 394], [393, 396]], "functions": {"ByteTrack.__init__": {"executed_lines": [64, 65, 67, 68, 69, 70, 71, 72, 74, 75, 76, 80, 81], "summary": {"covered_lines": 13, "num_statements": 13, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 56, "executed_branches": [], "missing_branches": []}, "ByteTrack.update_with_detections": {"executed_lines": [122, 125, 131, 133, 134, 135, 137, 139, 141, 142, 143, 144, 148, 149], "summary": {"covered_lines": 14, "num_statements": 18, "percent_covered": 75.0, "percent_covered_display": "75", "missing_lines": 4, "excluded_lines": 0, "percent_statements_covered": 77.77777777777777, "percent_statements_covered_display": "78", "num_branches": 6, "num_partial_branches": 2, "covered_branches": 4, "missing_branches": 2, "percent_branches_covered": 66.66666666666667, "percent_branches_covered_display": "67"}, "missing_lines": [123, 152, 153, 155], "excluded_lines": [], "start_line": 83, "executed_branches": [[122, 125], [133, 134], [143, 144], [143, 148]], "missing_branches": [[122, 123], [133, 152]]}, "ByteTrack.reset": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 6, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 6, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [166, 167, 168, 169, 170, 171], "excluded_lines": [], "start_line": 157, "executed_branches": [], "missing_branches": []}, "ByteTrack.update_with_tensors": {"executed_lines": [183, 184, 185, 186, 187, 189, 190, 192, 193, 194, 196, 197, 198, 199, 200, 202, 203, 204, 218, 219, 220, 222, 223, 224, 226, 228, 229, 231, 232, 234, 235, 239, 240, 241, 242, 243, 244, 249, 251, 265, 266, 271, 272, 275, 285, 291, 292, 293, 295, 296, 299, 300, 301, 302, 303, 304, 305, 307, 308, 309, 310, 312, 313, 314, 315, 320, 323, 324, 325, 326, 327, 328, 329, 332, 334], "summary": {"covered_lines": 75, "num_statements": 95, "percent_covered": 74.01574803149606, "percent_covered_display": "74", "missing_lines": 20, "excluded_lines": 0, "percent_statements_covered": 78.94736842105263, "percent_statements_covered_display": "79", "num_branches": 32, "num_partial_branches": 7, "covered_branches": 19, "missing_branches": 13, "percent_branches_covered": 59.375, "percent_branches_covered_display": "59"}, "missing_lines": [216, 246, 247, 252, 253, 276, 277, 278, 279, 280, 282, 283, 286, 287, 288, 289, 311, 316, 317, 318], "excluded_lines": [], "start_line": 173, "executed_branches": [[202, 203], [222, 223], [222, 228], [223, 224], [223, 226], [239, 240], [239, 249], [242, 243], [251, 265], [275, 285], [285, 291], [299, 300], [299, 302], [302, 303], [302, 307], [308, 309], [308, 314], [310, 312], [315, 320]], "missing_branches": [[202, 216], [242, 246], [251, 252], [275, 276], [278, 279], [278, 282], [285, 286], [287, 285], [287, 288], [310, 311], [315, 316], [316, 315], [316, 317]]}, "joint_tracks": {"executed_lines": [352, 353, 355, 356, 357, 358, 360], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 337, "executed_branches": [[355, 356], [355, 360], [356, 355], [356, 357]], "missing_branches": []}, "sub_tracks": {"executed_lines": [374, 375, 377, 378, 380], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 363, "executed_branches": [[377, 378], [377, 380]], "missing_branches": []}, "remove_duplicate_tracks": {"executed_lines": [386, 387, 389, 390, 398, 401, 405], "summary": {"covered_lines": 7, "num_statements": 12, "percent_covered": 50.0, "percent_covered_display": "50", "missing_lines": 5, "excluded_lines": 0, "percent_statements_covered": 58.333333333333336, "percent_statements_covered_display": "58", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 3, "percent_branches_covered": 25.0, "percent_branches_covered_display": "25"}, "missing_lines": [391, 392, 393, 394, 396], "excluded_lines": [], "start_line": 383, "executed_branches": [[390, 398]], "missing_branches": [[390, 391], [393, 394], [393, 396]]}, "": {"executed_lines": [1, 3, 5, 6, 7, 9, 10, 11, 12, 13, 14, 17, 22, 56, 83, 157, 173, 337, 363, 383], "summary": {"covered_lines": 20, "num_statements": 20, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"ByteTrack": {"executed_lines": [64, 65, 67, 68, 69, 70, 71, 72, 74, 75, 76, 80, 81, 122, 125, 131, 133, 134, 135, 137, 139, 141, 142, 143, 144, 148, 149, 183, 184, 185, 186, 187, 189, 190, 192, 193, 194, 196, 197, 198, 199, 200, 202, 203, 204, 218, 219, 220, 222, 223, 224, 226, 228, 229, 231, 232, 234, 235, 239, 240, 241, 242, 243, 244, 249, 251, 265, 266, 271, 272, 275, 285, 291, 292, 293, 295, 296, 299, 300, 301, 302, 303, 304, 305, 307, 308, 309, 310, 312, 313, 314, 315, 320, 323, 324, 325, 326, 327, 328, 329, 332, 334], "summary": {"covered_lines": 102, "num_statements": 132, "percent_covered": 73.52941176470588, "percent_covered_display": "74", "missing_lines": 30, "excluded_lines": 0, "percent_statements_covered": 77.27272727272727, "percent_statements_covered_display": "77", "num_branches": 38, "num_partial_branches": 9, "covered_branches": 23, "missing_branches": 15, "percent_branches_covered": 60.526315789473685, "percent_branches_covered_display": "61"}, "missing_lines": [123, 152, 153, 155, 166, 167, 168, 169, 170, 171, 216, 246, 247, 252, 253, 276, 277, 278, 279, 280, 282, 283, 286, 287, 288, 289, 311, 316, 317, 318], "excluded_lines": [], "start_line": 22, "executed_branches": [[122, 125], [133, 134], [143, 144], [143, 148], [202, 203], [222, 223], [222, 228], [223, 224], [223, 226], [239, 240], [239, 249], [242, 243], [251, 265], [275, 285], [285, 291], [299, 300], [299, 302], [302, 303], [302, 307], [308, 309], [308, 314], [310, 312], [315, 320]], "missing_branches": [[122, 123], [133, 152], [202, 216], [242, 246], [251, 252], [275, 276], [278, 279], [278, 282], [285, 286], [287, 285], [287, 288], [310, 311], [315, 316], [316, 315], [316, 317]]}, "": {"executed_lines": [1, 3, 5, 6, 7, 9, 10, 11, 12, 13, 14, 17, 22, 56, 83, 157, 173, 337, 352, 353, 355, 356, 357, 358, 360, 363, 374, 375, 377, 378, 380, 383, 386, 387, 389, 390, 398, 401, 405], "summary": {"covered_lines": 39, "num_statements": 44, "percent_covered": 85.18518518518519, "percent_covered_display": "85", "missing_lines": 5, "excluded_lines": 0, "percent_statements_covered": 88.63636363636364, "percent_statements_covered_display": "89", "num_branches": 10, "num_partial_branches": 1, "covered_branches": 7, "missing_branches": 3, "percent_branches_covered": 70.0, "percent_branches_covered_display": "70"}, "missing_lines": [391, 392, 393, 394, 396], "excluded_lines": [], "start_line": 1, "executed_branches": [[355, 356], [355, 360], [356, 355], [356, 357], [377, 378], [377, 380], [390, 398]], "missing_branches": [[390, 391], [393, 394], [393, 396]]}}}, "src\\supervision\\tracker\\byte_tracker\\kalman_filter.py": {"executed_lines": [1, 3, 4, 5, 8, 21, 22, 24, 25, 26, 27, 29, 30, 32, 44, 45, 46, 48, 58, 59, 61, 96, 109, 115, 117, 118, 121, 123, 135, 141, 147, 149, 150, 151, 152, 154, 155, 156, 158, 160, 177, 179, 182, 187, 189, 190, 193], "summary": {"covered_lines": 47, "num_statements": 53, "percent_covered": 89.47368421052632, "percent_covered_display": "89", "missing_lines": 6, "excluded_lines": 0, "percent_statements_covered": 88.67924528301887, "percent_statements_covered_display": "89", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [74, 80, 86, 88, 89, 94], "excluded_lines": [], "executed_branches": [[25, 26], [25, 27], [150, 151], [150, 152]], "missing_branches": [], "functions": {"KalmanFilter.__init__": {"executed_lines": [22, 24, 25, 26, 27, 29, 30], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 21, "executed_branches": [[25, 26], [25, 27]], "missing_branches": []}, "KalmanFilter.initiate": {"executed_lines": [44, 45, 46, 48, 58, 59], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 32, "executed_branches": [], "missing_branches": []}, "KalmanFilter.predict": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 6, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 6, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [74, 80, 86, 88, 89, 94], "excluded_lines": [], "start_line": 61, "executed_branches": [], "missing_branches": []}, "KalmanFilter.project": {"executed_lines": [109, 115, 117, 118, 121], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 96, "executed_branches": [], "missing_branches": []}, "KalmanFilter.multi_predict": {"executed_lines": [135, 141, 147, 149, 150, 151, 152, 154, 155, 156, 158], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 123, "executed_branches": [[150, 151], [150, 152]], "missing_branches": []}, "KalmanFilter.update": {"executed_lines": [177, 179, 182, 187, 189, 190, 193], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 160, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 5, 8, 21, 32, 61, 96, 123, 160], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"KalmanFilter": {"executed_lines": [22, 24, 25, 26, 27, 29, 30, 44, 45, 46, 48, 58, 59, 109, 115, 117, 118, 121, 135, 141, 147, 149, 150, 151, 152, 154, 155, 156, 158, 177, 179, 182, 187, 189, 190, 193], "summary": {"covered_lines": 36, "num_statements": 42, "percent_covered": 86.95652173913044, "percent_covered_display": "87", "missing_lines": 6, "excluded_lines": 0, "percent_statements_covered": 85.71428571428571, "percent_statements_covered_display": "86", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [74, 80, 86, 88, 89, 94], "excluded_lines": [], "start_line": 8, "executed_branches": [[25, 26], [25, 27], [150, 151], [150, 152]], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 5, 8, 21, 32, 61, 96, 123, 160], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "src\\supervision\\tracker\\byte_tracker\\matching.py": {"executed_lines": [1, 3, 5, 6, 7, 9, 15, 18, 19, 21, 22, 23, 24, 27, 30, 31, 37, 38, 39, 41, 44, 48, 54, 55, 57, 58, 59, 60, 62, 65, 68, 69, 70, 71, 72, 73, 74, 75], "summary": {"covered_lines": 38, "num_statements": 40, "percent_covered": 93.75, "percent_covered_display": "94", "missing_lines": 2, "excluded_lines": 2, "percent_statements_covered": 95.0, "percent_statements_covered_display": "95", "num_branches": 8, "num_partial_branches": 1, "covered_branches": 7, "missing_branches": 1, "percent_branches_covered": 87.5, "percent_branches_covered_display": "88"}, "missing_lines": [51, 52], "excluded_lines": [11, 12], "executed_branches": [[30, 31], [30, 37], [48, 54], [58, 59], [58, 60], [68, 69], [68, 70]], "missing_branches": [[48, 51]], "functions": {"indices_to_matches": {"executed_lines": [18, 19, 21, 22, 23, 24], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 15, "executed_branches": [], "missing_branches": []}, "linear_assignment": {"executed_lines": [30, 31, 37, 38, 39, 41], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 27, "executed_branches": [[30, 31], [30, 37]], "missing_branches": []}, "iou_distance": {"executed_lines": [48, 54, 55, 57, 58, 59, 60, 62], "summary": {"covered_lines": 8, "num_statements": 10, "percent_covered": 78.57142857142857, "percent_covered_display": "79", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 80.0, "percent_statements_covered_display": "80", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [51, 52], "excluded_lines": [], "start_line": 44, "executed_branches": [[48, 54], [58, 59], [58, 60]], "missing_branches": [[48, 51]]}, "fuse_score": {"executed_lines": [68, 69, 70, 71, 72, 73, 74, 75], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 65, "executed_branches": [[68, 69], [68, 70]], "missing_branches": []}, "": {"executed_lines": [1, 3, 5, 6, 7, 9, 15, 27, 44, 65], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 2, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [11, 12], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 3, 5, 6, 7, 9, 15, 18, 19, 21, 22, 23, 24, 27, 30, 31, 37, 38, 39, 41, 44, 48, 54, 55, 57, 58, 59, 60, 62, 65, 68, 69, 70, 71, 72, 73, 74, 75], "summary": {"covered_lines": 38, "num_statements": 40, "percent_covered": 93.75, "percent_covered_display": "94", "missing_lines": 2, "excluded_lines": 2, "percent_statements_covered": 95.0, "percent_statements_covered_display": "95", "num_branches": 8, "num_partial_branches": 1, "covered_branches": 7, "missing_branches": 1, "percent_branches_covered": 87.5, "percent_branches_covered_display": "88"}, "missing_lines": [51, 52], "excluded_lines": [11, 12], "start_line": 1, "executed_branches": [[30, 31], [30, 37], [48, 54], [58, 59], [58, 60], [68, 69], [68, 70]], "missing_branches": [[48, 51]]}}}, "src\\supervision\\tracker\\byte_tracker\\single_object_track.py": {"executed_lines": [1, 3, 5, 6, 8, 9, 12, 13, 14, 15, 16, 19, 20, 29, 30, 31, 32, 34, 35, 36, 37, 38, 39, 41, 42, 44, 46, 47, 48, 49, 51, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 75, 78, 79, 80, 82, 84, 85, 86, 90, 91, 92, 93, 94, 95, 97, 98, 100, 113, 121, 122, 123, 124, 125, 127, 128, 131, 132, 133, 134, 135, 137, 139, 140, 144, 145, 146, 147, 148, 149, 151, 152, 156, 157, 158, 160, 161, 165, 166, 167, 168, 170, 173, 174, 175, 176, 177, 179, 180, 185], "summary": {"covered_lines": 101, "num_statements": 122, "percent_covered": 82.3943661971831, "percent_covered_display": "82", "missing_lines": 21, "excluded_lines": 0, "percent_statements_covered": 82.78688524590164, "percent_statements_covered_display": "83", "num_branches": 20, "num_partial_branches": 2, "covered_branches": 16, "missing_branches": 4, "percent_branches_covered": 80.0, "percent_branches_covered_display": "80"}, "missing_lines": [52, 53, 54, 55, 56, 57, 58, 73, 101, 102, 103, 104, 107, 108, 110, 111, 171, 181, 182, 183, 186], "excluded_lines": [], "executed_branches": [[64, -62], [64, 65], [67, 68], [67, 75], [72, 67], [78, -62], [78, 79], [92, 93], [92, 97], [94, 95], [132, 133], [132, 137], [134, 135], [134, 137], [144, 145], [144, 146]], "missing_branches": [[56, 57], [56, 58], [72, 73], [94, 97]], "functions": {"STrack.__init__": {"executed_lines": [29, 30, 31, 32, 34, 35, 36, 37, 38, 39, 41, 42, 44, 46, 47, 48, 49], "summary": {"covered_lines": 17, "num_statements": 17, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 20, "executed_branches": [], "missing_branches": []}, "STrack.predict": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 7, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 7, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 2, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [52, 53, 54, 55, 56, 57, 58], "excluded_lines": [], "start_line": 51, "executed_branches": [], "missing_branches": [[56, 57], [56, 58]]}, "STrack.multi_predict": {"executed_lines": [64, 65, 66, 67, 68, 69, 70, 71, 72, 75, 78, 79, 80], "summary": {"covered_lines": 13, "num_statements": 14, "percent_covered": 90.9090909090909, "percent_covered_display": "91", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 92.85714285714286, "percent_statements_covered_display": "93", "num_branches": 8, "num_partial_branches": 1, "covered_branches": 7, "missing_branches": 1, "percent_branches_covered": 87.5, "percent_branches_covered_display": "88"}, "missing_lines": [73], "excluded_lines": [], "start_line": 63, "executed_branches": [[64, -62], [64, 65], [67, 68], [67, 75], [72, 67], [78, -62], [78, 79]], "missing_branches": [[72, 73]]}, "STrack.activate": {"executed_lines": [84, 85, 86, 90, 91, 92, 93, 94, 95, 97, 98], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 93.33333333333333, "percent_covered_display": "93", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [], "excluded_lines": [], "start_line": 82, "executed_branches": [[92, 93], [92, 97], [94, 95]], "missing_branches": [[94, 97]]}, "STrack.re_activate": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 8, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 8, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [101, 102, 103, 104, 107, 108, 110, 111], "excluded_lines": [], "start_line": 100, "executed_branches": [], "missing_branches": []}, "STrack.update": {"executed_lines": [121, 122, 123, 124, 125, 127, 128, 131, 132, 133, 134, 135, 137], "summary": {"covered_lines": 13, "num_statements": 13, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 113, "executed_branches": [[132, 133], [132, 137], [134, 135], [134, 137]], "missing_branches": []}, "STrack.tlwh": {"executed_lines": [144, 145, 146, 147, 148, 149], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 140, "executed_branches": [[144, 145], [144, 146]], "missing_branches": []}, "STrack.tlbr": {"executed_lines": [156, 157, 158], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 152, "executed_branches": [], "missing_branches": []}, "STrack.tlwh_to_xyah": {"executed_lines": [165, 166, 167, 168], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 161, "executed_branches": [], "missing_branches": []}, "STrack.to_xyah": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [171], "excluded_lines": [], "start_line": 170, "executed_branches": [], "missing_branches": []}, "STrack.tlbr_to_tlwh": {"executed_lines": [175, 176, 177], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 174, "executed_branches": [], "missing_branches": []}, "STrack.tlwh_to_tlbr": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 3, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [181, 182, 183], "excluded_lines": [], "start_line": 180, "executed_branches": [], "missing_branches": []}, "STrack.__repr__": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [186], "excluded_lines": [], "start_line": 185, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 5, 6, 8, 9, 12, 13, 14, 15, 16, 19, 20, 51, 62, 63, 82, 100, 113, 139, 140, 151, 152, 160, 161, 170, 173, 174, 179, 180, 185], "summary": {"covered_lines": 31, "num_statements": 31, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"TrackState": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 12, "executed_branches": [], "missing_branches": []}, "STrack": {"executed_lines": [29, 30, 31, 32, 34, 35, 36, 37, 38, 39, 41, 42, 44, 46, 47, 48, 49, 64, 65, 66, 67, 68, 69, 70, 71, 72, 75, 78, 79, 80, 84, 85, 86, 90, 91, 92, 93, 94, 95, 97, 98, 121, 122, 123, 124, 125, 127, 128, 131, 132, 133, 134, 135, 137, 144, 145, 146, 147, 148, 149, 156, 157, 158, 165, 166, 167, 168, 175, 176, 177], "summary": {"covered_lines": 70, "num_statements": 91, "percent_covered": 77.47747747747748, "percent_covered_display": "77", "missing_lines": 21, "excluded_lines": 0, "percent_statements_covered": 76.92307692307692, "percent_statements_covered_display": "77", "num_branches": 20, "num_partial_branches": 2, "covered_branches": 16, "missing_branches": 4, "percent_branches_covered": 80.0, "percent_branches_covered_display": "80"}, "missing_lines": [52, 53, 54, 55, 56, 57, 58, 73, 101, 102, 103, 104, 107, 108, 110, 111, 171, 181, 182, 183, 186], "excluded_lines": [], "start_line": 19, "executed_branches": [[64, -62], [64, 65], [67, 68], [67, 75], [72, 67], [78, -62], [78, 79], [92, 93], [92, 97], [94, 95], [132, 133], [132, 137], [134, 135], [134, 137], [144, 145], [144, 146]], "missing_branches": [[56, 57], [56, 58], [72, 73], [94, 97]]}, "": {"executed_lines": [1, 3, 5, 6, 8, 9, 12, 13, 14, 15, 16, 19, 20, 51, 62, 63, 82, 100, 113, 139, 140, 151, 152, 160, 161, 170, 173, 174, 179, 180, 185], "summary": {"covered_lines": 31, "num_statements": 31, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "src\\supervision\\tracker\\byte_tracker\\utils.py": {"executed_lines": [1, 4, 5, 15, 16, 18, 20, 22, 24, 31, 32, 33, 35, 36, 37], "summary": {"covered_lines": 15, "num_statements": 16, "percent_covered": 88.88888888888889, "percent_covered_display": "89", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 93.75, "percent_statements_covered_display": "94", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [17], "excluded_lines": [], "executed_branches": [[16, 18]], "missing_branches": [[16, 17]], "functions": {"IdCounter.__init__": {"executed_lines": [15, 16, 18], "summary": {"covered_lines": 3, "num_statements": 4, "percent_covered": 66.66666666666667, "percent_covered_display": "67", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 75.0, "percent_statements_covered_display": "75", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [17], "excluded_lines": [], "start_line": 5, "executed_branches": [[16, 18]], "missing_branches": [[16, 17]]}, "IdCounter.reset": {"executed_lines": [22], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 20, "executed_branches": [], "missing_branches": []}, "IdCounter.new_id": {"executed_lines": [31, 32, 33], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 24, "executed_branches": [], "missing_branches": []}, "IdCounter.NO_ID": {"executed_lines": [37], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 36, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 4, 5, 20, 24, 35, 36], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"IdCounter": {"executed_lines": [15, 16, 18, 22, 31, 32, 33, 37], "summary": {"covered_lines": 8, "num_statements": 9, "percent_covered": 81.81818181818181, "percent_covered_display": "82", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 88.88888888888889, "percent_statements_covered_display": "89", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [17], "excluded_lines": [], "start_line": 4, "executed_branches": [[16, 18]], "missing_branches": [[16, 17]]}, "": {"executed_lines": [1, 4, 5, 20, 24, 35, 36], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "src\\supervision\\utils\\__init__.py": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "src\\supervision\\utils\\conversion.py": {"executed_lines": [1, 2, 3, 5, 6, 7, 8, 9, 11, 13, 16, 27, 28, 29, 30, 40, 43, 48, 54, 64, 65, 66, 67, 69, 70, 71, 72, 76, 79, 89, 90, 91, 92, 93, 94, 95, 102, 105, 110, 116, 121, 127, 140, 141, 142, 143, 144, 145, 148, 159, 160, 163, 166, 177, 178], "summary": {"covered_lines": 55, "num_statements": 68, "percent_covered": 76.19047619047619, "percent_covered_display": "76", "missing_lines": 13, "excluded_lines": 0, "percent_statements_covered": 80.88235294117646, "percent_statements_covered_display": "81", "num_branches": 16, "num_partial_branches": 3, "covered_branches": 9, "missing_branches": 7, "percent_branches_covered": 56.25, "percent_branches_covered_display": "56"}, "missing_lines": [32, 33, 34, 35, 36, 38, 51, 74, 97, 98, 100, 113, 124], "excluded_lines": [], "executed_branches": [[29, 30], [66, 67], [66, 69], [69, 70], [91, 92], [141, 142], [141, 145], [142, 143], [142, 144]], "missing_branches": [[29, 32], [32, 33], [32, 38], [69, 74], [91, 97], [97, 98], [97, 100]], "functions": {"ensure_cv2_image_for_class_method": {"executed_lines": [27, 28, 40], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 16, "executed_branches": [], "missing_branches": []}, "ensure_cv2_image_for_class_method.wrapper": {"executed_lines": [29, 30], "summary": {"covered_lines": 2, "num_statements": 8, "percent_covered": 25.0, "percent_covered_display": "25", "missing_lines": 6, "excluded_lines": 0, "percent_statements_covered": 25.0, "percent_statements_covered_display": "25", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 3, "percent_branches_covered": 25.0, "percent_branches_covered_display": "25"}, "missing_lines": [32, 33, 34, 35, 36, 38], "excluded_lines": [], "start_line": 28, "executed_branches": [[29, 30]], "missing_branches": [[29, 32], [32, 33], [32, 38]]}, "ensure_cv2_image_for_annotation": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [51], "excluded_lines": [], "start_line": 48, "executed_branches": [], "missing_branches": []}, "ensure_cv2_image_for_standalone_function": {"executed_lines": [64, 65, 76], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 54, "executed_branches": [], "missing_branches": []}, "ensure_cv2_image_for_standalone_function.wrapper": {"executed_lines": [66, 67, 69, 70, 71, 72], "summary": {"covered_lines": 6, "num_statements": 7, "percent_covered": 81.81818181818181, "percent_covered_display": "82", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 85.71428571428571, "percent_statements_covered_display": "86", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [74], "excluded_lines": [], "start_line": 65, "executed_branches": [[66, 67], [66, 69], [69, 70]], "missing_branches": [[69, 74]]}, "ensure_pil_image_for_class_method": {"executed_lines": [89, 90, 102], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 79, "executed_branches": [], "missing_branches": []}, "ensure_pil_image_for_class_method.wrapper": {"executed_lines": [91, 92, 93, 94, 95], "summary": {"covered_lines": 5, "num_statements": 8, "percent_covered": 50.0, "percent_covered_display": "50", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 62.5, "percent_statements_covered_display": "62", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 3, "percent_branches_covered": 25.0, "percent_branches_covered_display": "25"}, "missing_lines": [97, 98, 100], "excluded_lines": [], "start_line": 90, "executed_branches": [[91, 92]], "missing_branches": [[91, 97], [97, 98], [97, 100]]}, "ensure_pil_image_for_annotation": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [113], "excluded_lines": [], "start_line": 110, "executed_branches": [], "missing_branches": []}, "ensure_cv2_image_for_processing": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [124], "excluded_lines": [], "start_line": 121, "executed_branches": [], "missing_branches": []}, "images_to_cv2": {"executed_lines": [140, 141, 142, 143, 144, 145], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 127, "executed_branches": [[141, 142], [141, 145], [142, 143], [142, 144]], "missing_branches": []}, "pillow_to_cv2": {"executed_lines": [159, 160, 163], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 148, "executed_branches": [], "missing_branches": []}, "cv2_to_pillow": {"executed_lines": [177, 178], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 166, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 2, 3, 5, 6, 7, 8, 9, 11, 13, 16, 43, 48, 54, 79, 105, 110, 116, 121, 127, 148, 166], "summary": {"covered_lines": 22, "num_statements": 22, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 2, 3, 5, 6, 7, 8, 9, 11, 13, 16, 27, 28, 29, 30, 40, 43, 48, 54, 64, 65, 66, 67, 69, 70, 71, 72, 76, 79, 89, 90, 91, 92, 93, 94, 95, 102, 105, 110, 116, 121, 127, 140, 141, 142, 143, 144, 145, 148, 159, 160, 163, 166, 177, 178], "summary": {"covered_lines": 55, "num_statements": 68, "percent_covered": 76.19047619047619, "percent_covered_display": "76", "missing_lines": 13, "excluded_lines": 0, "percent_statements_covered": 80.88235294117646, "percent_statements_covered_display": "81", "num_branches": 16, "num_partial_branches": 3, "covered_branches": 9, "missing_branches": 7, "percent_branches_covered": 56.25, "percent_branches_covered_display": "56"}, "missing_lines": [32, 33, 34, 35, 36, 38, 51, 74, 97, 98, 100, 113, 124], "excluded_lines": [], "start_line": 1, "executed_branches": [[29, 30], [66, 67], [66, 69], [69, 70], [91, 92], [141, 142], [141, 145], [142, 143], [142, 144]], "missing_branches": [[29, 32], [32, 33], [32, 38], [69, 74], [91, 97], [97, 98], [97, 100]]}}}, "src\\supervision\\utils\\file.py": {"executed_lines": [1, 3, 4, 5, 7, 8, 11, 12, 13, 14, 15, 16, 22, 66, 67, 69, 70, 71, 72, 73, 74, 77, 78, 79, 80, 82, 83, 84, 85, 89, 92, 120, 121, 122, 124, 126, 129, 137, 138, 139, 142, 166, 167, 168, 171, 182, 183, 186, 196, 197, 198, 201, 210, 211], "summary": {"covered_lines": 54, "num_statements": 59, "percent_covered": 87.65432098765432, "percent_covered_display": "88", "missing_lines": 5, "excluded_lines": 0, "percent_statements_covered": 91.52542372881356, "percent_statements_covered_display": "92", "num_branches": 22, "num_partial_branches": 3, "covered_branches": 17, "missing_branches": 5, "percent_branches_covered": 77.27272727272727, "percent_branches_covered_display": "77"}, "missing_lines": [17, 18, 19, 81, 87], "excluded_lines": [], "executed_branches": [[13, 14], [13, 15], [15, 16], [69, 70], [72, 73], [72, 77], [78, 79], [78, 89], [80, 82], [82, 78], [82, 83], [83, 82], [83, 84], [121, 122], [121, 124], [138, -129], [138, 139]], "missing_branches": [[15, 17], [17, 18], [17, 19], [69, 87], [80, 81]], "functions": {"NumpyJsonEncoder.default": {"executed_lines": [13, 14, 15, 16], "summary": {"covered_lines": 4, "num_statements": 7, "percent_covered": 53.84615384615385, "percent_covered_display": "54", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 57.142857142857146, "percent_statements_covered_display": "57", "num_branches": 6, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 3, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [17, 18, 19], "excluded_lines": [], "start_line": 12, "executed_branches": [[13, 14], [13, 15], [15, 16]], "missing_branches": [[15, 17], [17, 18], [17, 19]]}, "list_files_with_extensions": {"executed_lines": [66, 67, 69, 70, 71, 72, 73, 74, 77, 78, 79, 80, 82, 83, 84, 85, 89], "summary": {"covered_lines": 17, "num_statements": 19, "percent_covered": 87.09677419354838, "percent_covered_display": "87", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 89.47368421052632, "percent_statements_covered_display": "89", "num_branches": 12, "num_partial_branches": 2, "covered_branches": 10, "missing_branches": 2, "percent_branches_covered": 83.33333333333333, "percent_branches_covered_display": "83"}, "missing_lines": [81, 87], "excluded_lines": [], "start_line": 22, "executed_branches": [[69, 70], [72, 73], [72, 77], [78, 79], [78, 89], [80, 82], [82, 78], [82, 83], [83, 82], [83, 84]], "missing_branches": [[69, 87], [80, 81]]}, "read_txt_file": {"executed_lines": [120, 121, 122, 124, 126], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 92, "executed_branches": [[121, 122], [121, 124]], "missing_branches": []}, "save_text_file": {"executed_lines": [137, 138, 139], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 129, "executed_branches": [[138, -129], [138, 139]], "missing_branches": []}, "read_json_file": {"executed_lines": [166, 167, 168], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 142, "executed_branches": [], "missing_branches": []}, "save_json_file": {"executed_lines": [182, 183], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 171, "executed_branches": [], "missing_branches": []}, "read_yaml_file": {"executed_lines": [196, 197, 198], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 186, "executed_branches": [], "missing_branches": []}, "save_yaml_file": {"executed_lines": [210, 211], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 201, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 5, 7, 8, 11, 12, 22, 92, 129, 142, 171, 186, 201], "summary": {"covered_lines": 15, "num_statements": 15, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"NumpyJsonEncoder": {"executed_lines": [13, 14, 15, 16], "summary": {"covered_lines": 4, "num_statements": 7, "percent_covered": 53.84615384615385, "percent_covered_display": "54", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 57.142857142857146, "percent_statements_covered_display": "57", "num_branches": 6, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 3, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [17, 18, 19], "excluded_lines": [], "start_line": 11, "executed_branches": [[13, 14], [13, 15], [15, 16]], "missing_branches": [[15, 17], [17, 18], [17, 19]]}, "": {"executed_lines": [1, 3, 4, 5, 7, 8, 11, 12, 22, 66, 67, 69, 70, 71, 72, 73, 74, 77, 78, 79, 80, 82, 83, 84, 85, 89, 92, 120, 121, 122, 124, 126, 129, 137, 138, 139, 142, 166, 167, 168, 171, 182, 183, 186, 196, 197, 198, 201, 210, 211], "summary": {"covered_lines": 50, "num_statements": 52, "percent_covered": 94.11764705882354, "percent_covered_display": "94", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 96.15384615384616, "percent_statements_covered_display": "96", "num_branches": 16, "num_partial_branches": 2, "covered_branches": 14, "missing_branches": 2, "percent_branches_covered": 87.5, "percent_branches_covered_display": "88"}, "missing_lines": [81, 87], "excluded_lines": [], "start_line": 1, "executed_branches": [[69, 70], [72, 73], [72, 77], [78, 79], [78, 89], [80, 82], [82, 78], [82, 83], [83, 82], [83, 84], [121, 122], [121, 124], [138, -129], [138, 139]], "missing_branches": [[69, 87], [80, 81]]}}}, "src\\supervision\\utils\\image.py": {"executed_lines": [1, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 17, 18, 19, 20, 21, 26, 28, 30, 33, 34, 77, 78, 80, 81, 83, 84, 94, 95, 135, 136, 139, 140, 141, 142, 145, 146, 193, 194, 195, 196, 197, 198, 199, 206, 209, 210, 255, 256, 257, 260, 261, 262, 263, 264, 265, 275, 278, 283, 317, 318, 319, 321, 322, 324, 327, 328, 329, 330, 332, 333, 334, 335, 337, 348, 352, 355, 356, 403, 404, 434, 462, 463, 468, 469, 471, 472, 473, 481, 482, 521, 531, 551, 560, 565, 706, 713, 721, 728, 739, 756, 767, 816, 860, 879, 918], "summary": {"covered_lines": 108, "num_statements": 245, "percent_covered": 37.15170278637771, "percent_covered_display": "37", "missing_lines": 137, "excluded_lines": 0, "percent_statements_covered": 44.08163265306123, "percent_statements_covered_display": "44", "num_branches": 78, "num_partial_branches": 8, "covered_branches": 12, "missing_branches": 66, "percent_branches_covered": 15.384615384615385, "percent_branches_covered_display": "15"}, "missing_lines": [86, 87, 89, 137, 201, 202, 204, 325, 338, 341, 342, 344, 345, 346, 392, 393, 394, 396, 397, 400, 430, 431, 464, 475, 516, 517, 518, 519, 522, 523, 524, 525, 527, 529, 544, 545, 547, 548, 549, 557, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 668, 669, 670, 673, 674, 675, 676, 678, 679, 682, 683, 684, 701, 702, 703, 707, 708, 709, 710, 716, 717, 718, 731, 732, 736, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 757, 758, 759, 760, 761, 762, 763, 764, 784, 796, 797, 798, 799, 802, 803, 807, 828, 829, 830, 835, 836, 837, 840, 841, 842, 843, 844, 845, 856, 857, 865, 866, 867, 868, 869, 870, 871, 872, 874, 875, 876, 886, 890, 901, 902, 905, 906, 907, 908, 909, 921], "excluded_lines": [], "executed_branches": [[77, 78], [77, 80], [83, 84], [136, 139], [194, 195], [197, 198], [324, 327], [337, 348], [462, 463], [462, 471], [463, 468], [471, 472]], "missing_branches": [[83, 86], [86, 87], [86, 89], [136, 137], [194, 204], [197, 201], [324, 325], [337, 338], [393, 394], [393, 396], [463, 464], [471, 475], [522, 523], [522, 527], [523, 524], [523, 529], [544, 545], [544, 547], [653, 654], [653, 655], [655, 656], [655, 657], [660, 661], [660, 662], [669, 670], [669, 673], [673, 674], [673, 675], [675, 676], [675, 678], [701, 702], [701, 703], [708, 709], [708, 710], [731, 732], [731, 736], [743, 744], [743, 745], [745, 746], [745, 749], [749, 750], [749, 753], [757, 758], [757, 759], [762, 763], [762, 764], [798, 799], [798, 802], [802, 803], [802, 807], [828, 829], [828, 830], [835, 836], [835, 840], [841, 842], [841, 857], [842, 843], [842, 845], [866, 867], [866, 876], [867, 868], [867, 870], [871, 872], [871, 874], [906, 907], [906, 909]], "functions": {"crop_image": {"executed_lines": [77, 78, 80, 81, 83, 84], "summary": {"covered_lines": 6, "num_statements": 9, "percent_covered": 60.0, "percent_covered_display": "60", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 66.66666666666667, "percent_statements_covered_display": "67", "num_branches": 6, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 3, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [86, 87, 89], "excluded_lines": [], "start_line": 34, "executed_branches": [[77, 78], [77, 80], [83, 84]], "missing_branches": [[83, 86], [86, 87], [86, 89]]}, "scale_image": {"executed_lines": [135, 136, 139, 140, 141, 142], "summary": {"covered_lines": 6, "num_statements": 7, "percent_covered": 77.77777777777777, "percent_covered_display": "78", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 85.71428571428571, "percent_statements_covered_display": "86", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [137], "excluded_lines": [], "start_line": 95, "executed_branches": [[136, 139]], "missing_branches": [[136, 137]]}, "resize_image": {"executed_lines": [193, 194, 195, 196, 197, 198, 199, 206], "summary": {"covered_lines": 8, "num_statements": 11, "percent_covered": 66.66666666666667, "percent_covered_display": "67", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 72.72727272727273, "percent_statements_covered_display": "73", "num_branches": 4, "num_partial_branches": 2, "covered_branches": 2, "missing_branches": 2, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [201, 202, 204], "excluded_lines": [], "start_line": 146, "executed_branches": [[194, 195], [197, 198]], "missing_branches": [[194, 204], [197, 201]]}, "letterbox_image": {"executed_lines": [255, 256, 257, 260, 261, 262, 263, 264, 265, 275], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 210, "executed_branches": [], "missing_branches": []}, "overlay_image": {"executed_lines": [317, 318, 319, 321, 322, 324, 327, 328, 329, 330, 332, 333, 334, 335, 337, 348, 352], "summary": {"covered_lines": 17, "num_statements": 24, "percent_covered": 67.85714285714286, "percent_covered_display": "68", "missing_lines": 7, "excluded_lines": 0, "percent_statements_covered": 70.83333333333333, "percent_statements_covered_display": "71", "num_branches": 4, "num_partial_branches": 2, "covered_branches": 2, "missing_branches": 2, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [325, 338, 341, 342, 344, 345, 346], "excluded_lines": [], "start_line": 283, "executed_branches": [[324, 327], [337, 348]], "missing_branches": [[324, 325], [337, 338]]}, "tint_image": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 6, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 6, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 2, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [392, 393, 394, 396, 397, 400], "excluded_lines": [], "start_line": 356, "executed_branches": [], "missing_branches": [[393, 394], [393, 396]]}, "grayscale_image": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 2, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [430, 431], "excluded_lines": [], "start_line": 404, "executed_branches": [], "missing_branches": []}, "get_image_resolution_wh": {"executed_lines": [462, 463, 468, 469, 471, 472, 473], "summary": {"covered_lines": 7, "num_statements": 9, "percent_covered": 73.33333333333333, "percent_covered_display": "73", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 77.77777777777777, "percent_statements_covered_display": "78", "num_branches": 6, "num_partial_branches": 2, "covered_branches": 4, "missing_branches": 2, "percent_branches_covered": 66.66666666666667, "percent_branches_covered_display": "67"}, "missing_lines": [464, 475], "excluded_lines": [], "start_line": 434, "executed_branches": [[462, 463], [462, 471], [463, 468], [471, 472]], "missing_branches": [[463, 464], [471, 475]]}, "ImageSink.__init__": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 4, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 4, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [516, 517, 518, 519], "excluded_lines": [], "start_line": 482, "executed_branches": [], "missing_branches": []}, "ImageSink.__enter__": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 6, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 6, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 4, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [522, 523, 524, 525, 527, 529], "excluded_lines": [], "start_line": 521, "executed_branches": [], "missing_branches": [[522, 523], [522, 527], [523, 524], [523, 529]]}, "ImageSink.save_image": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 5, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 5, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 2, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [544, 545, 547, 548, 549], "excluded_lines": [], "start_line": 531, "executed_branches": [], "missing_branches": [[544, 545], [544, 547]]}, "ImageSink.__exit__": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [557], "excluded_lines": [], "start_line": 551, "executed_branches": [], "missing_branches": []}, "create_tiles": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 25, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 25, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 14, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 14, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 668, 669, 670, 673, 674, 675, 676, 678, 679, 682, 683, 684, 701, 702, 703], "excluded_lines": [], "start_line": 565, "executed_branches": [], "missing_branches": [[653, 654], [653, 655], [655, 656], [655, 657], [660, 661], [660, 662], [669, 670], [669, 673], [673, 674], [673, 675], [675, 676], [675, 678], [701, 702], [701, 703]]}, "_negotiate_tiles_format": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 4, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 4, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 2, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [707, 708, 709, 710], "excluded_lines": [], "start_line": 706, "executed_branches": [], "missing_branches": [[708, 709], [708, 710]]}, "_calculate_aggregated_images_shape": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 3, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [716, 717, 718], "excluded_lines": [], "start_line": 713, "executed_branches": [], "missing_branches": []}, "_aggregate_images_shape": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 3, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 2, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [731, 732, 736], "excluded_lines": [], "start_line": 728, "executed_branches": [], "missing_branches": [[731, 732], [731, 736]]}, "_establish_grid_size": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 11, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 11, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 6, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753], "excluded_lines": [], "start_line": 739, "executed_branches": [], "missing_branches": [[743, 744], [743, 745], [745, 746], [745, 749], [749, 750], [749, 753]]}, "_negotiate_grid_size": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 8, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 8, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 4, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [757, 758, 759, 760, 761, 762, 763, 764], "excluded_lines": [], "start_line": 756, "executed_branches": [], "missing_branches": [[757, 758], [757, 759], [762, 763], [762, 764]]}, "_generate_tiles": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 8, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 8, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 4, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [784, 796, 797, 798, 799, 802, 803, 807], "excluded_lines": [], "start_line": 767, "executed_branches": [], "missing_branches": [[798, 799], [798, 802], [802, 803], [802, 807]]}, "_draw_texts": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 14, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 14, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 8, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 8, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [828, 829, 830, 835, 836, 837, 840, 841, 842, 843, 844, 845, 856, 857], "excluded_lines": [], "start_line": 816, "executed_branches": [], "missing_branches": [[828, 829], [828, 830], [835, 836], [835, 840], [841, 842], [841, 857], [842, 843], [842, 845]]}, "_prepare_default_titles_anchors": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 11, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 11, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 6, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [865, 866, 867, 868, 869, 870, 871, 872, 874, 875, 876], "excluded_lines": [], "start_line": 860, "executed_branches": [], "missing_branches": [[866, 867], [866, 876], [867, 868], [867, 870], [871, 872], [871, 874]]}, "_merge_tiles_elements": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 9, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 9, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 2, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [886, 890, 901, 902, 905, 906, 907, 908, 909], "excluded_lines": [], "start_line": 879, "executed_branches": [], "missing_branches": [[906, 907], [906, 909]]}, "_generate_color_image": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [921], "excluded_lines": [], "start_line": 918, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 17, 18, 19, 20, 21, 26, 28, 30, 33, 34, 94, 95, 145, 146, 209, 210, 278, 283, 355, 356, 403, 404, 434, 481, 482, 521, 531, 551, 560, 565, 706, 713, 721, 728, 739, 756, 767, 816, 860, 879, 918], "summary": {"covered_lines": 54, "num_statements": 54, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"ImageSink": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 16, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 16, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 6, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [516, 517, 518, 519, 522, 523, 524, 525, 527, 529, 544, 545, 547, 548, 549, 557], "excluded_lines": [], "start_line": 481, "executed_branches": [], "missing_branches": [[522, 523], [522, 527], [523, 524], [523, 529], [544, 545], [544, 547]]}, "": {"executed_lines": [1, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 17, 18, 19, 20, 21, 26, 28, 30, 33, 34, 77, 78, 80, 81, 83, 84, 94, 95, 135, 136, 139, 140, 141, 142, 145, 146, 193, 194, 195, 196, 197, 198, 199, 206, 209, 210, 255, 256, 257, 260, 261, 262, 263, 264, 265, 275, 278, 283, 317, 318, 319, 321, 322, 324, 327, 328, 329, 330, 332, 333, 334, 335, 337, 348, 352, 355, 356, 403, 404, 434, 462, 463, 468, 469, 471, 472, 473, 481, 482, 521, 531, 551, 560, 565, 706, 713, 721, 728, 739, 756, 767, 816, 860, 879, 918], "summary": {"covered_lines": 108, "num_statements": 229, "percent_covered": 39.8671096345515, "percent_covered_display": "40", "missing_lines": 121, "excluded_lines": 0, "percent_statements_covered": 47.161572052401745, "percent_statements_covered_display": "47", "num_branches": 72, "num_partial_branches": 8, "covered_branches": 12, "missing_branches": 60, "percent_branches_covered": 16.666666666666668, "percent_branches_covered_display": "17"}, "missing_lines": [86, 87, 89, 137, 201, 202, 204, 325, 338, 341, 342, 344, 345, 346, 392, 393, 394, 396, 397, 400, 430, 431, 464, 475, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 668, 669, 670, 673, 674, 675, 676, 678, 679, 682, 683, 684, 701, 702, 703, 707, 708, 709, 710, 716, 717, 718, 731, 732, 736, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 757, 758, 759, 760, 761, 762, 763, 764, 784, 796, 797, 798, 799, 802, 803, 807, 828, 829, 830, 835, 836, 837, 840, 841, 842, 843, 844, 845, 856, 857, 865, 866, 867, 868, 869, 870, 871, 872, 874, 875, 876, 886, 890, 901, 902, 905, 906, 907, 908, 909, 921], "excluded_lines": [], "start_line": 1, "executed_branches": [[77, 78], [77, 80], [83, 84], [136, 139], [194, 195], [197, 198], [324, 327], [337, 348], [462, 463], [462, 471], [463, 468], [471, 472]], "missing_branches": [[83, 86], [86, 87], [86, 89], [136, 137], [194, 204], [197, 201], [324, 325], [337, 338], [393, 394], [393, 396], [463, 464], [471, 475], [653, 654], [653, 655], [655, 656], [655, 657], [660, 661], [660, 662], [669, 670], [669, 673], [673, 674], [673, 675], [675, 676], [675, 678], [701, 702], [701, 703], [708, 709], [708, 710], [731, 732], [731, 736], [743, 744], [743, 745], [745, 746], [745, 749], [749, 750], [749, 753], [757, 758], [757, 759], [762, 763], [762, 764], [798, 799], [798, 802], [802, 803], [802, 807], [828, 829], [828, 830], [835, 836], [835, 840], [841, 842], [841, 857], [842, 843], [842, 845], [866, 867], [866, 876], [867, 868], [867, 870], [871, 872], [871, 874], [906, 907], [906, 909]]}}}, "src\\supervision\\utils\\internal.py": {"executed_lines": [1, 3, 4, 5, 6, 7, 8, 11, 18, 21, 32, 35, 37, 40, 43, 50, 53, 130, 133, 145, 150, 152, 164, 166, 169, 191, 192, 194, 200, 201, 206, 208], "summary": {"covered_lines": 32, "num_statements": 47, "percent_covered": 64.40677966101696, "percent_covered_display": "64", "missing_lines": 15, "excluded_lines": 1, "percent_statements_covered": 68.08510638297872, "percent_statements_covered_display": "68", "num_branches": 12, "num_partial_branches": 2, "covered_branches": 6, "missing_branches": 6, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [38, 102, 103, 104, 105, 106, 107, 108, 110, 112, 121, 123, 125, 127, 165], "excluded_lines": [134], "executed_branches": [[37, 40], [164, 166], [191, 192], [191, 194], [200, 201], [200, 208]], "missing_branches": [[37, 38], [105, 106], [105, 123], [106, 107], [106, 110], [164, 165]], "functions": {"format_warning": {"executed_lines": [32], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 21, "executed_branches": [], "missing_branches": []}, "warn_deprecated": {"executed_lines": [50], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 43, "executed_branches": [], "missing_branches": []}, "deprecated_parameter": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 3, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [102, 103, 127], "excluded_lines": [], "start_line": 53, "executed_branches": [], "missing_branches": []}, "deprecated_parameter.decorator": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 2, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [104, 125], "excluded_lines": [], "start_line": 102, "executed_branches": [], "missing_branches": []}, "deprecated_parameter.decorator.wrapper": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 8, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 8, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 4, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [105, 106, 107, 108, 110, 112, 121, 123], "excluded_lines": [], "start_line": 104, "executed_branches": [], "missing_branches": [[105, 106], [105, 123], [106, 107], [106, 110]]}, "classproperty.__init__": {"executed_lines": [150], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 145, "executed_branches": [], "missing_branches": []}, "classproperty.__get__": {"executed_lines": [164, 166], "summary": {"covered_lines": 2, "num_statements": 3, "percent_covered": 60.0, "percent_covered_display": "60", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 66.66666666666667, "percent_statements_covered_display": "67", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [165], "excluded_lines": [], "start_line": 152, "executed_branches": [[164, 166]], "missing_branches": [[164, 165]]}, "get_instance_variables": {"executed_lines": [191, 192, 194, 200, 201, 206, 208], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 169, "executed_branches": [[191, 192], [191, 194], [200, 201], [200, 208]], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 5, 6, 7, 8, 11, 18, 21, 35, 37, 40, 43, 53, 130, 133, 145, 152, 169], "summary": {"covered_lines": 20, "num_statements": 21, "percent_covered": 91.30434782608695, "percent_covered_display": "91", "missing_lines": 1, "excluded_lines": 1, "percent_statements_covered": 95.23809523809524, "percent_statements_covered_display": "95", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [38], "excluded_lines": [134], "start_line": 1, "executed_branches": [[37, 40]], "missing_branches": [[37, 38]]}}, "classes": {"SupervisionWarnings": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 11, "executed_branches": [], "missing_branches": []}, "classproperty": {"executed_lines": [150, 164, 166], "summary": {"covered_lines": 3, "num_statements": 4, "percent_covered": 66.66666666666667, "percent_covered_display": "67", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 75.0, "percent_statements_covered_display": "75", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [165], "excluded_lines": [], "start_line": 133, "executed_branches": [[164, 166]], "missing_branches": [[164, 165]]}, "": {"executed_lines": [1, 3, 4, 5, 6, 7, 8, 11, 18, 21, 32, 35, 37, 40, 43, 50, 53, 130, 133, 145, 152, 169, 191, 192, 194, 200, 201, 206, 208], "summary": {"covered_lines": 29, "num_statements": 43, "percent_covered": 64.15094339622641, "percent_covered_display": "64", "missing_lines": 14, "excluded_lines": 1, "percent_statements_covered": 67.44186046511628, "percent_statements_covered_display": "67", "num_branches": 10, "num_partial_branches": 1, "covered_branches": 5, "missing_branches": 5, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [38, 102, 103, 104, 105, 106, 107, 108, 110, 112, 121, 123, 125, 127], "excluded_lines": [134], "start_line": 1, "executed_branches": [[37, 40], [191, 192], [191, 194], [200, 201], [200, 208]], "missing_branches": [[37, 38], [105, 106], [105, 123], [106, 107], [106, 110]]}}}, "src\\supervision\\utils\\iterables.py": {"executed_lines": [1, 2, 4, 7, 34, 35, 36, 37, 38, 39, 40, 41, 42, 45, 71, 72, 73, 76, 96, 97, 98, 99, 100, 102, 103], "summary": {"covered_lines": 25, "num_statements": 25, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 10, "num_partial_branches": 0, "covered_branches": 10, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [[36, 37], [36, 41], [37, 38], [37, 40], [41, -7], [41, 42], [98, 99], [98, 103], [99, 100], [99, 102]], "missing_branches": [], "functions": {"create_batches": {"executed_lines": [34, 35, 36, 37, 38, 39, 40, 41, 42], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 6, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 7, "executed_branches": [[36, 37], [36, 41], [37, 38], [37, 40], [41, -7], [41, 42]], "missing_branches": []}, "fill": {"executed_lines": [71, 72, 73], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 45, "executed_branches": [], "missing_branches": []}, "find_duplicates": {"executed_lines": [96, 97, 98, 99, 100, 102, 103], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 76, "executed_branches": [[98, 99], [98, 103], [99, 100], [99, 102]], "missing_branches": []}, "": {"executed_lines": [1, 2, 4, 7, 45, 76], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 2, 4, 7, 34, 35, 36, 37, 38, 39, 40, 41, 42, 45, 71, 72, 73, 76, 96, 97, 98, 99, 100, 102, 103], "summary": {"covered_lines": 25, "num_statements": 25, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 10, "num_partial_branches": 0, "covered_branches": 10, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [[36, 37], [36, 41], [37, 38], [37, 40], [41, -7], [41, 42], [98, 99], [98, 103], [99, 100], [99, 102]], "missing_branches": []}}}, "src\\supervision\\utils\\logger.py": {"executed_lines": [1, 3, 4, 5, 8, 38, 39, 41, 42, 44, 45, 50, 51, 52, 53, 55, 56, 57, 59, 60, 61, 63], "summary": {"covered_lines": 22, "num_statements": 22, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [[38, 39], [38, 41], [44, 45], [44, 63]], "missing_branches": [], "functions": {"_get_logger": {"executed_lines": [38, 39, 41, 42, 44, 45, 50, 51, 52, 53, 55, 56, 57, 59, 60, 61, 63], "summary": {"covered_lines": 17, "num_statements": 17, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 8, "executed_branches": [[38, 39], [38, 41], [44, 45], [44, 63]], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 5, 8], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 3, 4, 5, 8, 38, 39, 41, 42, 44, 45, 50, 51, 52, 53, 55, 56, 57, 59, 60, 61, 63], "summary": {"covered_lines": 22, "num_statements": 22, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [[38, 39], [38, 41], [44, 45], [44, 63]], "missing_branches": []}}}, "src\\supervision\\utils\\notebook.py": {"executed_lines": [1, 3, 4, 5, 7, 8, 11, 50], "summary": {"covered_lines": 8, "num_statements": 32, "percent_covered": 16.0, "percent_covered_display": "16", "missing_lines": 24, "excluded_lines": 2, "percent_statements_covered": 25.0, "percent_statements_covered_display": "25", "num_branches": 18, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 18, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [36, 37, 39, 41, 42, 44, 46, 47, 92, 94, 95, 96, 98, 99, 104, 106, 107, 108, 109, 111, 113, 114, 116, 117], "excluded_lines": [14, 57], "executed_branches": [], "missing_branches": [[36, 37], [36, 39], [41, 42], [41, 44], [94, 95], [94, 98], [95, 94], [95, 96], [98, 99], [98, 104], [106, 107], [106, 117], [107, 108], [107, 116], [108, 109], [108, 111], [113, 114], [113, 116]], "functions": {"plot_image": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 8, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 8, "excluded_lines": 1, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 4, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [36, 37, 39, 41, 42, 44, 46, 47], "excluded_lines": [14], "start_line": 11, "executed_branches": [], "missing_branches": [[36, 37], [36, 39], [41, 42], [41, 44]]}, "plot_images_grid": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 16, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 16, "excluded_lines": 1, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 14, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 14, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [92, 94, 95, 96, 98, 99, 104, 106, 107, 108, 109, 111, 113, 114, 116, 117], "excluded_lines": [57], "start_line": 50, "executed_branches": [], "missing_branches": [[94, 95], [94, 98], [95, 94], [95, 96], [98, 99], [98, 104], [106, 107], [106, 117], [107, 108], [107, 116], [108, 109], [108, 111], [113, 114], [113, 116]]}, "": {"executed_lines": [1, 3, 4, 5, 7, 8, 11, 50], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 3, 4, 5, 7, 8, 11, 50], "summary": {"covered_lines": 8, "num_statements": 32, "percent_covered": 16.0, "percent_covered_display": "16", "missing_lines": 24, "excluded_lines": 2, "percent_statements_covered": 25.0, "percent_statements_covered_display": "25", "num_branches": 18, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 18, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [36, 37, 39, 41, 42, 44, 46, 47, 92, 94, 95, 96, 98, 99, 104, 106, 107, 108, 109, 111, 113, 114, 116, 117], "excluded_lines": [14, 57], "start_line": 1, "executed_branches": [], "missing_branches": [[36, 37], [36, 39], [41, 42], [41, 44], [94, 95], [94, 98], [95, 94], [95, 96], [98, 99], [98, 104], [106, 107], [106, 117], [107, 108], [107, 116], [108, 109], [108, 111], [113, 114], [113, 116]]}}}, "src\\supervision\\utils\\video.py": {"executed_lines": [1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 15, 16, 17, 18, 20, 22, 25, 26, 53, 54, 55, 56, 58, 59, 60, 61, 64, 65, 66, 67, 68, 69, 71, 72, 73, 76, 99, 100, 101, 102, 103, 105, 106, 107, 111, 117, 119, 127, 128, 130, 136, 137, 140, 147, 148, 149, 153, 155, 156, 157, 161, 162, 188, 189, 190, 196, 197, 198, 199, 203, 204, 207, 210, 211, 213, 214, 216, 217, 219, 225, 226, 228, 231, 265, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 279, 280, 283, 355, 356, 362, 365, 369, 370, 374, 375, 376, 378, 379, 380, 381, 382, 383, 385, 386, 387, 390, 391, 392, 393, 394, 395, 400, 401, 402, 403, 404, 406, 407, 413, 415, 416, 417, 423, 424, 426, 432, 433, 435, 436, 437, 438, 439, 440, 442, 443, 444, 445, 446, 447, 448, 449, 451, 453, 454, 457, 462, 484, 485, 497, 503], "summary": {"covered_lines": 162, "num_statements": 188, "percent_covered": 81.66666666666667, "percent_covered_display": "82", "missing_lines": 26, "excluded_lines": 1, "percent_statements_covered": 86.17021276595744, "percent_statements_covered_display": "86", "num_branches": 52, "num_partial_branches": 10, "covered_branches": 34, "missing_branches": 18, "percent_branches_covered": 65.38461538461539, "percent_branches_covered_display": "65"}, "missing_lines": [62, 108, 109, 110, 212, 215, 220, 221, 222, 223, 224, 278, 388, 389, 396, 397, 398, 399, 408, 482, 492, 493, 494, 495, 501, 507], "excluded_lines": [238], "executed_branches": [[61, 64], [127, 128], [136, 137], [148, 149], [148, 155], [188, 189], [188, 197], [203, 204], [211, 213], [214, 216], [219, 225], [225, 226], [225, 228], [271, 272], [271, 273], [273, 274], [275, 276], [275, 279], [277, 275], [374, 375], [374, 376], [381, 382], [381, 383], [390, 391], [390, 400], [394, 391], [394, 395], [403, -385], [403, 404], [407, 413], [438, 439], [438, 442], [453, -283], [453, 454]], "missing_branches": [[61, 62], [127, -119], [136, -130], [203, -140], [211, 212], [214, 215], [219, 220], [220, 221], [220, 228], [222, 223], [222, 224], [273, 275], [277, 278], [397, 398], [397, 399], [407, 408], [492, 493], [492, 494]], "functions": {"VideoInfo.from_video_path": {"executed_lines": [60, 61, 64, 65, 66, 67, 68, 69], "summary": {"covered_lines": 8, "num_statements": 9, "percent_covered": 81.81818181818181, "percent_covered_display": "82", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 88.88888888888889, "percent_statements_covered_display": "89", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [62], "excluded_lines": [], "start_line": 59, "executed_branches": [[61, 64]], "missing_branches": [[61, 62]]}, "VideoInfo.resolution_wh": {"executed_lines": [73], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 72, "executed_branches": [], "missing_branches": []}, "VideoSink.__init__": {"executed_lines": [100, 101, 102, 103], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 99, "executed_branches": [], "missing_branches": []}, "VideoSink.__enter__": {"executed_lines": [106, 107, 111, 117], "summary": {"covered_lines": 4, "num_statements": 7, "percent_covered": 57.142857142857146, "percent_covered_display": "57", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 57.142857142857146, "percent_statements_covered_display": "57", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [108, 109, 110], "excluded_lines": [], "start_line": 105, "executed_branches": [], "missing_branches": []}, "VideoSink.write_frame": {"executed_lines": [127, 128], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 75.0, "percent_covered_display": "75", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [], "excluded_lines": [], "start_line": 119, "executed_branches": [[127, 128]], "missing_branches": [[127, -119]]}, "VideoSink.__exit__": {"executed_lines": [136, 137], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 75.0, "percent_covered_display": "75", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [], "excluded_lines": [], "start_line": 130, "executed_branches": [[136, 137]], "missing_branches": [[136, -130]]}, "_mux_audio": {"executed_lines": [147, 148, 149, 153, 155, 156, 157, 161, 162, 188, 189, 190, 196, 197, 198, 199, 203, 204], "summary": {"covered_lines": 18, "num_statements": 18, "percent_covered": 95.83333333333333, "percent_covered_display": "96", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 1, "covered_branches": 5, "missing_branches": 1, "percent_branches_covered": 83.33333333333333, "percent_branches_covered_display": "83"}, "missing_lines": [], "excluded_lines": [], "start_line": 140, "executed_branches": [[148, 149], [148, 155], [188, 189], [188, 197], [203, 204]], "missing_branches": [[203, -140]]}, "_validate_and_setup_video": {"executed_lines": [210, 211, 213, 214, 216, 217, 219, 225, 226, 228], "summary": {"covered_lines": 10, "num_statements": 17, "percent_covered": 51.724137931034484, "percent_covered_display": "52", "missing_lines": 7, "excluded_lines": 0, "percent_statements_covered": 58.8235294117647, "percent_statements_covered_display": "59", "num_branches": 12, "num_partial_branches": 3, "covered_branches": 5, "missing_branches": 7, "percent_branches_covered": 41.666666666666664, "percent_branches_covered_display": "42"}, "missing_lines": [212, 215, 220, 221, 222, 223, 224], "excluded_lines": [], "start_line": 207, "executed_branches": [[211, 213], [214, 216], [219, 225], [225, 226], [225, 228]], "missing_branches": [[211, 212], [214, 215], [219, 220], [220, 221], [220, 228], [222, 223], [222, 224]]}, "get_video_frames_generator": {"executed_lines": [265, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 279, 280], "summary": {"covered_lines": 13, "num_statements": 14, "percent_covered": 86.36363636363636, "percent_covered_display": "86", "missing_lines": 1, "excluded_lines": 1, "percent_statements_covered": 92.85714285714286, "percent_statements_covered_display": "93", "num_branches": 8, "num_partial_branches": 2, "covered_branches": 6, "missing_branches": 2, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [278], "excluded_lines": [238], "start_line": 231, "executed_branches": [[271, 272], [271, 273], [273, 274], [275, 276], [275, 279], [277, 275]], "missing_branches": [[273, 275], [277, 278]]}, "process_video": {"executed_lines": [355, 356, 362, 365, 369, 378, 385, 406, 415, 416, 417, 423, 424, 426, 432, 433, 435, 436, 437, 438, 439, 440, 442, 443, 444, 445, 446, 447, 448, 449, 451, 453, 454], "summary": {"covered_lines": 33, "num_statements": 33, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 283, "executed_branches": [[438, 439], [438, 442], [453, -283], [453, 454]], "missing_branches": []}, "process_video.reader_thread": {"executed_lines": [370, 374, 375, 376], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 369, "executed_branches": [[374, 375], [374, 376]], "missing_branches": []}, "process_video.writer_thread": {"executed_lines": [379, 380, 381, 382, 383], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 378, "executed_branches": [[381, 382], [381, 383]], "missing_branches": []}, "process_video._drain_and_cleanup": {"executed_lines": [386, 387, 390, 391, 392, 393, 394, 395, 400, 401, 402, 403, 404], "summary": {"covered_lines": 13, "num_statements": 19, "percent_covered": 70.37037037037037, "percent_covered_display": "70", "missing_lines": 6, "excluded_lines": 0, "percent_statements_covered": 68.42105263157895, "percent_statements_covered_display": "68", "num_branches": 8, "num_partial_branches": 0, "covered_branches": 6, "missing_branches": 2, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [388, 389, 396, 397, 398, 399], "excluded_lines": [], "start_line": 385, "executed_branches": [[390, 391], [390, 400], [394, 391], [394, 395], [403, -385], [403, 404]], "missing_branches": [[397, 398], [397, 399]]}, "process_video._mux_audio_if_needed": {"executed_lines": [407, 413], "summary": {"covered_lines": 2, "num_statements": 3, "percent_covered": 60.0, "percent_covered_display": "60", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 66.66666666666667, "percent_statements_covered_display": "67", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [408], "excluded_lines": [], "start_line": 406, "executed_branches": [[407, 413]], "missing_branches": [[407, 408]]}, "FPSMonitor.__init__": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [482], "excluded_lines": [], "start_line": 462, "executed_branches": [], "missing_branches": []}, "FPSMonitor.fps": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 4, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 4, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 2, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [492, 493, 494, 495], "excluded_lines": [], "start_line": 485, "executed_branches": [], "missing_branches": [[492, 493], [492, 494]]}, "FPSMonitor.tick": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [501], "excluded_lines": [], "start_line": 497, "executed_branches": [], "missing_branches": []}, "FPSMonitor.reset": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [507], "excluded_lines": [], "start_line": 503, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 15, 16, 17, 18, 20, 22, 25, 26, 53, 54, 55, 56, 58, 59, 71, 72, 76, 99, 105, 119, 130, 140, 207, 231, 283, 457, 462, 484, 485, 497, 503], "summary": {"covered_lines": 43, "num_statements": 43, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"VideoInfo": {"executed_lines": [60, 61, 64, 65, 66, 67, 68, 69, 73], "summary": {"covered_lines": 9, "num_statements": 10, "percent_covered": 83.33333333333333, "percent_covered_display": "83", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 90.0, "percent_statements_covered_display": "90", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [62], "excluded_lines": [], "start_line": 26, "executed_branches": [[61, 64]], "missing_branches": [[61, 62]]}, "VideoSink": {"executed_lines": [100, 101, 102, 103, 106, 107, 111, 117, 127, 128, 136, 137], "summary": {"covered_lines": 12, "num_statements": 15, "percent_covered": 73.6842105263158, "percent_covered_display": "74", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 80.0, "percent_statements_covered_display": "80", "num_branches": 4, "num_partial_branches": 2, "covered_branches": 2, "missing_branches": 2, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [108, 109, 110], "excluded_lines": [], "start_line": 76, "executed_branches": [[127, 128], [136, 137]], "missing_branches": [[127, -119], [136, -130]]}, "FPSMonitor": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 7, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 7, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 2, "percent_branches_covered": 0.0, "percent_branches_covered_display": "0"}, "missing_lines": [482, 492, 493, 494, 495, 501, 507], "excluded_lines": [], "start_line": 457, "executed_branches": [], "missing_branches": [[492, 493], [492, 494]]}, "": {"executed_lines": [1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 15, 16, 17, 18, 20, 22, 25, 26, 53, 54, 55, 56, 58, 59, 71, 72, 76, 99, 105, 119, 130, 140, 147, 148, 149, 153, 155, 156, 157, 161, 162, 188, 189, 190, 196, 197, 198, 199, 203, 204, 207, 210, 211, 213, 214, 216, 217, 219, 225, 226, 228, 231, 265, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 279, 280, 283, 355, 356, 362, 365, 369, 370, 374, 375, 376, 378, 379, 380, 381, 382, 383, 385, 386, 387, 390, 391, 392, 393, 394, 395, 400, 401, 402, 403, 404, 406, 407, 413, 415, 416, 417, 423, 424, 426, 432, 433, 435, 436, 437, 438, 439, 440, 442, 443, 444, 445, 446, 447, 448, 449, 451, 453, 454, 457, 462, 484, 485, 497, 503], "summary": {"covered_lines": 141, "num_statements": 156, "percent_covered": 86.0, "percent_covered_display": "86", "missing_lines": 15, "excluded_lines": 1, "percent_statements_covered": 90.38461538461539, "percent_statements_covered_display": "90", "num_branches": 44, "num_partial_branches": 7, "covered_branches": 31, "missing_branches": 13, "percent_branches_covered": 70.45454545454545, "percent_branches_covered_display": "70"}, "missing_lines": [212, 215, 220, 221, 222, 223, 224, 278, 388, 389, 396, 397, 398, 399, 408], "excluded_lines": [238], "start_line": 1, "executed_branches": [[148, 149], [148, 155], [188, 189], [188, 197], [203, 204], [211, 213], [214, 216], [219, 225], [225, 226], [225, 228], [271, 272], [271, 273], [273, 274], [275, 276], [275, 279], [277, 275], [374, 375], [374, 376], [381, 382], [381, 383], [390, 391], [390, 400], [394, 391], [394, 395], [403, -385], [403, 404], [407, 413], [438, 439], [438, 442], [453, -283], [453, 454]], "missing_branches": [[203, -140], [211, 212], [214, 215], [219, 220], [220, 221], [220, 228], [222, 223], [222, 224], [273, 275], [277, 278], [397, 398], [397, 399], [407, 408]]}}}, "src\\supervision\\validators\\__init__.py": {"executed_lines": [1, 3, 4, 6, 7, 10, 18, 19, 20, 21, 22, 28, 33, 37, 38, 39, 43, 44, 45, 46, 48, 49, 50, 52, 55, 60, 61, 75, 80, 84, 85, 86, 87, 90, 97, 102, 106, 108, 109, 110, 113, 120, 125, 129, 131, 133, 134, 139, 144, 151, 156, 160, 165, 169, 170, 171, 172, 175, 182, 187, 191, 192, 193, 194, 196, 197, 199, 207, 212, 216, 217, 218, 220, 227, 232, 236, 241, 242, 243, 244, 249, 253, 259, 267, 268, 269, 270, 271, 272, 273, 276, 281, 292, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 312, 317, 323, 328, 334, 335, 342, 343, 350, 351, 354, 357, 362], "summary": {"covered_lines": 116, "num_statements": 146, "percent_covered": 76.47058823529412, "percent_covered_display": "76", "missing_lines": 30, "excluded_lines": 0, "percent_statements_covered": 79.45205479452055, "percent_statements_covered_display": "79", "num_branches": 58, "num_partial_branches": 18, "covered_branches": 40, "missing_branches": 18, "percent_branches_covered": 68.96551724137932, "percent_branches_covered_display": "69"}, "missing_lines": [34, 56, 81, 91, 103, 114, 126, 135, 140, 145, 157, 166, 176, 188, 195, 198, 200, 204, 213, 221, 233, 245, 250, 254, 289, 320, 331, 336, 344, 363], "excluded_lines": [], "executed_branches": [[21, -10], [21, 22], [38, 39], [38, 43], [43, 44], [43, 48], [44, 45], [44, 46], [55, 60], [60, -37], [60, 61], [90, -84], [113, -106], [133, -129], [133, 134], [134, 139], [139, 144], [144, -129], [175, -169], [192, -191], [192, 193], [193, 194], [193, 196], [194, 192], [196, 197], [197, 199], [199, 192], [220, -216], [241, 242], [241, 243], [244, 249], [249, 253], [253, -236], [305, 306], [305, 307], [308, 309], [335, 342], [343, 350], [350, 351], [350, 354]], "missing_branches": [[55, 56], [90, 91], [113, 114], [134, 135], [139, 140], [144, 145], [175, 176], [194, 195], [196, 204], [197, 198], [199, 200], [220, 221], [244, 245], [249, 250], [253, 254], [308, -292], [335, 336], [343, 344]], "functions": {"_validate_xyxy": {"executed_lines": [18, 19, 20, 21, 22], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 10, "executed_branches": [[21, -10], [21, 22]], "missing_branches": []}, "validate_xyxy": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [34], "excluded_lines": [], "start_line": 33, "executed_branches": [], "missing_branches": []}, "_validate_mask": {"executed_lines": [38, 39, 43, 44, 45, 46, 48, 49, 50, 52, 55, 60, 61], "summary": {"covered_lines": 13, "num_statements": 14, "percent_covered": 91.66666666666667, "percent_covered_display": "92", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 92.85714285714286, "percent_statements_covered_display": "93", "num_branches": 10, "num_partial_branches": 1, "covered_branches": 9, "missing_branches": 1, "percent_branches_covered": 90.0, "percent_branches_covered_display": "90"}, "missing_lines": [56], "excluded_lines": [], "start_line": 37, "executed_branches": [[38, 39], [38, 43], [43, 44], [43, 48], [44, 45], [44, 46], [55, 60], [60, -37], [60, 61]], "missing_branches": [[55, 56]]}, "validate_mask": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [81], "excluded_lines": [], "start_line": 80, "executed_branches": [], "missing_branches": []}, "_validate_class_id": {"executed_lines": [85, 86, 87, 90], "summary": {"covered_lines": 4, "num_statements": 5, "percent_covered": 71.42857142857143, "percent_covered_display": "71", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 80.0, "percent_statements_covered_display": "80", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [91], "excluded_lines": [], "start_line": 84, "executed_branches": [[90, -84]], "missing_branches": [[90, 91]]}, "validate_class_id": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [103], "excluded_lines": [], "start_line": 102, "executed_branches": [], "missing_branches": []}, "_validate_confidence": {"executed_lines": [108, 109, 110, 113], "summary": {"covered_lines": 4, "num_statements": 5, "percent_covered": 71.42857142857143, "percent_covered_display": "71", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 80.0, "percent_statements_covered_display": "80", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [114], "excluded_lines": [], "start_line": 106, "executed_branches": [[113, -106]], "missing_branches": [[113, 114]]}, "validate_confidence": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [126], "excluded_lines": [], "start_line": 125, "executed_branches": [], "missing_branches": []}, "_validate_keypoint_confidence": {"executed_lines": [131, 133, 134, 139, 144], "summary": {"covered_lines": 5, "num_statements": 8, "percent_covered": 62.5, "percent_covered_display": "62", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 62.5, "percent_statements_covered_display": "62", "num_branches": 8, "num_partial_branches": 3, "covered_branches": 5, "missing_branches": 3, "percent_branches_covered": 62.5, "percent_branches_covered_display": "62"}, "missing_lines": [135, 140, 145], "excluded_lines": [], "start_line": 129, "executed_branches": [[133, -129], [133, 134], [134, 139], [139, 144], [144, -129]], "missing_branches": [[134, 135], [139, 140], [144, 145]]}, "validate_key_point_confidence": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [157], "excluded_lines": [], "start_line": 156, "executed_branches": [], "missing_branches": []}, "validate_keypoint_confidence": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [166], "excluded_lines": [], "start_line": 165, "executed_branches": [], "missing_branches": []}, "_validate_tracker_id": {"executed_lines": [170, 171, 172, 175], "summary": {"covered_lines": 4, "num_statements": 5, "percent_covered": 71.42857142857143, "percent_covered_display": "71", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 80.0, "percent_statements_covered_display": "80", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [176], "excluded_lines": [], "start_line": 169, "executed_branches": [[175, -169]], "missing_branches": [[175, 176]]}, "validate_tracker_id": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [188], "excluded_lines": [], "start_line": 187, "executed_branches": [], "missing_branches": []}, "_validate_data": {"executed_lines": [192, 193, 194, 196, 197, 199], "summary": {"covered_lines": 6, "num_statements": 10, "percent_covered": 63.63636363636363, "percent_covered_display": "64", "missing_lines": 4, "excluded_lines": 0, "percent_statements_covered": 60.0, "percent_statements_covered_display": "60", "num_branches": 12, "num_partial_branches": 4, "covered_branches": 8, "missing_branches": 4, "percent_branches_covered": 66.66666666666667, "percent_branches_covered_display": "67"}, "missing_lines": [195, 198, 200, 204], "excluded_lines": [], "start_line": 191, "executed_branches": [[192, -191], [192, 193], [193, 194], [193, 196], [194, 192], [196, 197], [197, 199], [199, 192]], "missing_branches": [[194, 195], [196, 204], [197, 198], [199, 200]]}, "validate_data": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [213], "excluded_lines": [], "start_line": 212, "executed_branches": [], "missing_branches": []}, "_validate_xy": {"executed_lines": [217, 218, 220], "summary": {"covered_lines": 3, "num_statements": 4, "percent_covered": 66.66666666666667, "percent_covered_display": "67", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 75.0, "percent_statements_covered_display": "75", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [221], "excluded_lines": [], "start_line": 216, "executed_branches": [[220, -216]], "missing_branches": [[220, 221]]}, "validate_xy": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [233], "excluded_lines": [], "start_line": 232, "executed_branches": [], "missing_branches": []}, "_validate_visible": {"executed_lines": [241, 242, 243, 244, 249, 253], "summary": {"covered_lines": 6, "num_statements": 9, "percent_covered": 64.70588235294117, "percent_covered_display": "65", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 66.66666666666667, "percent_statements_covered_display": "67", "num_branches": 8, "num_partial_branches": 3, "covered_branches": 5, "missing_branches": 3, "percent_branches_covered": 62.5, "percent_branches_covered_display": "62"}, "missing_lines": [245, 250, 254], "excluded_lines": [], "start_line": 236, "executed_branches": [[241, 242], [241, 243], [244, 249], [249, 253], [253, -236]], "missing_branches": [[244, 245], [249, 250], [253, 254]]}, "_validate_detections_fields": {"executed_lines": [267, 268, 269, 270, 271, 272, 273], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 259, "executed_branches": [], "missing_branches": []}, "validate_detections_fields": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [289], "excluded_lines": [], "start_line": 281, "executed_branches": [], "missing_branches": []}, "_validate_keypoints_fields": {"executed_lines": [300, 301, 302, 303, 304, 305, 306, 307, 308, 309], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 92.85714285714286, "percent_covered_display": "93", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [], "excluded_lines": [], "start_line": 292, "executed_branches": [[305, 306], [305, 307], [308, 309]], "missing_branches": [[308, -292]]}, "validate_key_points_fields": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [320], "excluded_lines": [], "start_line": 317, "executed_branches": [], "missing_branches": []}, "validate_keypoints_fields": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [331], "excluded_lines": [], "start_line": 328, "executed_branches": [], "missing_branches": []}, "_validate_resolution": {"executed_lines": [335, 342, 343, 350, 351, 354], "summary": {"covered_lines": 6, "num_statements": 8, "percent_covered": 71.42857142857143, "percent_covered_display": "71", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 75.0, "percent_statements_covered_display": "75", "num_branches": 6, "num_partial_branches": 2, "covered_branches": 4, "missing_branches": 2, "percent_branches_covered": 66.66666666666667, "percent_branches_covered_display": "67"}, "missing_lines": [336, 344], "excluded_lines": [], "start_line": 334, "executed_branches": [[335, 342], [343, 350], [350, 351], [350, 354]], "missing_branches": [[335, 336], [343, 344]]}, "validate_resolution": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [363], "excluded_lines": [], "start_line": 362, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 6, 7, 10, 28, 33, 37, 75, 80, 84, 97, 102, 106, 120, 125, 129, 151, 156, 160, 165, 169, 182, 187, 191, 207, 212, 216, 227, 232, 236, 259, 276, 281, 292, 312, 317, 323, 328, 334, 357, 362], "summary": {"covered_lines": 43, "num_statements": 43, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 3, 4, 6, 7, 10, 18, 19, 20, 21, 22, 28, 33, 37, 38, 39, 43, 44, 45, 46, 48, 49, 50, 52, 55, 60, 61, 75, 80, 84, 85, 86, 87, 90, 97, 102, 106, 108, 109, 110, 113, 120, 125, 129, 131, 133, 134, 139, 144, 151, 156, 160, 165, 169, 170, 171, 172, 175, 182, 187, 191, 192, 193, 194, 196, 197, 199, 207, 212, 216, 217, 218, 220, 227, 232, 236, 241, 242, 243, 244, 249, 253, 259, 267, 268, 269, 270, 271, 272, 273, 276, 281, 292, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 312, 317, 323, 328, 334, 335, 342, 343, 350, 351, 354, 357, 362], "summary": {"covered_lines": 116, "num_statements": 146, "percent_covered": 76.47058823529412, "percent_covered_display": "76", "missing_lines": 30, "excluded_lines": 0, "percent_statements_covered": 79.45205479452055, "percent_statements_covered_display": "79", "num_branches": 58, "num_partial_branches": 18, "covered_branches": 40, "missing_branches": 18, "percent_branches_covered": 68.96551724137932, "percent_branches_covered_display": "69"}, "missing_lines": [34, 56, 81, 91, 103, 114, 126, 135, 140, 145, 157, 166, 176, 188, 195, 198, 200, 204, 213, 221, 233, 245, 250, 254, 289, 320, 331, 336, 344, 363], "excluded_lines": [], "start_line": 1, "executed_branches": [[21, -10], [21, 22], [38, 39], [38, 43], [43, 44], [43, 48], [44, 45], [44, 46], [55, 60], [60, -37], [60, 61], [90, -84], [113, -106], [133, -129], [133, 134], [134, 139], [139, 144], [144, -129], [175, -169], [192, -191], [192, 193], [193, 194], [193, 196], [194, 192], [196, 197], [197, 199], [199, 192], [220, -216], [241, 242], [241, 243], [244, 249], [249, 253], [253, -236], [305, 306], [305, 307], [308, 309], [335, 342], [343, 350], [350, 351], [350, 354]], "missing_branches": [[55, 56], [90, 91], [113, 114], [134, 135], [139, 140], [144, 145], [175, 176], [194, 195], [196, 204], [197, 198], [199, 200], [220, 221], [244, 245], [249, 250], [253, 254], [308, -292], [335, 336], [343, 344]]}}}, "tests\\__init__.py": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\annotators\\__init__.py": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\annotators\\test_core.py": {"executed_lines": [5, 7, 8, 10, 35, 36, 37, 38, 39, 40, 43, 44, 46, 49, 50, 52, 53, 54, 57, 58, 60, 61, 62, 63, 64, 67, 104, 107, 108, 109, 110, 111, 114, 122, 129, 130, 131, 132, 134, 142, 143, 146, 147, 149, 157, 161, 164, 165, 167, 175, 182, 184, 188, 193, 196, 199, 201, 202, 203, 204, 206, 208, 209, 210, 211, 214, 217, 219, 220, 221, 222, 224, 226, 227, 228, 229, 231, 233, 236, 239, 240, 242, 244, 247, 250, 252, 255, 258, 261, 264, 267, 269, 270, 271, 272, 274, 276, 277, 278, 279, 281, 283, 286, 289, 290, 293, 296, 298, 299, 300, 301, 303, 305, 306, 309, 310, 313, 316, 318, 319, 320, 321, 323, 325, 326, 327, 328, 330, 332, 335, 341, 342, 344, 346, 349, 352, 354, 360, 363, 366, 368, 370, 371, 372, 375, 376, 379, 382, 384, 385, 386, 387, 389, 391, 392, 393, 394, 395, 398, 401, 404, 405, 407, 409, 410, 411, 412, 414, 415, 416, 420, 421, 422, 425, 429, 430, 432, 434, 441, 442, 443, 445, 447, 448, 449, 451, 452, 453, 456, 459, 463, 464, 465, 468, 471, 484, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 498, 499, 500, 504, 507, 511, 512, 514, 516, 517, 518, 521, 522, 523, 525, 526, 530, 531, 533, 536, 539, 543, 544, 545, 546, 547, 548, 550, 552, 553, 554, 555, 557, 561, 562, 563, 564, 565, 567, 571, 572, 573, 574, 575, 576, 579, 582, 584, 585, 586, 587, 589, 591, 592, 595, 596, 599, 602, 604, 605, 606, 607, 609, 611, 612, 618, 619, 622, 625, 627, 628, 629, 630, 632, 634, 635, 638, 639, 642, 645, 647, 648, 649, 650, 652, 654, 655, 661, 662, 665, 668, 670, 671, 672, 673, 675, 677, 678, 679, 682, 685, 688, 690, 691, 692, 693, 695, 697, 698, 699, 702, 705, 708, 710, 711, 712, 713, 715, 717, 718, 719, 720, 722, 723, 725, 726, 728, 730, 731, 732, 733, 736, 739, 741, 742, 743, 744, 746, 748, 749, 750, 751, 753, 760, 762, 763, 764, 765, 767, 773, 775, 776, 777, 778, 780, 785, 786, 787, 788, 789, 791, 792, 794, 795, 797, 799, 800, 801, 802, 805, 808, 810, 811, 812, 813, 815, 817, 818, 821, 822, 825, 828, 830, 831, 832, 833, 835, 837, 838, 841, 842, 845, 848, 850, 851, 852, 853, 855, 857, 860, 861, 862, 865, 868, 870, 871, 872, 873, 875, 877, 878, 879, 880, 883, 886, 888, 889, 890, 891, 893, 895, 896, 897, 898, 899, 901, 903, 904, 905, 907, 908, 909, 911, 912, 913, 916, 919, 922, 924, 925, 926, 927, 930, 932, 934, 935, 936, 937, 938, 941, 944, 947, 954, 959, 960, 961, 962, 963, 965, 972, 973, 974, 975, 976, 977, 984, 987, 990, 992, 997, 1005, 1006, 1007, 1008, 1009, 1010, 1015, 1016, 1018, 1026, 1027, 1028, 1029, 1030, 1031, 1032, 1033, 1038, 1041, 1044, 1046, 1052, 1057, 1058, 1059, 1061, 1066, 1071, 1072, 1073, 1074, 1075], "summary": {"covered_lines": 509, "num_statements": 509, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 22, "num_partial_branches": 0, "covered_branches": 22, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [[61, 62], [61, 64], [62, 61], [62, 63], [108, -67], [108, 109], [491, 492], [491, 495], [961, 962], [961, 963], [976, 977], [976, 990], [1007, 1008], [1007, 1016], [1008, 1007], [1008, 1009], [1030, 1031], [1030, 1044], [1031, 1030], [1031, 1032], [1073, 1074], [1073, 1075]], "missing_branches": [], "functions": {"test_image": {"executed_lines": [46], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 44, "executed_branches": [], "missing_branches": []}, "test_mask": {"executed_lines": [52, 53, 54], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 50, "executed_branches": [], "missing_branches": []}, "gradient_image": {"executed_lines": [60, 61, 62, 63, 64], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 58, "executed_branches": [[61, 62], [61, 64], [62, 61], [62, 63]], "missing_branches": []}, "test_hex_color_support_across_annotators": {"executed_lines": [107, 108, 109, 110, 111], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 104, "executed_branches": [[108, -67], [108, 109]], "missing_branches": []}, "TestBoxAnnotator.test_annotate_with_no_detections": {"executed_lines": [129, 130, 131, 132], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 122, "executed_branches": [], "missing_branches": []}, "TestBoxAnnotator.test_annotate_with_single_detection": {"executed_lines": [142, 143, 146, 147], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 134, "executed_branches": [], "missing_branches": []}, "TestBoxAnnotator.test_annotate_with_multiple_detections": {"executed_lines": [157, 161, 164, 165], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 149, "executed_branches": [], "missing_branches": []}, "TestBoxAnnotator.test_annotate_with_numpy_color_lookup": {"executed_lines": [175, 182, 184, 188, 193], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 167, "executed_branches": [], "missing_branches": []}, "TestOrientedBoxAnnotator.test_annotate_with_no_detections": {"executed_lines": [201, 202, 203, 204], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 199, "executed_branches": [], "missing_branches": []}, "TestOrientedBoxAnnotator.test_annotate_without_oriented_boxes": {"executed_lines": [208, 209, 210, 211], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 206, "executed_branches": [], "missing_branches": []}, "TestMaskAnnotator.test_annotate_with_no_detections": {"executed_lines": [219, 220, 221, 222], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 217, "executed_branches": [], "missing_branches": []}, "TestMaskAnnotator.test_annotate_without_masks": {"executed_lines": [226, 227, 228, 229], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 224, "executed_branches": [], "missing_branches": []}, "TestMaskAnnotator.test_annotate_with_single_mask": {"executed_lines": [233, 236, 239, 240], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 231, "executed_branches": [], "missing_branches": []}, "TestMaskAnnotator.test_annotate_uint8_mask_matches_bool_mask": {"executed_lines": [244, 247, 250, 252, 255, 258, 261], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 242, "executed_branches": [], "missing_branches": []}, "TestPolygonAnnotator.test_annotate_with_no_detections": {"executed_lines": [269, 270, 271, 272], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 267, "executed_branches": [], "missing_branches": []}, "TestPolygonAnnotator.test_annotate_without_masks": {"executed_lines": [276, 277, 278, 279], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 274, "executed_branches": [], "missing_branches": []}, "TestPolygonAnnotator.test_annotate_with_single_mask": {"executed_lines": [283, 286, 289, 290], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 281, "executed_branches": [], "missing_branches": []}, "TestColorAnnotator.test_annotate_with_no_detections": {"executed_lines": [298, 299, 300, 301], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 296, "executed_branches": [], "missing_branches": []}, "TestColorAnnotator.test_annotate_with_single_detection": {"executed_lines": [305, 306, 309, 310], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 303, "executed_branches": [], "missing_branches": []}, "TestHaloAnnotator.test_annotate_with_no_detections": {"executed_lines": [318, 319, 320, 321], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 316, "executed_branches": [], "missing_branches": []}, "TestHaloAnnotator.test_annotate_without_masks": {"executed_lines": [325, 326, 327, 328], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 323, "executed_branches": [], "missing_branches": []}, "TestHaloAnnotator.test_annotate_with_single_mask": {"executed_lines": [332, 335, 341, 342], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 330, "executed_branches": [], "missing_branches": []}, "TestHaloAnnotator.test_annotate_uint8_mask_matches_bool_mask": {"executed_lines": [346, 349, 352, 354, 360, 363, 366], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 344, "executed_branches": [], "missing_branches": []}, "TestHaloAnnotator.test_annotate_with_all_false_mask_preserves_scene": {"executed_lines": [370, 371, 372, 375, 376], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 368, "executed_branches": [], "missing_branches": []}, "TestPaintMasksByArea.test_paint_masks_by_area_is_noop_without_masks": {"executed_lines": [384, 385, 386, 387], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 382, "executed_branches": [], "missing_branches": []}, "TestPaintMasksByArea.test_union_accumulation_dense": {"executed_lines": [391, 392, 393, 394, 395, 398, 401, 404, 405], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 389, "executed_branches": [], "missing_branches": []}, "TestPaintMasksByArea.test_union_accumulation_compact": {"executed_lines": [409, 410, 411, 412, 414, 415, 416, 420, 421, 422, 425, 429, 430, 432], "summary": {"covered_lines": 14, "num_statements": 14, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 407, "executed_branches": [], "missing_branches": []}, "TestPaintMasksByArea.test_compact_mask_drops_pixels_outside_bbox": {"executed_lines": [441, 442, 443, 445, 447, 448, 449, 451, 452, 453, 456, 459, 463, 464, 465], "summary": {"covered_lines": 15, "num_statements": 15, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 434, "executed_branches": [], "missing_branches": []}, "TestCompactMaskParity.test_annotator_compact_mask_matches_dense_mask": {"executed_lines": [486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 498, 499, 500, 504, 507, 511, 512], "summary": {"covered_lines": 18, "num_statements": 18, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 484, "executed_branches": [[491, 492], [491, 495]], "missing_branches": []}, "TestCompactMaskParity.test_annotator_compact_mask_handles_edge_clipping": {"executed_lines": [516, 517, 518, 521, 522, 523, 525, 526, 530, 531, 533], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 514, "executed_branches": [], "missing_branches": []}, "TestHeatMapAnnotator.test_annotate_with_no_detections_does_not_warn": {"executed_lines": [543, 544, 545, 546, 547, 548], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 539, "executed_branches": [], "missing_branches": []}, "TestHeatMapAnnotator.test_annotate_with_single_detection": {"executed_lines": [552, 553, 554, 555], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 550, "executed_branches": [], "missing_branches": []}, "TestHeatMapAnnotator.test_annotate_state_preserved_after_empty_call": {"executed_lines": [561, 562, 563, 564, 565], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 557, "executed_branches": [], "missing_branches": []}, "TestHeatMapAnnotator.test_annotate_empty_after_real_does_not_warn": {"executed_lines": [571, 572, 573, 574, 575, 576], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 567, "executed_branches": [], "missing_branches": []}, "TestEllipseAnnotator.test_annotate_with_no_detections": {"executed_lines": [584, 585, 586, 587], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 582, "executed_branches": [], "missing_branches": []}, "TestEllipseAnnotator.test_annotate_with_single_detection": {"executed_lines": [591, 592, 595, 596], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 589, "executed_branches": [], "missing_branches": []}, "TestBoxCornerAnnotator.test_annotate_with_no_detections": {"executed_lines": [604, 605, 606, 607], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 602, "executed_branches": [], "missing_branches": []}, "TestBoxCornerAnnotator.test_annotate_with_single_detection": {"executed_lines": [611, 612, 618, 619], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 609, "executed_branches": [], "missing_branches": []}, "TestCircleAnnotator.test_annotate_with_no_detections": {"executed_lines": [627, 628, 629, 630], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 625, "executed_branches": [], "missing_branches": []}, "TestCircleAnnotator.test_annotate_with_single_detection": {"executed_lines": [634, 635, 638, 639], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 632, "executed_branches": [], "missing_branches": []}, "TestDotAnnotator.test_annotate_with_no_detections": {"executed_lines": [647, 648, 649, 650], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 645, "executed_branches": [], "missing_branches": []}, "TestDotAnnotator.test_annotate_with_single_detection": {"executed_lines": [654, 655, 661, 662], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 652, "executed_branches": [], "missing_branches": []}, "TestLabelAnnotator.test_annotate_with_no_detections": {"executed_lines": [670, 671, 672, 673], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 668, "executed_branches": [], "missing_branches": []}, "TestLabelAnnotator.test_annotate_with_single_detection": {"executed_lines": [677, 678, 679, 682], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 675, "executed_branches": [], "missing_branches": []}, "TestRichLabelAnnotator.test_annotate_with_no_detections": {"executed_lines": [690, 691, 692, 693], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 688, "executed_branches": [], "missing_branches": []}, "TestRichLabelAnnotator.test_annotate_with_single_detection": {"executed_lines": [697, 698, 699, 702], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 695, "executed_branches": [], "missing_branches": []}, "TestBlurAnnotator.test_annotate_with_no_detections": {"executed_lines": [710, 711, 712, 713], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 708, "executed_branches": [], "missing_branches": []}, "TestBlurAnnotator.test_annotate_with_single_detection": {"executed_lines": [717, 718, 719, 720], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 715, "executed_branches": [], "missing_branches": []}, "TestBlurAnnotator.test_invalid_kernel_size_raises": {"executed_lines": [725, 726], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 723, "executed_branches": [], "missing_branches": []}, "TestBlurAnnotator.test_annotate_zero_area_bbox_is_skipped": {"executed_lines": [730, 731, 732, 733], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 728, "executed_branches": [], "missing_branches": []}, "TestPixelateAnnotator.test_annotate_with_no_detections": {"executed_lines": [741, 742, 743, 744], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 739, "executed_branches": [], "missing_branches": []}, "TestPixelateAnnotator.test_annotate_with_single_detection": {"executed_lines": [748, 749, 750, 751], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 746, "executed_branches": [], "missing_branches": []}, "TestPixelateAnnotator.test_annotate_bbox_smaller_than_pixel_size_does_not_raise": {"executed_lines": [760, 762, 763, 764, 765], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 753, "executed_branches": [], "missing_branches": []}, "TestPixelateAnnotator.test_annotate_grayscale_image_does_not_raise": {"executed_lines": [773, 775, 776, 777, 778], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 767, "executed_branches": [], "missing_branches": []}, "TestPixelateAnnotator.test_annotate_grayscale_image_small_roi_does_not_raise": {"executed_lines": [785, 786, 787, 788, 789], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 780, "executed_branches": [], "missing_branches": []}, "TestPixelateAnnotator.test_invalid_pixel_size_raises": {"executed_lines": [794, 795], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 792, "executed_branches": [], "missing_branches": []}, "TestPixelateAnnotator.test_annotate_zero_area_bbox_is_skipped": {"executed_lines": [799, 800, 801, 802], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 797, "executed_branches": [], "missing_branches": []}, "TestTriangleAnnotator.test_annotate_with_no_detections": {"executed_lines": [810, 811, 812, 813], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 808, "executed_branches": [], "missing_branches": []}, "TestTriangleAnnotator.test_annotate_with_single_detection": {"executed_lines": [817, 818, 821, 822], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 815, "executed_branches": [], "missing_branches": []}, "TestRoundBoxAnnotator.test_annotate_with_no_detections": {"executed_lines": [830, 831, 832, 833], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 828, "executed_branches": [], "missing_branches": []}, "TestRoundBoxAnnotator.test_annotate_with_single_detection": {"executed_lines": [837, 838, 841, 842], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 835, "executed_branches": [], "missing_branches": []}, "TestPercentageBarAnnotator.test_annotate_with_no_detections": {"executed_lines": [850, 851, 852, 853], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 848, "executed_branches": [], "missing_branches": []}, "TestPercentageBarAnnotator.test_annotate_with_single_detection": {"executed_lines": [857, 860, 861, 862], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 855, "executed_branches": [], "missing_branches": []}, "TestCropAnnotator.test_annotate_with_no_detections": {"executed_lines": [870, 871, 872, 873], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 868, "executed_branches": [], "missing_branches": []}, "TestCropAnnotator.test_annotate_with_single_detection": {"executed_lines": [877, 878, 879, 880], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 875, "executed_branches": [], "missing_branches": []}, "TestBackgroundOverlayAnnotator.test_annotate_with_no_detections": {"executed_lines": [888, 889, 890, 891], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 886, "executed_branches": [], "missing_branches": []}, "TestBackgroundOverlayAnnotator.test_annotate_with_single_detection": {"executed_lines": [895, 896, 897, 898, 899], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 893, "executed_branches": [], "missing_branches": []}, "TestBackgroundOverlayAnnotator.test_annotate_uint8_mask_matches_bool_mask": {"executed_lines": [903, 904, 905, 907, 908, 909, 911, 912, 913, 916], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 901, "executed_branches": [], "missing_branches": []}, "TestComparisonAnnotator.test_annotate_with_no_detections": {"executed_lines": [924, 925, 926, 927, 930], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 922, "executed_branches": [], "missing_branches": []}, "TestComparisonAnnotator.test_annotate_with_single_detection_each": {"executed_lines": [934, 935, 936, 937, 938, 941], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 932, "executed_branches": [], "missing_branches": []}, "TestTraceAnnotatorSmoothStationary.test_stationary_tracker_does_not_crash_spline_fit": {"executed_lines": [954, 959, 960, 961, 962, 963], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 947, "executed_branches": [[961, 962], [961, 963]], "missing_branches": []}, "TestTraceAnnotatorSmoothStationary.test_smooth_trace_still_renders_for_moving_tracker": {"executed_lines": [972, 973, 974, 975, 976, 977, 984, 987, 990], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 965, "executed_branches": [[976, 977], [976, 990]], "missing_branches": []}, "TestTraceAnnotatorSmoothStationary.test_smooth_does_not_crash_for_unique_point_counts": {"executed_lines": [1005, 1006, 1007, 1008, 1009, 1010, 1015, 1016], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 997, "executed_branches": [[1007, 1008], [1007, 1016], [1008, 1007], [1008, 1009]], "missing_branches": []}, "TestTraceAnnotatorSmoothStationary.test_smooth_fallback_matches_raw_when_fewer_than_four_unique_points": {"executed_lines": [1026, 1027, 1028, 1029, 1030, 1031, 1032, 1033, 1038, 1041, 1044], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1018, "executed_branches": [[1030, 1031], [1030, 1044], [1031, 1030], [1031, 1032]], "missing_branches": []}, "TestTraceAnnotatorSmoothStationary.test_smooth_true_single_frame_does_not_crash": {"executed_lines": [1052, 1057, 1058, 1059], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1046, "executed_branches": [], "missing_branches": []}, "TestTraceAnnotatorSmoothStationary.test_smooth_false_stationary_tracker_does_not_crash": {"executed_lines": [1066, 1071, 1072, 1073, 1074, 1075], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1061, "executed_branches": [[1073, 1074], [1073, 1075]], "missing_branches": []}, "": {"executed_lines": [5, 7, 8, 10, 35, 36, 37, 38, 39, 40, 43, 44, 49, 50, 57, 58, 67, 104, 114, 122, 134, 149, 167, 196, 199, 206, 214, 217, 224, 231, 242, 264, 267, 274, 281, 293, 296, 303, 313, 316, 323, 330, 344, 368, 379, 382, 389, 407, 434, 468, 471, 484, 514, 536, 539, 550, 557, 567, 579, 582, 589, 599, 602, 609, 622, 625, 632, 642, 645, 652, 665, 668, 675, 685, 688, 695, 705, 708, 715, 722, 723, 728, 736, 739, 746, 753, 767, 780, 791, 792, 797, 805, 808, 815, 825, 828, 835, 845, 848, 855, 865, 868, 875, 883, 886, 893, 901, 919, 922, 932, 944, 947, 965, 992, 997, 1018, 1046, 1061], "summary": {"covered_lines": 118, "num_statements": 118, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"TestBoxAnnotator": {"executed_lines": [129, 130, 131, 132, 142, 143, 146, 147, 157, 161, 164, 165, 175, 182, 184, 188, 193], "summary": {"covered_lines": 17, "num_statements": 17, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 114, "executed_branches": [], "missing_branches": []}, "TestOrientedBoxAnnotator": {"executed_lines": [201, 202, 203, 204, 208, 209, 210, 211], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 196, "executed_branches": [], "missing_branches": []}, "TestMaskAnnotator": {"executed_lines": [219, 220, 221, 222, 226, 227, 228, 229, 233, 236, 239, 240, 244, 247, 250, 252, 255, 258, 261], "summary": {"covered_lines": 19, "num_statements": 19, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 214, "executed_branches": [], "missing_branches": []}, "TestPolygonAnnotator": {"executed_lines": [269, 270, 271, 272, 276, 277, 278, 279, 283, 286, 289, 290], "summary": {"covered_lines": 12, "num_statements": 12, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 264, "executed_branches": [], "missing_branches": []}, "TestColorAnnotator": {"executed_lines": [298, 299, 300, 301, 305, 306, 309, 310], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 293, "executed_branches": [], "missing_branches": []}, "TestHaloAnnotator": {"executed_lines": [318, 319, 320, 321, 325, 326, 327, 328, 332, 335, 341, 342, 346, 349, 352, 354, 360, 363, 366, 370, 371, 372, 375, 376], "summary": {"covered_lines": 24, "num_statements": 24, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 313, "executed_branches": [], "missing_branches": []}, "TestPaintMasksByArea": {"executed_lines": [384, 385, 386, 387, 391, 392, 393, 394, 395, 398, 401, 404, 405, 409, 410, 411, 412, 414, 415, 416, 420, 421, 422, 425, 429, 430, 432, 441, 442, 443, 445, 447, 448, 449, 451, 452, 453, 456, 459, 463, 464, 465], "summary": {"covered_lines": 42, "num_statements": 42, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 379, "executed_branches": [], "missing_branches": []}, "TestCompactMaskParity": {"executed_lines": [486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 498, 499, 500, 504, 507, 511, 512, 516, 517, 518, 521, 522, 523, 525, 526, 530, 531, 533], "summary": {"covered_lines": 29, "num_statements": 29, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 468, "executed_branches": [[491, 492], [491, 495]], "missing_branches": []}, "TestHeatMapAnnotator": {"executed_lines": [543, 544, 545, 546, 547, 548, 552, 553, 554, 555, 561, 562, 563, 564, 565, 571, 572, 573, 574, 575, 576], "summary": {"covered_lines": 21, "num_statements": 21, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 536, "executed_branches": [], "missing_branches": []}, "TestEllipseAnnotator": {"executed_lines": [584, 585, 586, 587, 591, 592, 595, 596], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 579, "executed_branches": [], "missing_branches": []}, "TestBoxCornerAnnotator": {"executed_lines": [604, 605, 606, 607, 611, 612, 618, 619], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 599, "executed_branches": [], "missing_branches": []}, "TestCircleAnnotator": {"executed_lines": [627, 628, 629, 630, 634, 635, 638, 639], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 622, "executed_branches": [], "missing_branches": []}, "TestDotAnnotator": {"executed_lines": [647, 648, 649, 650, 654, 655, 661, 662], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 642, "executed_branches": [], "missing_branches": []}, "TestLabelAnnotator": {"executed_lines": [670, 671, 672, 673, 677, 678, 679, 682], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 665, "executed_branches": [], "missing_branches": []}, "TestRichLabelAnnotator": {"executed_lines": [690, 691, 692, 693, 697, 698, 699, 702], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 685, "executed_branches": [], "missing_branches": []}, "TestBlurAnnotator": {"executed_lines": [710, 711, 712, 713, 717, 718, 719, 720, 725, 726, 730, 731, 732, 733], "summary": {"covered_lines": 14, "num_statements": 14, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 705, "executed_branches": [], "missing_branches": []}, "TestPixelateAnnotator": {"executed_lines": [741, 742, 743, 744, 748, 749, 750, 751, 760, 762, 763, 764, 765, 773, 775, 776, 777, 778, 785, 786, 787, 788, 789, 794, 795, 799, 800, 801, 802], "summary": {"covered_lines": 29, "num_statements": 29, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 736, "executed_branches": [], "missing_branches": []}, "TestTriangleAnnotator": {"executed_lines": [810, 811, 812, 813, 817, 818, 821, 822], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 805, "executed_branches": [], "missing_branches": []}, "TestRoundBoxAnnotator": {"executed_lines": [830, 831, 832, 833, 837, 838, 841, 842], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 825, "executed_branches": [], "missing_branches": []}, "TestPercentageBarAnnotator": {"executed_lines": [850, 851, 852, 853, 857, 860, 861, 862], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 845, "executed_branches": [], "missing_branches": []}, "TestCropAnnotator": {"executed_lines": [870, 871, 872, 873, 877, 878, 879, 880], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 865, "executed_branches": [], "missing_branches": []}, "TestBackgroundOverlayAnnotator": {"executed_lines": [888, 889, 890, 891, 895, 896, 897, 898, 899, 903, 904, 905, 907, 908, 909, 911, 912, 913, 916], "summary": {"covered_lines": 19, "num_statements": 19, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 883, "executed_branches": [], "missing_branches": []}, "TestComparisonAnnotator": {"executed_lines": [924, 925, 926, 927, 930, 934, 935, 936, 937, 938, 941], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 919, "executed_branches": [], "missing_branches": []}, "TestTraceAnnotatorSmoothStationary": {"executed_lines": [954, 959, 960, 961, 962, 963, 972, 973, 974, 975, 976, 977, 984, 987, 990, 1005, 1006, 1007, 1008, 1009, 1010, 1015, 1016, 1026, 1027, 1028, 1029, 1030, 1031, 1032, 1033, 1038, 1041, 1044, 1052, 1057, 1058, 1059, 1066, 1071, 1072, 1073, 1074, 1075], "summary": {"covered_lines": 44, "num_statements": 44, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 14, "num_partial_branches": 0, "covered_branches": 14, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 944, "executed_branches": [[961, 962], [961, 963], [976, 977], [976, 990], [1007, 1008], [1007, 1016], [1008, 1007], [1008, 1009], [1030, 1031], [1030, 1044], [1031, 1030], [1031, 1032], [1073, 1074], [1073, 1075]], "missing_branches": []}, "": {"executed_lines": [5, 7, 8, 10, 35, 36, 37, 38, 39, 40, 43, 44, 46, 49, 50, 52, 53, 54, 57, 58, 60, 61, 62, 63, 64, 67, 104, 107, 108, 109, 110, 111, 114, 122, 134, 149, 167, 196, 199, 206, 214, 217, 224, 231, 242, 264, 267, 274, 281, 293, 296, 303, 313, 316, 323, 330, 344, 368, 379, 382, 389, 407, 434, 468, 471, 484, 514, 536, 539, 550, 557, 567, 579, 582, 589, 599, 602, 609, 622, 625, 632, 642, 645, 652, 665, 668, 675, 685, 688, 695, 705, 708, 715, 722, 723, 728, 736, 739, 746, 753, 767, 780, 791, 792, 797, 805, 808, 815, 825, 828, 835, 845, 848, 855, 865, 868, 875, 883, 886, 893, 901, 919, 922, 932, 944, 947, 965, 992, 997, 1018, 1046, 1061], "summary": {"covered_lines": 132, "num_statements": 132, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 6, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [[61, 62], [61, 64], [62, 61], [62, 63], [108, -67], [108, 109]], "missing_branches": []}}}, "tests\\annotators\\test_docs.py": {"executed_lines": [3, 4, 5, 7, 9, 10, 11, 13, 15, 38, 45, 46, 48, 49, 51, 52, 58, 59, 64, 70, 72, 73, 75, 76, 77, 78, 80, 81, 82, 83, 84, 85, 88, 95, 96, 97, 100, 108, 110, 114, 115, 118, 124, 125, 127, 129, 130, 131, 132, 133], "summary": {"covered_lines": 50, "num_statements": 56, "percent_covered": 82.05128205128206, "percent_covered_display": "82", "missing_lines": 6, "excluded_lines": 0, "percent_statements_covered": 89.28571428571429, "percent_statements_covered_display": "89", "num_branches": 22, "num_partial_branches": 4, "covered_branches": 14, "missing_branches": 8, "percent_branches_covered": 63.63636363636363, "percent_branches_covered_display": "64"}, "missing_lines": [53, 60, 65, 135, 136, 144], "excluded_lines": [], "executed_branches": [[10, 11], [10, 13], [52, 58], [59, 64], [64, 70], [75, 76], [75, 85], [76, 75], [76, 77], [80, 81], [80, 83], [83, 84], [129, -118], [129, 130]], "missing_branches": [[52, 53], [59, 60], [64, 65], [83, 75], [135, 129], [135, 136], [136, 135], [136, 144]], "functions": {"_extract_annotator_tab_groups": {"executed_lines": [45, 46, 48, 49, 51, 52, 58, 59, 64, 70, 72, 73, 75, 76, 77, 78, 80, 81, 82, 83, 84, 85], "summary": {"covered_lines": 22, "num_statements": 25, "percent_covered": 82.05128205128206, "percent_covered_display": "82", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 88.0, "percent_statements_covered_display": "88", "num_branches": 14, "num_partial_branches": 4, "covered_branches": 10, "missing_branches": 4, "percent_branches_covered": 71.42857142857143, "percent_branches_covered_display": "71"}, "missing_lines": [53, 60, 65], "excluded_lines": [], "start_line": 38, "executed_branches": [[52, 58], [59, 64], [64, 70], [75, 76], [75, 85], [76, 75], [76, 77], [80, 81], [80, 83], [83, 84]], "missing_branches": [[52, 53], [59, 60], [64, 65], [83, 75]]}, "test_all_expected_annotators_have_tab_entries": {"executed_lines": [95, 96, 97, 100], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 88, "executed_branches": [], "missing_branches": []}, "test_annotator_example_tab_groups_stay_within_material_limit": {"executed_lines": [110, 114, 115], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 108, "executed_branches": [], "missing_branches": []}, "test_annotator_code_examples_have_no_tuple_assignment": {"executed_lines": [124, 125, 127, 129, 130, 131, 132, 133], "summary": {"covered_lines": 8, "num_statements": 11, "percent_covered": 58.8235294117647, "percent_covered_display": "59", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 72.72727272727273, "percent_statements_covered_display": "73", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 4, "percent_branches_covered": 33.333333333333336, "percent_branches_covered_display": "33"}, "missing_lines": [135, 136, 144], "excluded_lines": [], "start_line": 118, "executed_branches": [[129, -118], [129, 130]], "missing_branches": [[135, 129], [135, 136], [136, 135], [136, 144]]}, "": {"executed_lines": [3, 4, 5, 7, 9, 10, 11, 13, 15, 38, 88, 108, 118], "summary": {"covered_lines": 13, "num_statements": 13, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [[10, 11], [10, 13]], "missing_branches": []}}, "classes": {"": {"executed_lines": [3, 4, 5, 7, 9, 10, 11, 13, 15, 38, 45, 46, 48, 49, 51, 52, 58, 59, 64, 70, 72, 73, 75, 76, 77, 78, 80, 81, 82, 83, 84, 85, 88, 95, 96, 97, 100, 108, 110, 114, 115, 118, 124, 125, 127, 129, 130, 131, 132, 133], "summary": {"covered_lines": 50, "num_statements": 56, "percent_covered": 82.05128205128206, "percent_covered_display": "82", "missing_lines": 6, "excluded_lines": 0, "percent_statements_covered": 89.28571428571429, "percent_statements_covered_display": "89", "num_branches": 22, "num_partial_branches": 4, "covered_branches": 14, "missing_branches": 8, "percent_branches_covered": 63.63636363636363, "percent_branches_covered_display": "64"}, "missing_lines": [53, 60, 65, 135, 136, 144], "excluded_lines": [], "start_line": 1, "executed_branches": [[10, 11], [10, 13], [52, 58], [59, 64], [64, 70], [75, 76], [75, 85], [76, 75], [76, 77], [80, 81], [80, 83], [83, 84], [129, -118], [129, 130]], "missing_branches": [[52, 53], [59, 60], [64, 65], [83, 75], [135, 129], [135, 136], [136, 135], [136, 144]]}}}, "tests\\annotators\\test_utils.py": {"executed_lines": [1, 3, 5, 6, 8, 16, 17, 20, 104, 111, 112, 117, 120, 173, 179, 180, 181, 184, 195, 198, 201, 202, 203, 204, 207, 216, 217, 220, 229, 230, 231, 234, 247, 248], "summary": {"covered_lines": 34, "num_statements": 34, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"test_resolve_color_idx": {"executed_lines": [111, 112, 117], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 104, "executed_branches": [], "missing_branches": []}, "test_wrap_text": {"executed_lines": [179, 180, 181], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 173, "executed_branches": [], "missing_branches": []}, "test_hex_to_rgba_valid": {"executed_lines": [198], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 195, "executed_branches": [], "missing_branches": []}, "test_hex_to_rgba_invalid": {"executed_lines": [203, 204], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 202, "executed_branches": [], "missing_branches": []}, "test_rgba_to_hex": {"executed_lines": [217], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 216, "executed_branches": [], "missing_branches": []}, "test_rgba_to_hex_invalid": {"executed_lines": [230, 231], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 229, "executed_branches": [], "missing_branches": []}, "test_is_valid_hex": {"executed_lines": [248], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 247, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 5, 6, 8, 16, 17, 20, 104, 120, 173, 184, 195, 201, 202, 207, 216, 220, 229, 234, 247], "summary": {"covered_lines": 21, "num_statements": 21, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 3, 5, 6, 8, 16, 17, 20, 104, 111, 112, 117, 120, 173, 179, 180, 181, 184, 195, 198, 201, 202, 203, 204, 207, 216, 217, 220, 229, 230, 231, 234, 247, 248], "summary": {"covered_lines": 34, "num_statements": 34, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\assets\\__init__.py": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\assets\\test_downloader.py": {"executed_lines": [1, 3, 5, 6, 9, 10, 12, 13, 15, 19, 21, 23, 24, 26, 30, 32, 34, 35, 38, 39, 40, 41, 42, 44, 45, 46, 47, 49, 50, 51, 55, 56, 60, 61, 62, 63, 64, 66, 67, 68, 69, 70, 71, 72, 73, 84, 86, 87, 88, 89, 90, 92, 95, 97, 98, 99, 100, 101, 102, 104, 105, 107, 109, 110, 112, 113, 115, 116, 118, 120, 121, 123, 124, 126, 127, 128, 129, 130, 131, 132, 133, 144, 146, 147, 148, 149, 150, 152, 153, 155, 156, 157, 159, 160, 161, 162, 163, 164, 165, 166, 177, 179, 180, 181, 182, 183, 185, 186, 188, 189, 190], "summary": {"covered_lines": 111, "num_statements": 111, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"TestMD5HashMatching.test_file_exists_matching_hash": {"executed_lines": [12, 13, 15, 19], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 10, "executed_branches": [], "missing_branches": []}, "TestMD5HashMatching.test_file_exists_not_matching_hash": {"executed_lines": [23, 24, 26, 30], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 21, "executed_branches": [], "missing_branches": []}, "TestMD5HashMatching.test_file_not_exists": {"executed_lines": [34, 35], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 32, "executed_branches": [], "missing_branches": []}, "TestDownloadAssets.test_already_exists_and_valid": {"executed_lines": [44, 45, 46, 47], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 42, "executed_branches": [], "missing_branches": []}, "TestDownloadAssets.test_already_exists_but_corrupted": {"executed_lines": [60, 61, 62, 63, 64], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 56, "executed_branches": [], "missing_branches": []}, "TestDownloadAssets.test_download_new_file": {"executed_lines": [84, 86, 87, 88, 89, 90, 92, 95, 97, 98, 99, 100, 101, 102], "summary": {"covered_lines": 14, "num_statements": 14, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 73, "executed_branches": [], "missing_branches": []}, "TestDownloadAssets.test_invalid_asset": {"executed_lines": [107, 109, 110, 112, 113], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 105, "executed_branches": [], "missing_branches": []}, "TestDownloadAssets.test_invalid_asset_when_file_exists": {"executed_lines": [118, 120, 121, 123, 124], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 116, "executed_branches": [], "missing_branches": []}, "TestDownloadAssets.test_with_video_enum": {"executed_lines": [144, 146, 147, 148, 149, 150, 152, 153, 155, 156, 157], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 133, "executed_branches": [], "missing_branches": []}, "TestDownloadAssets.test_with_image_enum": {"executed_lines": [177, 179, 180, 181, 182, 183, 185, 186, 188, 189, 190], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 166, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 5, 6, 9, 10, 21, 32, 38, 39, 40, 41, 42, 49, 50, 51, 55, 56, 66, 67, 68, 69, 70, 71, 72, 73, 104, 105, 115, 116, 126, 127, 128, 129, 130, 131, 132, 133, 159, 160, 161, 162, 163, 164, 165, 166], "summary": {"covered_lines": 46, "num_statements": 46, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"TestMD5HashMatching": {"executed_lines": [12, 13, 15, 19, 23, 24, 26, 30, 34, 35], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 9, "executed_branches": [], "missing_branches": []}, "TestDownloadAssets": {"executed_lines": [44, 45, 46, 47, 60, 61, 62, 63, 64, 84, 86, 87, 88, 89, 90, 92, 95, 97, 98, 99, 100, 101, 102, 107, 109, 110, 112, 113, 118, 120, 121, 123, 124, 144, 146, 147, 148, 149, 150, 152, 153, 155, 156, 157, 177, 179, 180, 181, 182, 183, 185, 186, 188, 189, 190], "summary": {"covered_lines": 55, "num_statements": 55, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 38, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 5, 6, 9, 10, 21, 32, 38, 39, 40, 41, 42, 49, 50, 51, 55, 56, 66, 67, 68, 69, 70, 71, 72, 73, 104, 105, 115, 116, 126, 127, 128, 129, 130, 131, 132, 133, 159, 160, 161, 162, 163, 164, 165, 166], "summary": {"covered_lines": 46, "num_statements": 46, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\assets\\test_list.py": {"executed_lines": [1, 10, 12, 24, 27, 29, 33, 36, 38, 39, 40, 43, 45, 46, 47, 50, 52, 55, 58, 60, 61, 62, 63, 64, 65, 66, 67, 68], "summary": {"covered_lines": 28, "num_statements": 28, "percent_covered": 97.05882352941177, "percent_covered_display": "97", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 1, "covered_branches": 5, "missing_branches": 1, "percent_branches_covered": 83.33333333333333, "percent_branches_covered_display": "83"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [[60, -58], [60, 61], [62, 63], [62, 64], [64, 65]], "missing_branches": [[64, 66]], "functions": {"test_video_assets_list": {"executed_lines": [12, 24], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 10, "executed_branches": [], "missing_branches": []}, "test_image_assets_list": {"executed_lines": [29, 33], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 27, "executed_branches": [], "missing_branches": []}, "test_video_assets_values": {"executed_lines": [38, 39, 40], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 36, "executed_branches": [], "missing_branches": []}, "test_image_assets_values": {"executed_lines": [45, 46, 47], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 43, "executed_branches": [], "missing_branches": []}, "test_media_assets_dict_keys": {"executed_lines": [52, 55], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 50, "executed_branches": [], "missing_branches": []}, "test_media_assets_dict_values": {"executed_lines": [60, 61, 62, 63, 64, 65, 66, 67, 68], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 93.33333333333333, "percent_covered_display": "93", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 1, "covered_branches": 5, "missing_branches": 1, "percent_branches_covered": 83.33333333333333, "percent_branches_covered_display": "83"}, "missing_lines": [], "excluded_lines": [], "start_line": 58, "executed_branches": [[60, -58], [60, 61], [62, 63], [62, 64], [64, 65]], "missing_branches": [[64, 66]]}, "": {"executed_lines": [1, 10, 27, 36, 43, 50, 58], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 10, 12, 24, 27, 29, 33, 36, 38, 39, 40, 43, 45, 46, 47, 50, 52, 55, 58, 60, 61, 62, 63, 64, 65, 66, 67, 68], "summary": {"covered_lines": 28, "num_statements": 28, "percent_covered": 97.05882352941177, "percent_covered_display": "97", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 1, "covered_branches": 5, "missing_branches": 1, "percent_branches_covered": 83.33333333333333, "percent_branches_covered_display": "83"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [[60, -58], [60, 61], [62, 63], [62, 64], [64, 65]], "missing_branches": [[64, 66]]}}}, "tests\\classification\\__init__.py": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\classification\\test_core.py": {"executed_lines": [1, 3, 5, 6, 8, 11, 12, 13, 15, 16, 18, 19, 21, 22, 24, 25, 28, 68, 75, 76, 80, 81, 84, 85, 87, 88, 89, 92, 93, 95, 96, 97], "summary": {"covered_lines": 32, "num_statements": 32, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"_MockTensor.__init__": {"executed_lines": [13], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 12, "executed_branches": [], "missing_branches": []}, "_MockTensor.softmax": {"executed_lines": [16], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 15, "executed_branches": [], "missing_branches": []}, "_MockTensor.cpu": {"executed_lines": [19], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 18, "executed_branches": [], "missing_branches": []}, "_MockTensor.detach": {"executed_lines": [22], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 21, "executed_branches": [], "missing_branches": []}, "_MockTensor.numpy": {"executed_lines": [25], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 24, "executed_branches": [], "missing_branches": []}, "test_top_k": {"executed_lines": [75, 76, 80, 81], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 68, "executed_branches": [], "missing_branches": []}, "test_from_clip_empty_output_dtypes": {"executed_lines": [85, 87, 88, 89], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 84, "executed_branches": [], "missing_branches": []}, "test_from_timm_empty_output_dtypes": {"executed_lines": [93, 95, 96, 97], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 92, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 5, 6, 8, 11, 12, 15, 18, 21, 24, 28, 68, 84, 92], "summary": {"covered_lines": 15, "num_statements": 15, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"_MockTensor": {"executed_lines": [13, 16, 19, 22, 25], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 11, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 5, 6, 8, 11, 12, 15, 18, 21, 24, 28, 68, 75, 76, 80, 81, 84, 85, 87, 88, 89, 92, 93, 95, 96, 97], "summary": {"covered_lines": 27, "num_statements": 27, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\conftest.py": {"executed_lines": [1, 2, 3, 5, 7, 8, 11, 12, 13, 16, 17, 18, 67, 68, 69], "summary": {"covered_lines": 15, "num_statements": 15, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"scene": {"executed_lines": [13], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 12, "executed_branches": [], "missing_branches": []}, "sample_key_points": {"executed_lines": [18], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 17, "executed_branches": [], "missing_branches": []}, "empty_key_points": {"executed_lines": [69], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 68, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 2, 3, 5, 7, 8, 11, 12, 16, 17, 67, 68], "summary": {"covered_lines": 12, "num_statements": 12, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 2, 3, 5, 7, 8, 11, 12, 13, 16, 17, 18, 67, 68, 69], "summary": {"covered_lines": 15, "num_statements": 15, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\dataset\\__init__.py": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\dataset\\formats\\__init__.py": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\dataset\\formats\\test_coco.py": {"executed_lines": [1, 3, 4, 5, 7, 8, 9, 11, 12, 25, 34, 35, 36, 47, 49, 50, 51, 52, 55, 56, 57, 110, 111, 112, 132, 172, 175, 176, 177, 180, 188, 191, 192, 193, 194, 197, 248, 251, 252, 253, 256, 760, 768, 769, 775, 778, 824, 830, 831, 834, 837, 952, 959, 960, 965, 968, 969, 986, 987, 994, 995, 996, 999, 1012, 1026, 1028, 1029, 1037, 1044, 1048, 1052, 1053, 1054, 1055, 1056, 1057, 1060, 1062, 1063, 1068, 1070, 1073, 1075, 1081, 1087, 1088, 1089, 1090, 1093, 1097, 1103, 1109, 1110, 1111, 1112, 1115, 1117, 1118, 1120, 1126, 1132, 1133, 1134, 1137, 1139, 1140, 1142, 1149, 1155, 1156, 1159, 1161, 1166, 1172, 1173, 1174, 1177, 1180, 1181, 1182, 1184, 1188, 1195, 1196, 1198, 1199, 1200, 1201, 1202, 1204, 1207, 1208, 1209, 1210, 1212, 1213, 1214, 1215, 1219, 1220, 1223, 1226, 1227, 1228, 1230, 1235, 1241, 1242, 1243, 1244, 1246, 1247, 1250, 1254, 1259, 1260, 1261, 1263, 1268, 1270, 1271, 1277, 1285, 1290, 1291, 1292, 1294, 1306, 1308, 1309, 1315, 1317, 1318, 1319, 1321, 1333, 1335, 1336, 1342, 1346, 1347, 1348, 1349, 1351, 1356, 1358, 1359, 1365, 1367, 1368, 1369, 1370, 1372, 1377, 1379, 1383, 1384, 1387, 1390, 1391, 1392, 1394, 1408, 1410, 1416, 1417, 1418, 1419, 1420, 1421, 1424, 1425, 1426, 1460, 1463, 1464, 1471, 1472, 1473, 1475, 1479, 1485, 1486, 1487, 1488, 1504, 1506, 1507, 1508, 1510, 1530, 1532, 1537, 1538, 1539, 1545, 1553, 1557, 1559, 1562, 1564, 1569, 1575, 1578, 1583, 1584, 1585, 1586, 1587, 1588, 1589, 1590, 1591, 1595, 1596, 1597, 1601, 1602, 1605, 1606, 1607, 1608, 1611, 1615, 1616, 1617, 1618, 1619, 1625, 1631, 1632, 1633, 1634, 1635, 1636, 1637, 1638, 1642, 1647, 1652, 1653, 1654, 1655, 1656, 1657, 1660, 1661, 1662, 1664, 1668, 1669, 1670, 1672, 1673, 1676, 1677, 1678, 1680, 1687, 1688, 1689, 1690, 1691, 1694, 1697, 1698, 1699, 1701, 1702, 1703, 1705, 1706, 1711, 1717, 1718, 1719, 1720, 1721, 1722, 1724, 1727, 1731, 1732, 1735, 1738, 1739, 1741, 1748, 1749, 1750, 1751, 1752, 1755, 1758, 1759, 1764, 1765, 1768, 1771, 1772, 1774, 1781, 1782, 1783, 1784, 1785, 1790, 1793, 1794, 1796, 1800, 1801, 1802, 1803, 1804, 1810, 1813, 1814, 1815, 1816, 1818, 1843, 1844, 1846, 1851, 1852, 1853, 1854, 1860, 1868, 1872, 1873, 1875, 1876, 1887, 1889, 1894, 1895, 1905, 1907, 1908, 1910, 1921, 1922, 1924, 1925, 1926, 1928, 1932, 1933, 1934, 1940, 1945, 1955, 1956, 1965, 1968, 1969, 1970, 1972, 1978, 1981, 1982, 1984, 1985, 1988, 2007, 2021, 2022, 2024, 2025, 2028, 2029, 2041, 2047, 2048, 2050, 2051, 2054, 2055, 2056, 2057, 2060, 2064, 2069, 2074, 2076, 2079, 2082, 2083, 2086, 2088, 2089, 2090, 2092, 2097, 2100, 2101, 2102, 2103, 2104], "summary": {"covered_lines": 441, "num_statements": 441, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 12, "num_partial_branches": 0, "covered_branches": 12, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [[34, 35], [34, 36], [50, 51], [50, 52], [1587, 1588], [1587, 1597], [1616, -1578], [1616, 1617], [1634, 1635], [1634, 1647], [1719, 1720], [1719, 1724]], "missing_branches": [], "functions": {"mock_coco_annotation": {"executed_lines": [34, 35, 36], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 25, "executed_branches": [[34, 35], [34, 36]], "missing_branches": []}, "_empty_raw_segs": {"executed_lines": [49, 50, 51, 52], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 47, "executed_branches": [[50, 51], [50, 52]], "missing_branches": []}, "coco_data_with_and_without_segmentation": {"executed_lines": [57], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 56, "executed_branches": [], "missing_branches": []}, "coco_data_with_unannotated_image": {"executed_lines": [112], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 111, "executed_branches": [], "missing_branches": []}, "test_coco_categories_to_classes": {"executed_lines": [175, 176, 177], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 172, "executed_branches": [], "missing_branches": []}, "test_classes_to_coco_categories_and_back_to_classes": {"executed_lines": [191, 192, 193, 194], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 188, "executed_branches": [], "missing_branches": []}, "test_group_coco_annotations_by_image_id": {"executed_lines": [251, 252, 253], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 248, "executed_branches": [], "missing_branches": []}, "test_coco_annotations_to_detections": {"executed_lines": [768, 769, 775], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 760, "executed_branches": [], "missing_branches": []}, "test_build_coco_class_index_mapping": {"executed_lines": [830, 831, 834], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 824, "executed_branches": [], "missing_branches": []}, "test_detections_to_coco_annotations": {"executed_lines": [959, 960, 965], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 952, "executed_branches": [], "missing_branches": []}, "test_detections_to_coco_annotations_handles_empty_approximated_polygons": {"executed_lines": [969, 986, 987, 994, 995, 996], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 968, "executed_branches": [], "missing_branches": []}, "_make_iscrowd0_detections": {"executed_lines": [1028, 1029], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1026, "executed_branches": [], "missing_branches": []}, "test_detections_to_coco_annotations_segmentation_count": {"executed_lines": [1048, 1052, 1053, 1054, 1055, 1056, 1057], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1044, "executed_branches": [], "missing_branches": []}, "test_detections_to_coco_annotations_round_trip_disjoint_mask": {"executed_lines": [1062, 1063, 1068, 1070], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1060, "executed_branches": [], "missing_branches": []}, "test_detections_to_coco_annotations_preserves_area_from_data": {"executed_lines": [1075, 1081, 1087, 1088, 1089, 1090], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1073, "executed_branches": [], "missing_branches": []}, "test_detections_to_coco_annotations_preserves_iscrowd_from_data_when_no_mask": {"executed_lines": [1097, 1103, 1109, 1110, 1111, 1112], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1093, "executed_branches": [], "missing_branches": []}, "test_detections_to_coco_annotations_iscrowd_is_int_when_mask_provided": {"executed_lines": [1117, 1118, 1120, 1126, 1132, 1133, 1134], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1115, "executed_branches": [], "missing_branches": []}, "test_detections_to_coco_annotations_data_area_overrides_bbox_with_mask": {"executed_lines": [1139, 1140, 1142, 1149, 1155, 1156], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1137, "executed_branches": [], "missing_branches": []}, "test_detections_to_coco_annotations_fallback_area_when_no_data": {"executed_lines": [1161, 1166, 1172, 1173, 1174], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1159, "executed_branches": [], "missing_branches": []}, "test_load_coco_annotations_infers_masks_from_segmentation_field": {"executed_lines": [1180, 1181, 1182, 1184, 1188, 1195, 1196, 1198, 1199, 1200, 1201, 1202, 1204, 1207, 1208, 1209, 1210, 1212, 1213, 1214, 1215, 1219, 1220], "summary": {"covered_lines": 23, "num_statements": 23, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1177, "executed_branches": [], "missing_branches": []}, "test_load_coco_annotations_force_masks_with_no_annotations": {"executed_lines": [1226, 1227, 1228, 1230, 1235, 1241, 1242, 1243, 1244, 1246, 1247], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1223, "executed_branches": [], "missing_branches": []}, "test_load_coco_annotations_rejects_file_name_resolving_to_images_directory": {"executed_lines": [1259, 1260, 1261, 1263, 1268, 1270, 1271], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1254, "executed_branches": [], "missing_branches": []}, "test_load_coco_annotations_rejects_file_name_outside_images_directory": {"executed_lines": [1290, 1291, 1292, 1294, 1306, 1308, 1309], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1285, "executed_branches": [], "missing_branches": []}, "test_load_coco_annotations_rejects_absolute_file_name": {"executed_lines": [1317, 1318, 1319, 1321, 1333, 1335, 1336], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1315, "executed_branches": [], "missing_branches": []}, "test_load_coco_annotations_rejects_file_name_resolving_to_directory": {"executed_lines": [1346, 1347, 1348, 1349, 1351, 1356, 1358, 1359], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1342, "executed_branches": [], "missing_branches": []}, "test_load_coco_annotations_accepts_valid_nested_file_name": {"executed_lines": [1367, 1368, 1369, 1370, 1372, 1377, 1379, 1383, 1384], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1365, "executed_branches": [], "missing_branches": []}, "test_load_coco_annotations_force_masks_handles_missing_segmentation": {"executed_lines": [1390, 1391, 1392, 1394, 1408, 1410, 1416, 1417, 1418, 1419, 1420, 1421], "summary": {"covered_lines": 12, "num_statements": 12, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1387, "executed_branches": [], "missing_branches": []}, "coco_data_with_multi_segment_segmentation": {"executed_lines": [1426], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1425, "executed_branches": [], "missing_branches": []}, "TestFromCocoMasks.test_multi_segment_masks_merged": {"executed_lines": [1471, 1472, 1473, 1475, 1479, 1485, 1486, 1487, 1488], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1464, "executed_branches": [], "missing_branches": []}, "TestFromCocoMasks.test_multi_segment_masks_uneven_length_no_value_error": {"executed_lines": [1506, 1507, 1508, 1510, 1530, 1532, 1537, 1538, 1539], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1504, "executed_branches": [], "missing_branches": []}, "test_classes_to_coco_categories_ids_start_at_one": {"executed_lines": [1557, 1559], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1553, "executed_branches": [], "missing_branches": []}, "test_detections_to_coco_annotations_category_id_is_one_indexed": {"executed_lines": [1564, 1569, 1575], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1562, "executed_branches": [], "missing_branches": []}, "test_coco_round_trip_preserves_class_ids_and_writes_one_indexed_categories": {"executed_lines": [1583, 1584, 1585, 1586, 1587, 1588, 1589, 1590, 1591, 1595, 1596, 1597, 1601, 1602, 1605, 1606, 1607, 1608, 1611, 1615, 1616, 1617, 1618, 1619], "summary": {"covered_lines": 24, "num_statements": 24, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1578, "executed_branches": [[1587, 1588], [1587, 1597], [1616, -1578], [1616, 1617]], "missing_branches": []}, "_tiny_detection_dataset": {"executed_lines": [1631, 1632, 1633, 1634, 1635, 1636, 1637, 1638, 1642, 1647], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1625, "executed_branches": [[1634, 1635], [1634, 1647]], "missing_branches": []}, "_read_ids": {"executed_lines": [1653, 1654, 1655, 1656, 1657], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1652, "executed_branches": [], "missing_branches": []}, "test_save_coco_annotations_defaults_start_at_one": {"executed_lines": [1661, 1662, 1664, 1668, 1669, 1670, 1672, 1673], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1660, "executed_branches": [], "missing_branches": []}, "test_save_coco_annotations_respects_starting_ids": {"executed_lines": [1677, 1678, 1680, 1687, 1688, 1689, 1690, 1691], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1676, "executed_branches": [], "missing_branches": []}, "test_as_coco_chains_ids_across_splits_without_collision": {"executed_lines": [1697, 1698, 1699, 1701, 1702, 1703, 1705, 1706, 1711, 1717, 1718, 1719, 1720, 1721, 1722, 1724, 1727, 1731, 1732], "summary": {"covered_lines": 19, "num_statements": 19, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1694, "executed_branches": [[1719, 1720], [1719, 1724]], "missing_branches": []}, "test_save_coco_annotations_empty_dataset_returns_starting_ids": {"executed_lines": [1738, 1739, 1741, 1748, 1749, 1750, 1751, 1752], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1735, "executed_branches": [], "missing_branches": []}, "test_as_coco_without_annotations_path_returns_starting_ids": {"executed_lines": [1758, 1759, 1764, 1765], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1755, "executed_branches": [], "missing_branches": []}, "test_save_coco_annotations_annotation_image_id_references_correct_image": {"executed_lines": [1771, 1772, 1774, 1781, 1782, 1783, 1784, 1785], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1768, "executed_branches": [], "missing_branches": []}, "test_save_coco_annotations_zero_annotation_images": {"executed_lines": [1793, 1794, 1796, 1800, 1801, 1802, 1803, 1804], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1790, "executed_branches": [], "missing_branches": []}, "test_from_coco_loads_legacy_zero_indexed_category_ids": {"executed_lines": [1813, 1814, 1815, 1816, 1818, 1843, 1844, 1846, 1851, 1852, 1853, 1854], "summary": {"covered_lines": 12, "num_statements": 12, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1810, "executed_branches": [], "missing_branches": []}, "test_save_coco_annotations_rejects_zero_starting_ids": {"executed_lines": [1872, 1873, 1875, 1876], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1868, "executed_branches": [], "missing_branches": []}, "test_detections_to_coco_annotations_raises_when_class_id_is_none": {"executed_lines": [1889, 1894, 1895], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1887, "executed_branches": [], "missing_branches": []}, "test_coco_round_trip_multi_class_single_image": {"executed_lines": [1907, 1908, 1910, 1921, 1922, 1924, 1925, 1926, 1928, 1932, 1933, 1934], "summary": {"covered_lines": 12, "num_statements": 12, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1905, "executed_branches": [], "missing_branches": []}, "_coco_annotation_with_segmentation": {"executed_lines": [1945], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1940, "executed_branches": [], "missing_branches": []}, "_single_image_coco_data": {"executed_lines": [1956], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1955, "executed_branches": [], "missing_branches": []}, "test_detections_to_coco_annotations_exports_all_polygons": {"executed_lines": [1968, 1969, 1970, 1972, 1978, 1981, 1982, 1984, 1985], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1965, "executed_branches": [], "missing_branches": []}, "test_coco_polygon_segmentation_survives_roundtrip": {"executed_lines": [2021, 2022, 2024, 2025, 2028, 2029, 2041, 2047, 2048, 2050, 2051, 2054, 2055, 2056, 2057], "summary": {"covered_lines": 15, "num_statements": 15, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 2007, "executed_branches": [], "missing_branches": []}, "test_coco_raw_segmentation_preserved_when_masks_not_decoded": {"executed_lines": [2064, 2069, 2074, 2076, 2079, 2082, 2083], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 2060, "executed_branches": [], "missing_branches": []}, "test_coco_iscrowd_mask_exports_as_rle": {"executed_lines": [2088, 2089, 2090, 2092, 2097, 2100, 2101, 2102, 2103, 2104], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 2086, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 5, 7, 8, 9, 11, 12, 25, 47, 55, 56, 110, 111, 132, 172, 180, 188, 197, 248, 256, 760, 778, 824, 837, 952, 968, 999, 1012, 1026, 1037, 1044, 1060, 1073, 1093, 1115, 1137, 1159, 1177, 1223, 1250, 1254, 1277, 1285, 1315, 1342, 1365, 1387, 1424, 1425, 1460, 1463, 1464, 1504, 1545, 1553, 1562, 1578, 1625, 1652, 1660, 1676, 1694, 1735, 1755, 1768, 1790, 1810, 1860, 1868, 1887, 1905, 1940, 1955, 1965, 1988, 2007, 2060, 2086], "summary": {"covered_lines": 80, "num_statements": 80, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"TestFromCocoMasks": {"executed_lines": [1471, 1472, 1473, 1475, 1479, 1485, 1486, 1487, 1488, 1506, 1507, 1508, 1510, 1530, 1532, 1537, 1538, 1539], "summary": {"covered_lines": 18, "num_statements": 18, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1460, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 5, 7, 8, 9, 11, 12, 25, 34, 35, 36, 47, 49, 50, 51, 52, 55, 56, 57, 110, 111, 112, 132, 172, 175, 176, 177, 180, 188, 191, 192, 193, 194, 197, 248, 251, 252, 253, 256, 760, 768, 769, 775, 778, 824, 830, 831, 834, 837, 952, 959, 960, 965, 968, 969, 986, 987, 994, 995, 996, 999, 1012, 1026, 1028, 1029, 1037, 1044, 1048, 1052, 1053, 1054, 1055, 1056, 1057, 1060, 1062, 1063, 1068, 1070, 1073, 1075, 1081, 1087, 1088, 1089, 1090, 1093, 1097, 1103, 1109, 1110, 1111, 1112, 1115, 1117, 1118, 1120, 1126, 1132, 1133, 1134, 1137, 1139, 1140, 1142, 1149, 1155, 1156, 1159, 1161, 1166, 1172, 1173, 1174, 1177, 1180, 1181, 1182, 1184, 1188, 1195, 1196, 1198, 1199, 1200, 1201, 1202, 1204, 1207, 1208, 1209, 1210, 1212, 1213, 1214, 1215, 1219, 1220, 1223, 1226, 1227, 1228, 1230, 1235, 1241, 1242, 1243, 1244, 1246, 1247, 1250, 1254, 1259, 1260, 1261, 1263, 1268, 1270, 1271, 1277, 1285, 1290, 1291, 1292, 1294, 1306, 1308, 1309, 1315, 1317, 1318, 1319, 1321, 1333, 1335, 1336, 1342, 1346, 1347, 1348, 1349, 1351, 1356, 1358, 1359, 1365, 1367, 1368, 1369, 1370, 1372, 1377, 1379, 1383, 1384, 1387, 1390, 1391, 1392, 1394, 1408, 1410, 1416, 1417, 1418, 1419, 1420, 1421, 1424, 1425, 1426, 1460, 1463, 1464, 1504, 1545, 1553, 1557, 1559, 1562, 1564, 1569, 1575, 1578, 1583, 1584, 1585, 1586, 1587, 1588, 1589, 1590, 1591, 1595, 1596, 1597, 1601, 1602, 1605, 1606, 1607, 1608, 1611, 1615, 1616, 1617, 1618, 1619, 1625, 1631, 1632, 1633, 1634, 1635, 1636, 1637, 1638, 1642, 1647, 1652, 1653, 1654, 1655, 1656, 1657, 1660, 1661, 1662, 1664, 1668, 1669, 1670, 1672, 1673, 1676, 1677, 1678, 1680, 1687, 1688, 1689, 1690, 1691, 1694, 1697, 1698, 1699, 1701, 1702, 1703, 1705, 1706, 1711, 1717, 1718, 1719, 1720, 1721, 1722, 1724, 1727, 1731, 1732, 1735, 1738, 1739, 1741, 1748, 1749, 1750, 1751, 1752, 1755, 1758, 1759, 1764, 1765, 1768, 1771, 1772, 1774, 1781, 1782, 1783, 1784, 1785, 1790, 1793, 1794, 1796, 1800, 1801, 1802, 1803, 1804, 1810, 1813, 1814, 1815, 1816, 1818, 1843, 1844, 1846, 1851, 1852, 1853, 1854, 1860, 1868, 1872, 1873, 1875, 1876, 1887, 1889, 1894, 1895, 1905, 1907, 1908, 1910, 1921, 1922, 1924, 1925, 1926, 1928, 1932, 1933, 1934, 1940, 1945, 1955, 1956, 1965, 1968, 1969, 1970, 1972, 1978, 1981, 1982, 1984, 1985, 1988, 2007, 2021, 2022, 2024, 2025, 2028, 2029, 2041, 2047, 2048, 2050, 2051, 2054, 2055, 2056, 2057, 2060, 2064, 2069, 2074, 2076, 2079, 2082, 2083, 2086, 2088, 2089, 2090, 2092, 2097, 2100, 2101, 2102, 2103, 2104], "summary": {"covered_lines": 423, "num_statements": 423, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 12, "num_partial_branches": 0, "covered_branches": 12, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [[34, 35], [34, 36], [50, 51], [50, 52], [1587, 1588], [1587, 1597], [1616, -1578], [1616, 1617], [1634, 1635], [1634, 1647], [1719, 1720], [1719, 1724]], "missing_branches": []}}}, "tests\\dataset\\formats\\test_pascal_voc.py": {"executed_lines": [1, 3, 5, 6, 7, 9, 15, 18, 19, 27, 28, 31, 34, 64, 71, 72, 73, 76, 78, 79, 81, 83, 84, 89, 91, 92, 94, 96, 101, 103, 104, 106, 109, 113, 114, 117, 131, 136, 137, 138, 141, 147, 152, 160, 161, 169, 222, 225, 226, 227, 228, 231, 232, 235, 236, 243, 244, 245, 246], "summary": {"covered_lines": 59, "num_statements": 61, "percent_covered": 94.02985074626865, "percent_covered_display": "94", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 96.72131147540983, "percent_statements_covered_display": "97", "num_branches": 6, "num_partial_branches": 2, "covered_branches": 4, "missing_branches": 2, "percent_branches_covered": 66.66666666666667, "percent_branches_covered_display": "67"}, "missing_lines": [25, 29], "excluded_lines": [], "executed_branches": [[19, 27], [27, 28], [27, 31], [28, 27]], "missing_branches": [[19, 25], [28, 29]], "functions": {"are_xml_elements_equal": {"executed_lines": [19, 27, 28, 31], "summary": {"covered_lines": 4, "num_statements": 6, "percent_covered": 66.66666666666667, "percent_covered_display": "67", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 66.66666666666667, "percent_statements_covered_display": "67", "num_branches": 6, "num_partial_branches": 2, "covered_branches": 4, "missing_branches": 2, "percent_branches_covered": 66.66666666666667, "percent_branches_covered_display": "67"}, "missing_lines": [25, 29], "excluded_lines": [], "start_line": 18, "executed_branches": [[19, 27], [27, 28], [27, 31], [28, 27]], "missing_branches": [[19, 25], [28, 29]]}, "test_object_to_pascal_voc": {"executed_lines": [71, 72, 73], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 64, "executed_branches": [], "missing_branches": []}, "test_object_to_pascal_voc_does_not_mutate_inputs": {"executed_lines": [78, 79, 81, 83, 84], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 76, "executed_branches": [], "missing_branches": []}, "test_object_to_pascal_voc_does_not_mutate_view_input": {"executed_lines": [91, 92, 94, 96], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 89, "executed_branches": [], "missing_branches": []}, "test_detections_to_pascal_voc_does_not_mutate_detections": {"executed_lines": [103, 104, 106, 109, 113, 114], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 101, "executed_branches": [], "missing_branches": []}, "test_parse_polygon_points": {"executed_lines": [136, 137, 138], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 131, "executed_branches": [], "missing_branches": []}, "test_detections_from_xml_obj": {"executed_lines": [225, 226, 227, 228], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 222, "executed_branches": [], "missing_branches": []}, "test_detections_from_xml_obj_mixed_polygon_and_bbox_masks_aligned": {"executed_lines": [235, 236, 243, 244, 245, 246], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 232, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 5, 6, 7, 9, 15, 18, 34, 64, 76, 89, 101, 117, 131, 141, 147, 152, 160, 161, 169, 222, 231, 232], "summary": {"covered_lines": 24, "num_statements": 24, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 3, 5, 6, 7, 9, 15, 18, 19, 27, 28, 31, 34, 64, 71, 72, 73, 76, 78, 79, 81, 83, 84, 89, 91, 92, 94, 96, 101, 103, 104, 106, 109, 113, 114, 117, 131, 136, 137, 138, 141, 147, 152, 160, 161, 169, 222, 225, 226, 227, 228, 231, 232, 235, 236, 243, 244, 245, 246], "summary": {"covered_lines": 59, "num_statements": 61, "percent_covered": 94.02985074626865, "percent_covered_display": "94", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 96.72131147540983, "percent_statements_covered_display": "97", "num_branches": 6, "num_partial_branches": 2, "covered_branches": 4, "missing_branches": 2, "percent_branches_covered": 66.66666666666667, "percent_branches_covered_display": "67"}, "missing_lines": [25, 29], "excluded_lines": [], "start_line": 1, "executed_branches": [[19, 27], [27, 28], [27, 31], [28, 27]], "missing_branches": [[19, 25], [28, 29]]}}}, "tests\\dataset\\formats\\test_yolo.py": {"executed_lines": [1, 3, 4, 6, 7, 8, 10, 11, 12, 21, 24, 25, 26, 27, 28, 32, 35, 36, 37, 40, 66, 69, 70, 71, 74, 198, 205, 206, 209, 210, 211, 216, 229, 232, 233, 234, 237, 268, 275, 276, 277, 278, 281, 336, 344, 345, 348, 351, 352, 357, 358, 363, 386, 393, 394, 395, 396, 397, 398, 399, 401, 408, 409, 412, 418, 420, 422, 425, 429, 433, 434, 435, 436, 437, 442, 443, 447, 448, 449, 450, 453, 454, 456, 457, 459, 460, 462, 471, 475, 477, 484, 485, 486, 487, 488, 491, 495, 499, 505, 507, 508, 512, 513, 516, 520, 521, 523, 524, 525, 526, 527, 529, 530, 536, 538, 541, 547, 551, 552, 553, 556, 557, 564, 566, 570, 571, 576, 578, 581, 584, 586, 593, 601, 605, 606, 607, 608, 611, 612, 613, 620, 622, 626, 632, 636, 637, 642, 649, 653, 654, 655, 656, 657, 658, 659, 661, 668, 669, 675, 676, 681, 683, 684, 685, 686, 688, 689, 690, 692, 699, 700, 706, 712, 713, 714, 721, 725, 726, 727, 728, 729, 730, 731, 733, 735, 742, 743, 749, 750, 751], "summary": {"covered_lines": 190, "num_statements": 190, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [[606, 607], [606, 611]], "missing_branches": [], "functions": {"_mock_simple_mask": {"executed_lines": [25, 26, 27, 28], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 24, "executed_branches": [], "missing_branches": []}, "_arrays_almost_equal": {"executed_lines": [35, 36, 37], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 32, "executed_branches": [], "missing_branches": []}, "test_with_mask": {"executed_lines": [69, 70, 71], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 66, "executed_branches": [], "missing_branches": []}, "test_yolo_annotations_to_detections": {"executed_lines": [205, 206, 209, 210, 211], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 198, "executed_branches": [], "missing_branches": []}, "test_image_name_to_annotation_name": {"executed_lines": [232, 233, 234], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 229, "executed_branches": [], "missing_branches": []}, "test_extract_class_names_sorts_numeric_string_keys": {"executed_lines": [275, 276, 277, 278], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 268, "executed_branches": [], "missing_branches": []}, "test_object_to_yolo": {"executed_lines": [344, 345, 348], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 336, "executed_branches": [], "missing_branches": []}, "test_detections_to_yolo_annotations_raises_for_non_integer_class_id": {"executed_lines": [352, 357, 358], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 351, "executed_branches": [], "missing_branches": []}, "test_load_yolo_annotations_mask_behaviour": {"executed_lines": [393, 394, 395, 396, 397, 398, 399, 401, 408, 409], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 386, "executed_branches": [], "missing_branches": []}, "test_polygons_to_masks_multiple_polygons_shape": {"executed_lines": [418, 420, 422, 425, 429, 433, 434, 435, 436, 437], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 412, "executed_branches": [], "missing_branches": []}, "yolo_mask_round_trip_sample": {"executed_lines": [447, 448, 449, 450, 453, 454, 456, 457, 459, 460, 462], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 443, "executed_branches": [], "missing_branches": []}, "test_yolo_polygon_mask_precision_no_coord_drift_loads_mask": {"executed_lines": [475, 477, 484, 485, 486, 487, 488], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 471, "executed_branches": [], "missing_branches": []}, "test_yolo_polygon_mask_precision_no_coord_drift_round_trip_iou": {"executed_lines": [495, 499, 505, 507, 508, 512, 513, 516, 520, 521, 523, 524, 525, 526, 527, 529, 530], "summary": {"covered_lines": 17, "num_statements": 17, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 491, "executed_branches": [], "missing_branches": []}, "test_detections_to_yolo_annotations_obb_emits_nine_tokens": {"executed_lines": [538, 541, 547, 551, 552, 553, 556, 557], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 536, "executed_branches": [], "missing_branches": []}, "test_detections_to_yolo_annotations_obb_raises_without_corners": {"executed_lines": [566, 570, 571], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 564, "executed_branches": [], "missing_branches": []}, "test_detections_to_yolo_annotations_obb_empty_emits_no_lines": {"executed_lines": [578, 581], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 576, "executed_branches": [], "missing_branches": []}, "test_detections_to_yolo_annotations_obb_multiple_detections": {"executed_lines": [586, 593, 601, 605, 606, 607, 608, 611, 612, 613], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 584, "executed_branches": [[606, 607], [606, 611]], "missing_branches": []}, "test_detections_to_yolo_annotations_obb_data_ignored_when_is_obb_false": {"executed_lines": [622, 626, 632, 636, 637], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 620, "executed_branches": [], "missing_branches": []}, "test_dataset_as_yolo_obb_output_token_count": {"executed_lines": [653, 654, 655, 656, 657, 658, 659, 661, 668, 669, 675, 676], "summary": {"covered_lines": 12, "num_statements": 12, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 649, "executed_branches": [], "missing_branches": []}, "test_dataset_as_yolo_obb_round_trip_corner_accuracy": {"executed_lines": [683, 684, 685, 686, 688, 689, 690, 692, 699, 700, 706, 712, 713, 714], "summary": {"covered_lines": 14, "num_statements": 14, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 681, "executed_branches": [], "missing_branches": []}, "test_dataset_as_yolo_obb_round_trip_with_background_image": {"executed_lines": [725, 726, 727, 728, 729, 730, 731, 733, 735, 742, 743, 749, 750, 751], "summary": {"covered_lines": 14, "num_statements": 14, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 721, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 6, 7, 8, 10, 11, 12, 21, 24, 32, 40, 66, 74, 198, 216, 229, 237, 268, 281, 336, 351, 363, 386, 412, 442, 443, 471, 491, 536, 564, 576, 584, 620, 642, 649, 681, 721], "summary": {"covered_lines": 39, "num_statements": 39, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 3, 4, 6, 7, 8, 10, 11, 12, 21, 24, 25, 26, 27, 28, 32, 35, 36, 37, 40, 66, 69, 70, 71, 74, 198, 205, 206, 209, 210, 211, 216, 229, 232, 233, 234, 237, 268, 275, 276, 277, 278, 281, 336, 344, 345, 348, 351, 352, 357, 358, 363, 386, 393, 394, 395, 396, 397, 398, 399, 401, 408, 409, 412, 418, 420, 422, 425, 429, 433, 434, 435, 436, 437, 442, 443, 447, 448, 449, 450, 453, 454, 456, 457, 459, 460, 462, 471, 475, 477, 484, 485, 486, 487, 488, 491, 495, 499, 505, 507, 508, 512, 513, 516, 520, 521, 523, 524, 525, 526, 527, 529, 530, 536, 538, 541, 547, 551, 552, 553, 556, 557, 564, 566, 570, 571, 576, 578, 581, 584, 586, 593, 601, 605, 606, 607, 608, 611, 612, 613, 620, 622, 626, 632, 636, 637, 642, 649, 653, 654, 655, 656, 657, 658, 659, 661, 668, 669, 675, 676, 681, 683, 684, 685, 686, 688, 689, 690, 692, 699, 700, 706, 712, 713, 714, 721, 725, 726, 727, 728, 729, 730, 731, 733, 735, 742, 743, 749, 750, 751], "summary": {"covered_lines": 190, "num_statements": 190, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [[606, 607], [606, 611]], "missing_branches": []}}}, "tests\\dataset\\test_core.py": {"executed_lines": [1, 3, 4, 6, 7, 9, 10, 11, 14, 178, 190, 191, 192, 195, 198, 200, 210, 211, 212, 217, 219, 224, 225, 226, 228, 230, 235, 237, 239, 246, 253, 257, 258, 259, 263, 264, 265, 269, 271, 274, 280, 281, 282, 283, 284], "summary": {"covered_lines": 45, "num_statements": 45, "percent_covered": 97.95918367346938, "percent_covered_display": "98", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [[280, -269], [280, 281], [281, 282]], "missing_branches": [[281, 280]], "functions": {"test_dataset_merge": {"executed_lines": [190, 191, 192], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 178, "executed_branches": [], "missing_branches": []}, "TestClassNamePopulation.test_class_name_populated_on_init": {"executed_lines": [200, 210, 211, 212], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 198, "executed_branches": [], "missing_branches": []}, "TestClassNamePopulation.test_class_name_with_empty_annotations": {"executed_lines": [219, 224, 225, 226], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 217, "executed_branches": [], "missing_branches": []}, "TestClassNamePopulation.test_class_name_with_empty_classes": {"executed_lines": [230, 235], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 228, "executed_branches": [], "missing_branches": []}, "TestClassNamePopulation.test_class_name_after_merge": {"executed_lines": [239, 246, 253, 257, 258, 259, 263, 264, 265], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 237, "executed_branches": [], "missing_branches": []}, "TestClassNamePopulation.test_class_name_from_yolo": {"executed_lines": [271, 274, 280, 281, 282, 283, 284], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 90.9090909090909, "percent_covered_display": "91", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [], "excluded_lines": [], "start_line": 269, "executed_branches": [[280, -269], [280, 281], [281, 282]], "missing_branches": [[281, 280]]}, "": {"executed_lines": [1, 3, 4, 6, 7, 9, 10, 11, 14, 178, 195, 198, 217, 228, 237, 269], "summary": {"covered_lines": 16, "num_statements": 16, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"TestClassNamePopulation": {"executed_lines": [200, 210, 211, 212, 219, 224, 225, 226, 230, 235, 239, 246, 253, 257, 258, 259, 263, 264, 265, 271, 274, 280, 281, 282, 283, 284], "summary": {"covered_lines": 26, "num_statements": 26, "percent_covered": 96.66666666666667, "percent_covered_display": "97", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [], "excluded_lines": [], "start_line": 195, "executed_branches": [[280, -269], [280, 281], [281, 282]], "missing_branches": [[281, 280]]}, "": {"executed_lines": [1, 3, 4, 6, 7, 9, 10, 11, 14, 178, 190, 191, 192, 195, 198, 217, 228, 237, 269], "summary": {"covered_lines": 19, "num_statements": 19, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\dataset\\test_utils.py": {"executed_lines": [1, 3, 4, 6, 8, 9, 15, 17, 20, 74, 82, 83, 89, 92, 118, 121, 122, 123, 126, 163, 169, 170, 173, 176, 223, 229, 230, 233], "summary": {"covered_lines": 28, "num_statements": 28, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"test_train_test_split": {"executed_lines": [82, 83, 89], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 74, "executed_branches": [], "missing_branches": []}, "test_merge_class_maps": {"executed_lines": [121, 122, 123], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 118, "executed_branches": [], "missing_branches": []}, "test_build_class_index_mapping": {"executed_lines": [169, 170, 173], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 163, "executed_branches": [], "missing_branches": []}, "test_map_detections_class_id": {"executed_lines": [229, 230, 233], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 223, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 6, 8, 9, 15, 17, 20, 74, 92, 118, 126, 163, 176, 223], "summary": {"covered_lines": 16, "num_statements": 16, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 3, 4, 6, 8, 9, 15, 17, 20, 74, 82, 83, 89, 92, 118, 121, 122, 123, 126, 163, 169, 170, 173, 176, 223, 229, 230, 233], "summary": {"covered_lines": 28, "num_statements": 28, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\detection\\__init__.py": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\detection\\test_compact_mask.py": {"executed_lines": [3, 5, 7, 8, 10, 14, 20, 28, 30, 31, 32, 33, 36, 45, 64, 68, 69, 70, 71, 73, 74, 75, 76, 80, 89, 91, 92, 94, 113, 117, 119, 128, 130, 133, 141, 149, 150, 151, 152, 153, 154, 156, 158, 159, 160, 162, 163, 165, 168, 178, 179, 180, 181, 182, 184, 185, 186, 187, 188, 190, 191, 192, 193, 194, 199, 201, 202, 203, 204, 205, 207, 208, 209, 210, 212, 213, 214, 216, 217, 218, 219, 220, 222, 223, 224, 225, 226, 227, 229, 231, 232, 233, 234, 236, 237, 238, 239, 240, 243, 251, 252, 253, 254, 256, 257, 258, 259, 261, 262, 268, 270, 271, 272, 274, 275, 276, 277, 278, 280, 281, 283, 284, 290, 293, 301, 302, 303, 304, 305, 306, 308, 309, 310, 313, 320, 321, 322, 323, 324, 326, 327, 328, 330, 331, 332, 333, 334, 335, 338, 347, 348, 349, 350, 351, 352, 354, 355, 356, 357, 361, 362, 363, 369, 370, 372, 373, 375, 376, 377, 379, 380, 386, 392, 393, 396, 403, 404, 405, 406, 407, 408, 410, 411, 412, 413, 414, 415, 416, 417, 419, 420, 421, 422, 423, 426, 435, 437, 438, 439, 440, 441, 443, 444, 445, 446, 447, 448, 449, 451, 453, 454, 455, 456, 457, 458, 459, 461, 462, 468, 469, 470, 472, 473, 474, 475, 476, 478, 479, 480, 481, 482, 483, 485, 486, 487, 488, 490, 492, 493, 494, 495, 496, 498, 499, 500, 506, 508, 510, 511, 512, 513, 514, 516, 517, 518, 524, 526, 528, 529, 530, 533, 534, 537, 539, 542, 543, 545, 547, 549, 550, 551, 553, 554, 555, 557, 558, 559, 561, 563, 569, 570, 571, 573, 575, 576, 577, 580, 581, 582, 584, 585, 586, 589, 596, 598, 599, 600, 602, 603, 605, 607, 608, 610, 612, 614, 615, 616, 618, 619, 621, 623, 625, 626, 627, 628, 630, 631, 633, 635, 637, 643, 644, 647, 655, 680, 684, 685, 686, 688, 689, 690, 693, 700, 734, 738, 739, 740, 742, 743, 744, 745, 753, 767, 781, 782, 783, 784, 785, 786, 787, 789, 790, 791, 793, 794, 797, 804, 805, 806, 807, 808, 809, 810, 819, 820, 822, 823, 824, 825, 826, 827, 829, 830, 832, 833, 834, 835, 836, 837, 844, 847, 848, 849, 850, 851, 852, 854, 855, 863, 864, 866, 867, 868, 869, 870, 873, 876, 877, 878, 879, 880, 881, 883, 885, 886, 888, 889, 891, 892, 893, 899, 900, 902, 903, 904, 905, 907, 908, 912, 913, 914, 921, 924, 925, 926, 928, 929, 930, 931, 934, 935, 937, 938, 944, 953, 954, 956, 957, 958, 959, 960, 962, 963, 964, 966, 967, 969, 971, 972, 973, 975, 982, 985, 987, 989, 990, 991, 992, 994, 996, 998, 999, 1000, 1001, 1003, 1005, 1007, 1008, 1009, 1010, 1012, 1013, 1015, 1020, 1021, 1022, 1023, 1024, 1025, 1027, 1028, 1029, 1032, 1033, 1034, 1040, 1048, 1053, 1054, 1055, 1059, 1062, 1069, 1092, 1100, 1101, 1102, 1103, 1104, 1106, 1108, 1110, 1111, 1112, 1113, 1114, 1115, 1116, 1117, 1119, 1121, 1122, 1123, 1124, 1126, 1128, 1129, 1130, 1131, 1132, 1134, 1136, 1137, 1138, 1140, 1142, 1143, 1145, 1154, 1156, 1157, 1158, 1159, 1161, 1162, 1164, 1166, 1167, 1168, 1169, 1170, 1171, 1172, 1173, 1174, 1176, 1178, 1179, 1180, 1181, 1182, 1183, 1184, 1185, 1187, 1189, 1190, 1191, 1192, 1194, 1196, 1197, 1198, 1199, 1200, 1202, 1203, 1205, 1207, 1208, 1209, 1210, 1211, 1212, 1214, 1215, 1217, 1218, 1223, 1224, 1225, 1231, 1239, 1241, 1243, 1252, 1253, 1254, 1255, 1257, 1259, 1261, 1263, 1270, 1271, 1272, 1274, 1277, 1279, 1281, 1283, 1285, 1294, 1295, 1296, 1298, 1301, 1303, 1305, 1307, 1309, 1310, 1311, 1312, 1313, 1314, 1316, 1319, 1321, 1330, 1334, 1336, 1337, 1338, 1339, 1340, 1342, 1351, 1355, 1357, 1358, 1359, 1360, 1361, 1363, 1365, 1367, 1369, 1370, 1371, 1372, 1373, 1375, 1378, 1380, 1381, 1383, 1385, 1387, 1388, 1389, 1390, 1391, 1393, 1394, 1395, 1396, 1398, 1403, 1404, 1410, 1419, 1423, 1425, 1427, 1428, 1429, 1430, 1431, 1433, 1438, 1440, 1449, 1453, 1455, 1457, 1458, 1459, 1460, 1461, 1463, 1468, 1470, 1477, 1484, 1486, 1487, 1488, 1489, 1491, 1492, 1494, 1496, 1498, 1499, 1500, 1501, 1502, 1504, 1506, 1507, 1508, 1510, 1516, 1518, 1522, 1524, 1526, 1527, 1528, 1529, 1530, 1535, 1536, 1537, 1540, 1541, 1544, 1547, 1549, 1550, 1551, 1552, 1553, 1554, 1555, 1556, 1558, 1559, 1561, 1562, 1564, 1565, 1567, 1569, 1570, 1571, 1572, 1574, 1575, 1576, 1577, 1578, 1579, 1580, 1582, 1583, 1585, 1586, 1587, 1590, 1591], "summary": {"covered_lines": 752, "num_statements": 752, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 32, "num_partial_branches": 0, "covered_branches": 32, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [[68, 69], [68, 73], [193, 194], [193, 199], [602, 603], [602, 605], [782, 783], [782, 793], [789, 790], [789, 791], [836, -829], [836, 837], [885, 886], [885, 888], [972, 973], [972, 975], [1028, 1029], [1028, 1032], [1131, -1119], [1131, 1132], [1181, -1164], [1181, 1182], [1217, -1202], [1217, 1218], [1491, 1492], [1491, 1494], [1552, 1553], [1552, 1555], [1564, -1547], [1564, 1565], [1576, 1577], [1576, 1579]], "missing_branches": [], "functions": {"_make_cm": {"executed_lines": [30, 31, 32, 33], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 28, "executed_branches": [], "missing_branches": []}, "TestRleHelpers.test_encode_decode_round_trip": {"executed_lines": [68, 69, 70, 71, 73, 74, 75, 76], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 64, "executed_branches": [[68, 69], [68, 73]], "missing_branches": []}, "TestRleHelpers.test_area_matches_numpy_sum": {"executed_lines": [91, 92], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 89, "executed_branches": [], "missing_branches": []}, "TestRleHelpers.test_encode_matches_coco_f_order": {"executed_lines": [117], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 113, "executed_branches": [], "missing_branches": []}, "TestRleHelpers.test_encode_agrees_with_mask_to_rle": {"executed_lines": [130], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 128, "executed_branches": [], "missing_branches": []}, "TestFromDenseToDense.test_round_trip": {"executed_lines": [150, 151, 152, 153, 154], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 149, "executed_branches": [], "missing_branches": []}, "TestFromDenseToDense.test_round_trip_with_mask_to_xyxy": {"executed_lines": [158, 159, 160, 162, 163, 165], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 156, "executed_branches": [], "missing_branches": []}, "TestGetItem.test_int_returns_2d_dense": {"executed_lines": [179, 180, 181, 182, 184, 185, 186, 187, 188], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 178, "executed_branches": [], "missing_branches": []}, "TestGetItem.test_list_returns_compact_mask": {"executed_lines": [191, 192, 193, 194, 199, 201, 202, 203, 204, 205], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 190, "executed_branches": [[193, 194], [193, 199]], "missing_branches": []}, "TestGetItem.test_slice_returns_compact_mask": {"executed_lines": [208, 209, 210, 212, 213, 214], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 207, "executed_branches": [], "missing_branches": []}, "TestGetItem.test_bool_ndarray": {"executed_lines": [217, 218, 219, 220, 222, 223, 224, 225, 226, 227], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 216, "executed_branches": [], "missing_branches": []}, "TestGetItem.test_bool_list": {"executed_lines": [231, 232, 233, 234, 236, 237, 238, 239, 240], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 229, "executed_branches": [], "missing_branches": []}, "TestProperties.test_len": {"executed_lines": [252, 253, 254], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 251, "executed_branches": [], "missing_branches": []}, "TestProperties.test_shape": {"executed_lines": [257, 258, 259], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 256, "executed_branches": [], "missing_branches": []}, "TestProperties.test_shape_empty": {"executed_lines": [262, 268], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 261, "executed_branches": [], "missing_branches": []}, "TestProperties.test_dtype": {"executed_lines": [271, 272], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 270, "executed_branches": [], "missing_branches": []}, "TestProperties.test_area_matches_dense": {"executed_lines": [275, 276, 277, 278, 280, 281], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 274, "executed_branches": [], "missing_branches": []}, "TestProperties.test_area_empty": {"executed_lines": [284, 290], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 283, "executed_branches": [], "missing_branches": []}, "TestCrop.test_returns_crop_shape": {"executed_lines": [302, 303, 304, 305, 306, 308, 309, 310], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 301, "executed_branches": [], "missing_branches": []}, "TestArrayProtocol.test_array_protocol": {"executed_lines": [321, 322, 323, 324, 326, 327, 328], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 320, "executed_branches": [], "missing_branches": []}, "TestArrayProtocol.test_dtype_cast": {"executed_lines": [331, 332, 333, 334, 335], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 330, "executed_branches": [], "missing_branches": []}, "TestMerge.test_merge": {"executed_lines": [348, 349, 350, 351, 352, 354, 355, 356, 357], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 347, "executed_branches": [], "missing_branches": []}, "TestMerge.test_merge_with_empty": {"executed_lines": [362, 363, 369, 370, 372, 373], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 361, "executed_branches": [], "missing_branches": []}, "TestMerge.test_merge_empty_list_raises": {"executed_lines": [376, 377], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 375, "executed_branches": [], "missing_branches": []}, "TestMerge.test_merge_mismatched_image_shape_raises": {"executed_lines": [380, 386, 392, 393], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 379, "executed_branches": [], "missing_branches": []}, "TestEquality.test_eq_identical": {"executed_lines": [404, 405, 406, 407, 408], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 403, "executed_branches": [], "missing_branches": []}, "TestEquality.test_eq_different": {"executed_lines": [411, 412, 413, 414, 415, 416, 417], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 410, "executed_branches": [], "missing_branches": []}, "TestEquality.test_eq_with_dense_array": {"executed_lines": [420, 421, 422, 423], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 419, "executed_branches": [], "missing_branches": []}, "TestEdgeCases.test_zero_area_mask_clipped_to_1x1": {"executed_lines": [437, 438, 439, 440, 441], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 435, "executed_branches": [], "missing_branches": []}, "TestEdgeCases.test_mask_at_image_boundary": {"executed_lines": [444, 445, 446, 447, 448, 449], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 443, "executed_branches": [], "missing_branches": []}, "TestEdgeCases.test_xyxy_beyond_image_clipped": {"executed_lines": [453, 454, 455, 456, 457, 458, 459], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 451, "executed_branches": [], "missing_branches": []}, "TestEdgeCases.test_empty_compact_mask_to_dense": {"executed_lines": [462, 468, 469, 470], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 461, "executed_branches": [], "missing_branches": []}, "TestEdgeCases.test_sum_axis_1_2_equals_area": {"executed_lines": [473, 474, 475, 476], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 472, "executed_branches": [], "missing_branches": []}, "TestEdgeCases.test_with_offset": {"executed_lines": [479, 480, 481, 482, 483, 485, 486, 487, 488], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 478, "executed_branches": [], "missing_branches": []}, "TestEdgeCases.test_with_offset_clips_partial_overlap_like_move_masks": {"executed_lines": [492, 493, 494, 495, 496, 498, 499, 500, 506], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 490, "executed_branches": [], "missing_branches": []}, "TestEdgeCases.test_with_offset_clips_full_outside_like_move_masks": {"executed_lines": [510, 511, 512, 513, 514, 516, 517, 518, 524], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 508, "executed_branches": [], "missing_branches": []}, "TestEdgeCases.test_repack_tightens_loose_bbox": {"executed_lines": [528, 529, 530, 533, 534, 537, 539, 542, 543, 545], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 526, "executed_branches": [], "missing_branches": []}, "TestEdgeCases.test_repack_preserves_all_false_mask": {"executed_lines": [549, 550, 551, 553, 554, 555, 557, 558, 559], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 547, "executed_branches": [], "missing_branches": []}, "TestEdgeCases.test_repack_empty_collection": {"executed_lines": [563, 569, 570, 571], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 561, "executed_branches": [], "missing_branches": []}, "TestEdgeCases.test_repack_already_tight": {"executed_lines": [575, 576, 577, 580, 581, 582, 584, 585, 586], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 573, "executed_branches": [], "missing_branches": []}, "TestCalculateMasksCentroidsCompact.test_centroids_compact_matches_dense": {"executed_lines": [598, 599, 600, 602, 603, 605, 607, 608, 610], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 596, "executed_branches": [[602, 603], [602, 605]], "missing_branches": []}, "TestCalculateMasksCentroidsCompact.test_centroids_empty_mask": {"executed_lines": [614, 615, 616, 618, 619, 621], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 612, "executed_branches": [], "missing_branches": []}, "TestCalculateMasksCentroidsCompact.test_centroids_empty_mask_with_tight_bbox": {"executed_lines": [625, 626, 627, 628, 630, 631, 633], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 623, "executed_branches": [], "missing_branches": []}, "TestCalculateMasksCentroidsCompact.test_centroids_zero_masks_returns_empty": {"executed_lines": [637, 643, 644], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 635, "executed_branches": [], "missing_branches": []}, "TestContainsHolesCompact.test_contains_holes_compact_roundtrip": {"executed_lines": [684, 685, 686, 688, 689, 690], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 680, "executed_branches": [], "missing_branches": []}, "TestContainsMultipleSegmentsCompact.test_contains_multiple_segments_compact_roundtrip": {"executed_lines": [738, 739, 740, 742, 743, 744, 745], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 734, "executed_branches": [], "missing_branches": []}, "_random_masks_and_xyxy": {"executed_lines": [781, 782, 783, 784, 785, 786, 787, 789, 790, 791, 793, 794], "summary": {"covered_lines": 12, "num_statements": 12, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 767, "executed_branches": [[782, 783], [782, 793], [789, 790], [789, 791]], "missing_branches": []}, "TestCompactMaskRoundtripRandom.test_parity_seed": {"executed_lines": [806, 807, 808, 809, 810], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 805, "executed_branches": [], "missing_branches": []}, "TestCompactMaskRoundtripRandom.test_shape_and_len": {"executed_lines": [822, 823, 824, 825, 826, 827], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 820, "executed_branches": [], "missing_branches": []}, "TestCompactMaskRoundtripRandom.test_individual_mask_access": {"executed_lines": [832, 833, 834, 835, 836, 837], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 830, "executed_branches": [[836, -829], [836, 837]], "missing_branches": []}, "TestCompactMaskAreaRandom.test_parity_seed": {"executed_lines": [849, 850, 851, 852, 854, 855], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 848, "executed_branches": [], "missing_branches": []}, "TestCompactMaskAreaRandom.test_sum_axis_matches_area": {"executed_lines": [866, 867, 868, 869, 870], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 864, "executed_branches": [], "missing_branches": []}, "TestCompactMaskFilterRandom.test_parity_seed": {"executed_lines": [878, 879, 880, 881, 883, 885, 886, 888, 889, 891, 892, 893], "summary": {"covered_lines": 12, "num_statements": 12, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 877, "executed_branches": [[885, 886], [885, 888]], "missing_branches": []}, "TestCompactMaskFilterRandom.test_list_index": {"executed_lines": [902, 903, 904, 905, 907, 908, 912, 913, 914], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 900, "executed_branches": [], "missing_branches": []}, "TestCompactMaskWithOffsetRandom.test_parity_seed": {"executed_lines": [926, 928, 929, 930, 931, 934, 935, 937, 938, 944], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 925, "executed_branches": [], "missing_branches": []}, "TestCompactMaskWithOffsetRandom.test_offset_into_larger_canvas": {"executed_lines": [956, 957, 958, 959, 960, 962, 963, 964, 966, 967, 969, 971, 972, 973, 975], "summary": {"covered_lines": 15, "num_statements": 15, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 954, "executed_branches": [[972, 973], [972, 975]], "missing_branches": []}, "TestRleSplitCols.test_all_true_2x2": {"executed_lines": [987, 989, 990, 991, 992], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 985, "executed_branches": [], "missing_branches": []}, "TestRleSplitCols.test_all_false_3x3": {"executed_lines": [996, 998, 999, 1000, 1001], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 994, "executed_branches": [], "missing_branches": []}, "TestRleSplitCols.test_mixed_2x2": {"executed_lines": [1005, 1007, 1008, 1009, 1010], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1003, "executed_branches": [], "missing_branches": []}, "TestRleSplitCols.test_round_trip_random": {"executed_lines": [1015, 1020, 1021, 1022, 1023, 1024, 1025, 1027, 1028, 1029, 1032, 1033, 1034], "summary": {"covered_lines": 13, "num_statements": 13, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1013, "executed_branches": [[1028, 1029], [1028, 1032]], "missing_branches": []}, "TestRleSplitCols.test_join_true_true_junction_no_zero_run": {"executed_lines": [1048, 1053, 1054, 1055, 1059], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1040, "executed_branches": [], "missing_branches": []}, "TestCompactMaskResize.test_scale_shape_and_offsets": {"executed_lines": [1100, 1101, 1102, 1103, 1104, 1106, 1108, 1110, 1111, 1112, 1113, 1114, 1115, 1116, 1117], "summary": {"covered_lines": 15, "num_statements": 15, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1092, "executed_branches": [], "missing_branches": []}, "TestCompactMaskResize.test_identity_preserves_rle": {"executed_lines": [1121, 1122, 1123, 1124, 1126, 1128, 1129, 1130, 1131, 1132], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1119, "executed_branches": [[1131, -1119], [1131, 1132]], "missing_branches": []}, "TestCompactMaskResize.test_empty_n0": {"executed_lines": [1136, 1137, 1138, 1140, 1142, 1143], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1134, "executed_branches": [], "missing_branches": []}, "TestCompactMaskResize.test_invalid_dimensions_raises": {"executed_lines": [1156, 1157, 1158, 1159, 1161, 1162], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1154, "executed_branches": [], "missing_branches": []}, "TestCompactMaskResize.test_multi_mask_each_scales_independently": {"executed_lines": [1166, 1167, 1168, 1169, 1170, 1171, 1172, 1173, 1174, 1176, 1178, 1179, 1180, 1181, 1182, 1183, 1184, 1185], "summary": {"covered_lines": 18, "num_statements": 18, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1164, "executed_branches": [[1181, -1164], [1181, 1182]], "missing_branches": []}, "TestCompactMaskResize.test_zero_extent_extreme_downscale": {"executed_lines": [1189, 1190, 1191, 1192, 1194, 1196, 1197, 1198, 1199, 1200], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1187, "executed_branches": [], "missing_branches": []}, "TestCompactMaskResize.test_dense_parity_roundtrip": {"executed_lines": [1205, 1207, 1208, 1209, 1210, 1211, 1212, 1214, 1215, 1217, 1218, 1223, 1224, 1225], "summary": {"covered_lines": 14, "num_statements": 14, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1203, "executed_branches": [[1217, -1202], [1217, 1218]], "missing_branches": []}, "TestRleResize.test_identity_4x4": {"executed_lines": [1241, 1243, 1252, 1253, 1254, 1255], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1239, "executed_branches": [], "missing_branches": []}, "TestRleResize.test_2x_upscale": {"executed_lines": [1259, 1261, 1263, 1270, 1271, 1272, 1274, 1277], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1257, "executed_branches": [], "missing_branches": []}, "TestRleResize.test_2x_downscale": {"executed_lines": [1281, 1283, 1285, 1294, 1295, 1296, 1298, 1301], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1279, "executed_branches": [], "missing_branches": []}, "TestRleResize.test_non_square_scale": {"executed_lines": [1305, 1307, 1309, 1310, 1311, 1312, 1313, 1314, 1316, 1319], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1303, "executed_branches": [], "missing_branches": []}, "TestRleResize.test_all_false": {"executed_lines": [1334, 1336, 1337, 1338, 1339, 1340], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1330, "executed_branches": [], "missing_branches": []}, "TestRleResize.test_all_true": {"executed_lines": [1355, 1357, 1358, 1359, 1360, 1361], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1351, "executed_branches": [], "missing_branches": []}, "TestRleResize.test_single_pixel_true_upscale": {"executed_lines": [1365, 1367, 1369, 1370, 1371, 1372, 1373, 1375, 1378], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1363, "executed_branches": [], "missing_branches": []}, "TestRleResize.test_roundtrip_parity_with_cv2": {"executed_lines": [1383, 1385, 1387, 1388, 1389, 1390, 1391, 1393, 1394, 1395, 1396, 1398, 1403, 1404], "summary": {"covered_lines": 14, "num_statements": 14, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1381, "executed_branches": [], "missing_branches": []}, "TestRleResize.test_tall_and_wide_crops": {"executed_lines": [1423, 1425, 1427, 1428, 1429, 1430, 1431, 1433, 1438], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1419, "executed_branches": [], "missing_branches": []}, "TestRleResize.test_prime_sized_crops": {"executed_lines": [1453, 1455, 1457, 1458, 1459, 1460, 1461, 1463, 1468], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1449, "executed_branches": [], "missing_branches": []}, "TestRleResize.test_large_scale_ratio": {"executed_lines": [1484, 1486, 1487, 1488, 1489, 1491, 1492, 1494], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1477, "executed_branches": [[1491, 1492], [1491, 1494]], "missing_branches": []}, "TestRleResize.test_resize_dispatch_uses_l3_for_sparse": {"executed_lines": [1498, 1499, 1500, 1501, 1502, 1504, 1506, 1507, 1508], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1496, "executed_branches": [], "missing_branches": []}, "TestRleResize.test_resize_dispatch_uses_cv2_for_dense": {"executed_lines": [1516, 1518, 1522, 1524, 1526, 1527, 1528, 1529, 1530, 1535, 1536, 1537, 1540, 1541], "summary": {"covered_lines": 14, "num_statements": 14, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1510, "executed_branches": [], "missing_branches": []}, "TestResizeParallelPath.test_parallel_resize_correctness": {"executed_lines": [1549, 1550, 1551, 1552, 1553, 1554, 1555, 1556, 1558, 1559, 1561, 1562, 1564, 1565], "summary": {"covered_lines": 14, "num_statements": 14, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1547, "executed_branches": [[1552, 1553], [1552, 1555], [1564, -1547], [1564, 1565]], "missing_branches": []}, "TestResizeParallelPath.test_parallel_matches_sequential": {"executed_lines": [1569, 1570, 1571, 1572, 1574, 1582, 1583, 1585, 1586, 1587, 1590, 1591], "summary": {"covered_lines": 12, "num_statements": 12, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1567, "executed_branches": [], "missing_branches": []}, "TestResizeParallelPath.test_parallel_matches_sequential._make_masks": {"executed_lines": [1575, 1576, 1577, 1578, 1579, 1580], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1574, "executed_branches": [[1576, 1577], [1576, 1579]], "missing_branches": []}, "": {"executed_lines": [3, 5, 7, 8, 10, 14, 20, 28, 36, 45, 64, 80, 89, 94, 113, 119, 128, 133, 141, 149, 156, 168, 178, 190, 207, 216, 229, 243, 251, 256, 261, 270, 274, 283, 293, 301, 313, 320, 330, 338, 347, 361, 375, 379, 396, 403, 410, 419, 426, 435, 443, 451, 461, 472, 478, 490, 508, 526, 547, 561, 573, 589, 596, 612, 623, 635, 647, 655, 680, 693, 700, 734, 753, 767, 797, 804, 805, 819, 820, 829, 830, 844, 847, 848, 863, 864, 873, 876, 877, 899, 900, 921, 924, 925, 953, 954, 982, 985, 994, 1003, 1012, 1013, 1040, 1062, 1069, 1092, 1119, 1134, 1145, 1154, 1164, 1187, 1202, 1203, 1231, 1239, 1257, 1279, 1303, 1321, 1330, 1342, 1351, 1363, 1380, 1381, 1410, 1419, 1440, 1449, 1470, 1477, 1496, 1510, 1544, 1547, 1567], "summary": {"covered_lines": 137, "num_statements": 137, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"TestRleHelpers": {"executed_lines": [68, 69, 70, 71, 73, 74, 75, 76, 91, 92, 117, 130], "summary": {"covered_lines": 12, "num_statements": 12, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 36, "executed_branches": [[68, 69], [68, 73]], "missing_branches": []}, "TestFromDenseToDense": {"executed_lines": [150, 151, 152, 153, 154, 158, 159, 160, 162, 163, 165], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 133, "executed_branches": [], "missing_branches": []}, "TestGetItem": {"executed_lines": [179, 180, 181, 182, 184, 185, 186, 187, 188, 191, 192, 193, 194, 199, 201, 202, 203, 204, 205, 208, 209, 210, 212, 213, 214, 217, 218, 219, 220, 222, 223, 224, 225, 226, 227, 231, 232, 233, 234, 236, 237, 238, 239, 240], "summary": {"covered_lines": 44, "num_statements": 44, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 168, "executed_branches": [[193, 194], [193, 199]], "missing_branches": []}, "TestProperties": {"executed_lines": [252, 253, 254, 257, 258, 259, 262, 268, 271, 272, 275, 276, 277, 278, 280, 281, 284, 290], "summary": {"covered_lines": 18, "num_statements": 18, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 243, "executed_branches": [], "missing_branches": []}, "TestCrop": {"executed_lines": [302, 303, 304, 305, 306, 308, 309, 310], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 293, "executed_branches": [], "missing_branches": []}, "TestArrayProtocol": {"executed_lines": [321, 322, 323, 324, 326, 327, 328, 331, 332, 333, 334, 335], "summary": {"covered_lines": 12, "num_statements": 12, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 313, "executed_branches": [], "missing_branches": []}, "TestMerge": {"executed_lines": [348, 349, 350, 351, 352, 354, 355, 356, 357, 362, 363, 369, 370, 372, 373, 376, 377, 380, 386, 392, 393], "summary": {"covered_lines": 21, "num_statements": 21, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 338, "executed_branches": [], "missing_branches": []}, "TestEquality": {"executed_lines": [404, 405, 406, 407, 408, 411, 412, 413, 414, 415, 416, 417, 420, 421, 422, 423], "summary": {"covered_lines": 16, "num_statements": 16, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 396, "executed_branches": [], "missing_branches": []}, "TestEdgeCases": {"executed_lines": [437, 438, 439, 440, 441, 444, 445, 446, 447, 448, 449, 453, 454, 455, 456, 457, 458, 459, 462, 468, 469, 470, 473, 474, 475, 476, 479, 480, 481, 482, 483, 485, 486, 487, 488, 492, 493, 494, 495, 496, 498, 499, 500, 506, 510, 511, 512, 513, 514, 516, 517, 518, 524, 528, 529, 530, 533, 534, 537, 539, 542, 543, 545, 549, 550, 551, 553, 554, 555, 557, 558, 559, 563, 569, 570, 571, 575, 576, 577, 580, 581, 582, 584, 585, 586], "summary": {"covered_lines": 85, "num_statements": 85, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 426, "executed_branches": [], "missing_branches": []}, "TestCalculateMasksCentroidsCompact": {"executed_lines": [598, 599, 600, 602, 603, 605, 607, 608, 610, 614, 615, 616, 618, 619, 621, 625, 626, 627, 628, 630, 631, 633, 637, 643, 644], "summary": {"covered_lines": 25, "num_statements": 25, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 589, "executed_branches": [[602, 603], [602, 605]], "missing_branches": []}, "TestContainsHolesCompact": {"executed_lines": [684, 685, 686, 688, 689, 690], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 647, "executed_branches": [], "missing_branches": []}, "TestContainsMultipleSegmentsCompact": {"executed_lines": [738, 739, 740, 742, 743, 744, 745], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 693, "executed_branches": [], "missing_branches": []}, "TestCompactMaskRoundtripRandom": {"executed_lines": [806, 807, 808, 809, 810, 822, 823, 824, 825, 826, 827, 832, 833, 834, 835, 836, 837], "summary": {"covered_lines": 17, "num_statements": 17, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 797, "executed_branches": [[836, -829], [836, 837]], "missing_branches": []}, "TestCompactMaskAreaRandom": {"executed_lines": [849, 850, 851, 852, 854, 855, 866, 867, 868, 869, 870], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 844, "executed_branches": [], "missing_branches": []}, "TestCompactMaskFilterRandom": {"executed_lines": [878, 879, 880, 881, 883, 885, 886, 888, 889, 891, 892, 893, 902, 903, 904, 905, 907, 908, 912, 913, 914], "summary": {"covered_lines": 21, "num_statements": 21, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 873, "executed_branches": [[885, 886], [885, 888]], "missing_branches": []}, "TestCompactMaskWithOffsetRandom": {"executed_lines": [926, 928, 929, 930, 931, 934, 935, 937, 938, 944, 956, 957, 958, 959, 960, 962, 963, 964, 966, 967, 969, 971, 972, 973, 975], "summary": {"covered_lines": 25, "num_statements": 25, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 921, "executed_branches": [[972, 973], [972, 975]], "missing_branches": []}, "TestRleSplitCols": {"executed_lines": [987, 989, 990, 991, 992, 996, 998, 999, 1000, 1001, 1005, 1007, 1008, 1009, 1010, 1015, 1020, 1021, 1022, 1023, 1024, 1025, 1027, 1028, 1029, 1032, 1033, 1034, 1048, 1053, 1054, 1055, 1059], "summary": {"covered_lines": 33, "num_statements": 33, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 982, "executed_branches": [[1028, 1029], [1028, 1032]], "missing_branches": []}, "TestCompactMaskResize": {"executed_lines": [1100, 1101, 1102, 1103, 1104, 1106, 1108, 1110, 1111, 1112, 1113, 1114, 1115, 1116, 1117, 1121, 1122, 1123, 1124, 1126, 1128, 1129, 1130, 1131, 1132, 1136, 1137, 1138, 1140, 1142, 1143, 1156, 1157, 1158, 1159, 1161, 1162, 1166, 1167, 1168, 1169, 1170, 1171, 1172, 1173, 1174, 1176, 1178, 1179, 1180, 1181, 1182, 1183, 1184, 1185, 1189, 1190, 1191, 1192, 1194, 1196, 1197, 1198, 1199, 1200, 1205, 1207, 1208, 1209, 1210, 1211, 1212, 1214, 1215, 1217, 1218, 1223, 1224, 1225], "summary": {"covered_lines": 79, "num_statements": 79, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 6, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1062, "executed_branches": [[1131, -1119], [1131, 1132], [1181, -1164], [1181, 1182], [1217, -1202], [1217, 1218]], "missing_branches": []}, "TestRleResize": {"executed_lines": [1241, 1243, 1252, 1253, 1254, 1255, 1259, 1261, 1263, 1270, 1271, 1272, 1274, 1277, 1281, 1283, 1285, 1294, 1295, 1296, 1298, 1301, 1305, 1307, 1309, 1310, 1311, 1312, 1313, 1314, 1316, 1319, 1334, 1336, 1337, 1338, 1339, 1340, 1355, 1357, 1358, 1359, 1360, 1361, 1365, 1367, 1369, 1370, 1371, 1372, 1373, 1375, 1378, 1383, 1385, 1387, 1388, 1389, 1390, 1391, 1393, 1394, 1395, 1396, 1398, 1403, 1404, 1423, 1425, 1427, 1428, 1429, 1430, 1431, 1433, 1438, 1453, 1455, 1457, 1458, 1459, 1460, 1461, 1463, 1468, 1484, 1486, 1487, 1488, 1489, 1491, 1492, 1494, 1498, 1499, 1500, 1501, 1502, 1504, 1506, 1507, 1508, 1516, 1518, 1522, 1524, 1526, 1527, 1528, 1529, 1530, 1535, 1536, 1537, 1540, 1541], "summary": {"covered_lines": 116, "num_statements": 116, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1231, "executed_branches": [[1491, 1492], [1491, 1494]], "missing_branches": []}, "TestResizeParallelPath": {"executed_lines": [1549, 1550, 1551, 1552, 1553, 1554, 1555, 1556, 1558, 1559, 1561, 1562, 1564, 1565, 1569, 1570, 1571, 1572, 1574, 1575, 1576, 1577, 1578, 1579, 1580, 1582, 1583, 1585, 1586, 1587, 1590, 1591], "summary": {"covered_lines": 32, "num_statements": 32, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 6, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1544, "executed_branches": [[1552, 1553], [1552, 1555], [1564, -1547], [1564, 1565], [1576, 1577], [1576, 1579]], "missing_branches": []}, "": {"executed_lines": [3, 5, 7, 8, 10, 14, 20, 28, 30, 31, 32, 33, 36, 45, 64, 80, 89, 94, 113, 119, 128, 133, 141, 149, 156, 168, 178, 190, 207, 216, 229, 243, 251, 256, 261, 270, 274, 283, 293, 301, 313, 320, 330, 338, 347, 361, 375, 379, 396, 403, 410, 419, 426, 435, 443, 451, 461, 472, 478, 490, 508, 526, 547, 561, 573, 589, 596, 612, 623, 635, 647, 655, 680, 693, 700, 734, 753, 767, 781, 782, 783, 784, 785, 786, 787, 789, 790, 791, 793, 794, 797, 804, 805, 819, 820, 829, 830, 844, 847, 848, 863, 864, 873, 876, 877, 899, 900, 921, 924, 925, 953, 954, 982, 985, 994, 1003, 1012, 1013, 1040, 1062, 1069, 1092, 1119, 1134, 1145, 1154, 1164, 1187, 1202, 1203, 1231, 1239, 1257, 1279, 1303, 1321, 1330, 1342, 1351, 1363, 1380, 1381, 1410, 1419, 1440, 1449, 1470, 1477, 1496, 1510, 1544, 1547, 1567], "summary": {"covered_lines": 153, "num_statements": 153, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [[782, 783], [782, 793], [789, 790], [789, 791]], "missing_branches": []}}}, "tests\\detection\\test_compact_mask_integration.py": {"executed_lines": [3, 5, 7, 8, 10, 11, 12, 15, 17, 20, 28, 29, 30, 31, 32, 38, 41, 49, 50, 51, 52, 53, 55, 56, 57, 58, 59, 60, 61, 64, 71, 72, 74, 75, 76, 78, 79, 80, 81, 82, 83, 85, 86, 87, 88, 89, 90, 91, 94, 102, 103, 104, 105, 106, 107, 108, 109, 110, 113, 120, 121, 122, 123, 124, 130, 133, 140, 141, 142, 143, 146, 156, 157, 158, 160, 161, 162, 163, 164, 171, 172, 173, 174, 175, 177, 179, 180, 181, 182, 183, 190, 191, 192, 194, 195, 197, 198, 199, 200, 201, 202, 209, 210, 211, 212, 213, 220, 221, 222, 225, 234, 235, 236, 237, 244, 245, 247, 248, 250, 256, 257, 259, 260, 261, 262, 263, 265, 266, 268, 269, 271, 272, 274], "summary": {"covered_lines": 133, "num_statements": 133, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [[105, -102], [105, 106]], "missing_branches": [], "functions": {"_full_xyxy": {"executed_lines": [17], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 15, "executed_branches": [], "missing_branches": []}, "_make_compact_detections": {"executed_lines": [28, 29, 30, 31, 32, 38], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 20, "executed_branches": [], "missing_branches": []}, "TestConstruction.test_detections_construction_with_compact_mask": {"executed_lines": [50, 51, 52, 53], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 49, "executed_branches": [], "missing_branches": []}, "TestConstruction.test_detections_compact_mask_validation_mismatch": {"executed_lines": [56, 57, 58, 59, 60, 61], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 55, "executed_branches": [], "missing_branches": []}, "TestFiltering.test_int_wraps_to_compact_mask": {"executed_lines": [72, 74, 75, 76], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 71, "executed_branches": [], "missing_branches": []}, "TestFiltering.test_slice_preserves_compact_mask": {"executed_lines": [79, 80, 81, 82, 83], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 78, "executed_branches": [], "missing_branches": []}, "TestFiltering.test_bool_array_preserves_compact_mask": {"executed_lines": [86, 87, 88, 89, 90, 91], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 85, "executed_branches": [], "missing_branches": []}, "TestIteration.test_iter_yields_2d_dense": {"executed_lines": [103, 104, 105, 106, 107, 108, 109, 110], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 102, "executed_branches": [[105, -102], [105, 106]], "missing_branches": []}, "TestEquality.test_compact_vs_dense": {"executed_lines": [121, 122, 123, 124, 130], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 120, "executed_branches": [], "missing_branches": []}, "TestArea.test_compact_matches_dense": {"executed_lines": [141, 142, 143], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 140, "executed_branches": [], "missing_branches": []}, "TestMerge.test_all_compact": {"executed_lines": [157, 158, 160, 161, 162, 163, 164, 171, 172, 173, 174, 175], "summary": {"covered_lines": 12, "num_statements": 12, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 156, "executed_branches": [], "missing_branches": []}, "TestMerge.test_mixed_compact_and_dense": {"executed_lines": [179, 180, 181, 182, 183, 190, 191, 192], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 177, "executed_branches": [], "missing_branches": []}, "TestMerge.test_inner_pair_with_compact": {"executed_lines": [195, 197, 198, 199, 200, 201, 202, 209, 210, 211, 212, 213, 220, 221, 222], "summary": {"covered_lines": 15, "num_statements": 15, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 194, "executed_branches": [], "missing_branches": []}, "TestAnnotators.test_mask_annotator": {"executed_lines": [235, 236, 237, 244, 245, 247, 248, 250], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 234, "executed_branches": [], "missing_branches": []}, "TestAnnotators.test_polygon_annotator": {"executed_lines": [257, 259, 260, 261, 262, 263, 265, 266, 268, 269, 271, 272, 274], "summary": {"covered_lines": 13, "num_statements": 13, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 256, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [3, 5, 7, 8, 10, 11, 12, 15, 20, 41, 49, 55, 64, 71, 78, 85, 94, 102, 113, 120, 133, 140, 146, 156, 177, 194, 225, 234, 256], "summary": {"covered_lines": 29, "num_statements": 29, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"TestConstruction": {"executed_lines": [50, 51, 52, 53, 56, 57, 58, 59, 60, 61], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 41, "executed_branches": [], "missing_branches": []}, "TestFiltering": {"executed_lines": [72, 74, 75, 76, 79, 80, 81, 82, 83, 86, 87, 88, 89, 90, 91], "summary": {"covered_lines": 15, "num_statements": 15, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 64, "executed_branches": [], "missing_branches": []}, "TestIteration": {"executed_lines": [103, 104, 105, 106, 107, 108, 109, 110], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 94, "executed_branches": [[105, -102], [105, 106]], "missing_branches": []}, "TestEquality": {"executed_lines": [121, 122, 123, 124, 130], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 113, "executed_branches": [], "missing_branches": []}, "TestArea": {"executed_lines": [141, 142, 143], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 133, "executed_branches": [], "missing_branches": []}, "TestMerge": {"executed_lines": [157, 158, 160, 161, 162, 163, 164, 171, 172, 173, 174, 175, 179, 180, 181, 182, 183, 190, 191, 192, 195, 197, 198, 199, 200, 201, 202, 209, 210, 211, 212, 213, 220, 221, 222], "summary": {"covered_lines": 35, "num_statements": 35, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 146, "executed_branches": [], "missing_branches": []}, "TestAnnotators": {"executed_lines": [235, 236, 237, 244, 245, 247, 248, 250, 257, 259, 260, 261, 262, 263, 265, 266, 268, 269, 271, 272, 274], "summary": {"covered_lines": 21, "num_statements": 21, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 225, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [3, 5, 7, 8, 10, 11, 12, 15, 17, 20, 28, 29, 30, 31, 32, 38, 41, 49, 55, 64, 71, 78, 85, 94, 102, 113, 120, 133, 140, 146, 156, 177, 194, 225, 234, 256], "summary": {"covered_lines": 36, "num_statements": 36, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\detection\\test_compact_mask_iou.py": {"executed_lines": [11, 13, 14, 16, 17, 30, 32, 33, 34, 37, 40, 42, 44, 45, 48, 54, 57, 65, 67, 68, 69, 71, 72, 74, 75, 77, 78, 79, 81, 83, 84, 85, 86, 88, 89, 91, 92, 94, 96, 97, 98, 99, 101, 102, 104, 105, 107, 108, 110, 112, 113, 114, 115, 117, 118, 120, 121, 123, 125, 127, 130, 131, 133, 134, 136, 137, 139, 141, 142, 144, 146, 147, 148, 149, 151, 152, 154, 155, 157, 159, 161, 162, 163, 165, 166, 168, 169, 170, 172, 174, 175, 181, 182, 184, 185, 187, 188, 190, 192, 193, 194, 196, 197, 199, 200, 202, 203, 204, 207, 216, 217, 218, 219, 220, 222, 223, 225, 226, 228, 230, 232, 233, 234, 235, 237, 239, 240, 241, 244, 252, 255, 256, 257, 258, 259, 261, 262, 266, 268, 269, 271, 273, 280, 281, 283, 284, 286, 287, 288, 290, 291, 293, 295, 297, 298, 299, 300, 301, 303, 304, 305, 307, 308, 310, 312, 313, 314, 316, 317, 318, 319, 321, 322, 323, 326, 333, 335, 336, 337, 338, 339, 341, 342, 343, 345, 346, 348, 349, 351, 353, 355, 356, 357, 358, 359, 361, 362, 363, 365, 366, 367, 369, 371, 372, 373, 374, 376, 377, 378, 380, 381, 382, 390, 404, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 425, 432, 433, 434, 435, 436, 438, 439, 441, 442, 444, 445, 447, 450, 457, 458, 460, 461, 462, 464, 465, 467, 474, 475, 477, 479, 480, 481, 483, 484, 486, 487, 489, 490, 492, 493, 495], "summary": {"covered_lines": 262, "num_statements": 262, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 6, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [[196, 197], [196, 199], [413, 414], [413, 422], [419, 420], [419, 421]], "missing_branches": [], "functions": {"_cm_from_masks": {"executed_lines": [32, 33, 34, 37], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 30, "executed_branches": [], "missing_branches": []}, "_cm_tight": {"executed_lines": [42, 44, 45], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 40, "executed_branches": [], "missing_branches": []}, "_dense_iou": {"executed_lines": [54], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 48, "executed_branches": [], "missing_branches": []}, "TestCompactMaskIouBatch.test_no_overlap_gives_zero": {"executed_lines": [67, 68, 69, 71, 72, 74, 75, 77, 78, 79], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 65, "executed_branches": [], "missing_branches": []}, "TestCompactMaskIouBatch.test_identical_masks_give_one": {"executed_lines": [83, 84, 85, 86, 88, 89, 91, 92], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 81, "executed_branches": [], "missing_branches": []}, "TestCompactMaskIouBatch.test_matches_dense_random": {"executed_lines": [96, 97, 98, 99, 101, 102, 104, 105, 107, 108], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 94, "executed_branches": [], "missing_branches": []}, "TestCompactMaskIouBatch.test_matches_dense_with_tight_bboxes": {"executed_lines": [112, 113, 114, 115, 117, 118, 120, 121, 123], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 110, "executed_branches": [], "missing_branches": []}, "TestCompactMaskIouBatch.test_partial_overlap": {"executed_lines": [127, 130, 131, 133, 134, 136, 137, 139, 141, 142], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 125, "executed_branches": [], "missing_branches": []}, "TestCompactMaskIouBatch.test_ios_metric": {"executed_lines": [146, 147, 148, 149, 151, 152, 154, 155, 157], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 144, "executed_branches": [], "missing_branches": []}, "TestCompactMaskIouBatch.test_all_false_masks": {"executed_lines": [161, 162, 163, 165, 166, 168, 169, 170], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 159, "executed_branches": [], "missing_branches": []}, "TestCompactMaskIouBatch.test_empty_inputs": {"executed_lines": [174, 175, 181, 182, 184, 185, 187, 188], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 172, "executed_branches": [], "missing_branches": []}, "TestCompactMaskIouBatch.test_n_by_n_pairwise": {"executed_lines": [192, 193, 194, 196, 197, 199, 200, 202, 203, 204], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 190, "executed_branches": [[196, 197], [196, 199]], "missing_branches": []}, "TestMaskIouBatchDispatch.test_both_compact_dispatches_to_rle": {"executed_lines": [217, 218, 219, 220, 222, 223, 225, 226, 228], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 216, "executed_branches": [], "missing_branches": []}, "TestMaskIouBatchDispatch.test_mixed_compact_and_dense": {"executed_lines": [232, 233, 234, 235, 237, 239, 240, 241], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 230, "executed_branches": [], "missing_branches": []}, "TestNmsWithCompactMask.test_nms_compact_matches_dense": {"executed_lines": [255, 256, 257, 258, 259, 261, 262, 266, 268, 269, 271], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 252, "executed_branches": [], "missing_branches": []}, "TestNmsWithCompactMask.test_nms_compact_matches_dense_borderline": {"executed_lines": [280, 281, 283, 284, 286, 287, 288, 290, 291, 293], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 273, "executed_branches": [], "missing_branches": []}, "TestNmsWithCompactMask.test_nms_compact_no_suppression": {"executed_lines": [297, 298, 299, 300, 301, 303, 304, 305, 307, 308], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 295, "executed_branches": [], "missing_branches": []}, "TestNmsWithCompactMask.test_nms_compact_full_suppression": {"executed_lines": [312, 313, 314, 316, 317, 318, 319, 321, 322, 323], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 310, "executed_branches": [], "missing_branches": []}, "TestNmmWithCompactMask.test_nmm_compact_matches_dense": {"executed_lines": [335, 336, 337, 338, 339, 341, 342, 343, 345, 346, 348, 351], "summary": {"covered_lines": 12, "num_statements": 12, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 333, "executed_branches": [], "missing_branches": []}, "TestNmmWithCompactMask.test_nmm_compact_matches_dense.normalise": {"executed_lines": [349], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 348, "executed_branches": [], "missing_branches": []}, "TestNmmWithCompactMask.test_nmm_no_merge": {"executed_lines": [355, 356, 357, 358, 359, 361, 362, 363, 365, 366, 367], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 353, "executed_branches": [], "missing_branches": []}, "TestNmmWithCompactMask.test_nmm_full_merge": {"executed_lines": [371, 372, 373, 374, 376, 377, 378, 380, 381, 382], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 369, "executed_branches": [], "missing_branches": []}, "_random_masks": {"executed_lines": [412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 404, "executed_branches": [[413, 414], [413, 422], [419, 420], [419, 421]], "missing_branches": []}, "TestCompactMaskIouRandom.test_parity_seed": {"executed_lines": [434, 435, 436, 438, 439, 441, 442, 444, 445, 447, 450], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 433, "executed_branches": [], "missing_branches": []}, "TestCompactMaskIouRandom.test_self_iou_diagonal": {"executed_lines": [460, 461, 462, 464, 465, 467], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 458, "executed_branches": [], "missing_branches": []}, "TestCompactMaskIouRandom.test_tight_bbox_parity": {"executed_lines": [477, 479, 480, 481, 483, 484, 486, 487, 489, 490, 492, 493, 495], "summary": {"covered_lines": 13, "num_statements": 13, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 475, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [11, 13, 14, 16, 17, 30, 40, 48, 57, 65, 81, 94, 110, 125, 144, 159, 172, 190, 207, 216, 230, 244, 252, 273, 295, 310, 326, 333, 353, 369, 390, 404, 425, 432, 433, 457, 458, 474, 475], "summary": {"covered_lines": 39, "num_statements": 39, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"TestCompactMaskIouBatch": {"executed_lines": [67, 68, 69, 71, 72, 74, 75, 77, 78, 79, 83, 84, 85, 86, 88, 89, 91, 92, 96, 97, 98, 99, 101, 102, 104, 105, 107, 108, 112, 113, 114, 115, 117, 118, 120, 121, 123, 127, 130, 131, 133, 134, 136, 137, 139, 141, 142, 146, 147, 148, 149, 151, 152, 154, 155, 157, 161, 162, 163, 165, 166, 168, 169, 170, 174, 175, 181, 182, 184, 185, 187, 188, 192, 193, 194, 196, 197, 199, 200, 202, 203, 204], "summary": {"covered_lines": 82, "num_statements": 82, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 57, "executed_branches": [[196, 197], [196, 199]], "missing_branches": []}, "TestMaskIouBatchDispatch": {"executed_lines": [217, 218, 219, 220, 222, 223, 225, 226, 228, 232, 233, 234, 235, 237, 239, 240, 241], "summary": {"covered_lines": 17, "num_statements": 17, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 207, "executed_branches": [], "missing_branches": []}, "TestNmsWithCompactMask": {"executed_lines": [255, 256, 257, 258, 259, 261, 262, 266, 268, 269, 271, 280, 281, 283, 284, 286, 287, 288, 290, 291, 293, 297, 298, 299, 300, 301, 303, 304, 305, 307, 308, 312, 313, 314, 316, 317, 318, 319, 321, 322, 323], "summary": {"covered_lines": 41, "num_statements": 41, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 244, "executed_branches": [], "missing_branches": []}, "TestNmmWithCompactMask": {"executed_lines": [335, 336, 337, 338, 339, 341, 342, 343, 345, 346, 348, 349, 351, 355, 356, 357, 358, 359, 361, 362, 363, 365, 366, 367, 371, 372, 373, 374, 376, 377, 378, 380, 381, 382], "summary": {"covered_lines": 34, "num_statements": 34, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 326, "executed_branches": [], "missing_branches": []}, "TestCompactMaskIouRandom": {"executed_lines": [434, 435, 436, 438, 439, 441, 442, 444, 445, 447, 450, 460, 461, 462, 464, 465, 467, 477, 479, 480, 481, 483, 484, 486, 487, 489, 490, 492, 493, 495], "summary": {"covered_lines": 30, "num_statements": 30, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 425, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [11, 13, 14, 16, 17, 30, 32, 33, 34, 37, 40, 42, 44, 45, 48, 54, 57, 65, 81, 94, 110, 125, 144, 159, 172, 190, 207, 216, 230, 244, 252, 273, 295, 310, 326, 333, 353, 369, 390, 404, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 425, 432, 433, 457, 458, 474, 475], "summary": {"covered_lines": 58, "num_statements": 58, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [[413, 414], [413, 422], [419, 420], [419, 421]], "missing_branches": []}}}, "tests\\detection\\test_core.py": {"executed_lines": [1, 3, 4, 6, 7, 9, 10, 16, 17, 18, 19, 20, 22, 37, 45, 46, 47, 58, 69, 88, 99, 102, 110, 120, 126, 131, 135, 142, 143, 144, 145, 146, 150, 155, 156, 160, 166, 299, 310, 311, 312, 315, 579, 584, 585, 586, 589, 660, 666, 667, 668, 671, 716, 719, 722, 880, 886, 887, 888, 891, 941, 943, 946, 948, 949, 963, 964, 967, 968, 971, 974, 975, 976, 979, 980, 983, 986, 987, 988, 990, 991, 992, 995, 998, 999, 1000, 1001, 1004, 1007, 1011, 1012, 1013, 1021, 1024, 1031, 1035, 1036, 1037, 1039, 1041, 1043, 1050, 1052, 1058, 1060, 1063, 1066, 1125, 1129, 1130, 1131, 1132, 1134, 1137, 1140, 1445, 1451, 1452, 1453, 1454, 1455, 1459, 1460, 1461, 1463, 1464, 1465, 1467, 1468, 1469, 1471, 1472, 1473, 1474, 1475, 1476, 1479, 1482, 1655, 1668, 1669, 1673, 1680, 1687, 1688, 1690, 1691, 1697, 1698, 1699, 1700, 1701, 1702, 1703, 1704, 1710, 1712, 1713, 1714, 1716, 1721, 1736, 1737, 1739, 1740, 1741, 1743, 1745, 1759, 1761, 1763, 1764, 1766, 1768, 1775, 1777, 1780, 1783, 1792, 1796, 1797, 1799, 1801, 1803, 1808, 1809, 1811, 1814, 1815, 1816, 1817, 1824, 1826, 1829, 1835, 1837, 1840, 1841, 1843, 1845, 1849, 1854, 1856, 1858, 1865, 1867, 1868, 1874, 1875, 1877, 1885, 1889, 1890, 1891, 1892, 1893, 1898, 1899, 1900, 1906], "summary": {"covered_lines": 220, "num_statements": 220, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 24, "num_partial_branches": 0, "covered_branches": 24, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [[975, 976], [975, 979], [1131, 1132], [1131, 1134], [1454, 1455], [1454, 1459], [1460, 1461], [1460, 1463], [1464, 1465], [1464, 1467], [1468, 1469], [1468, 1471], [1472, 1473], [1472, 1474], [1474, -1140], [1474, 1475], [1668, 1669], [1668, 1687], [1700, 1701], [1700, 1702], [1889, 1890], [1889, 1892], [1892, 1893], [1892, 1898]], "missing_branches": [], "functions": {"test_detections_bool_mask_types_do_not_warn": {"executed_lines": [144, 145, 146, 150], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 143, "executed_branches": [], "missing_branches": []}, "test_detections_non_bool_mask_warns_with_migration_path": {"executed_lines": [156, 160], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 155, "executed_branches": [], "missing_branches": []}, "test_getitem": {"executed_lines": [310, 311, 312], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 299, "executed_branches": [], "missing_branches": []}, "test_merge": {"executed_lines": [584, 585, 586], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 579, "executed_branches": [], "missing_branches": []}, "test_get_anchor_coordinates": {"executed_lines": [666, 667, 668], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 660, "executed_branches": [], "missing_branches": []}, "test_equal": {"executed_lines": [719], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 716, "executed_branches": [], "missing_branches": []}, "test_merge_inner_detection_object_pair": {"executed_lines": [886, 887, 888], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 880, "executed_branches": [], "missing_branches": []}, "test_is_empty": {"executed_lines": [943], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 941, "executed_branches": [], "missing_branches": []}, "test_from_inference_empty_class_name_dtype_matches_non_empty": {"executed_lines": [948, 949, 963, 964, 967, 968, 971, 974, 975, 976, 979, 980], "summary": {"covered_lines": 12, "num_statements": 12, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 946, "executed_branches": [[975, 976], [975, 979]], "missing_branches": []}, "test_from_inference_sdk_dict_path_empty_preserves_class_name_dtype": {"executed_lines": [986, 987, 990, 991, 992], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 983, "executed_branches": [], "missing_branches": []}, "test_from_inference_sdk_dict_path_empty_preserves_class_name_dtype._FakeSdkResult.dict": {"executed_lines": [988], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 987, "executed_branches": [], "missing_branches": []}, "_rotated_rect": {"executed_lines": [998, 999, 1000, 1001, 1004], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 995, "executed_branches": [], "missing_branches": []}, "_make_obb_detections": {"executed_lines": [1011, 1012, 1013], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1007, "executed_branches": [], "missing_branches": []}, "TestDetectionsObbDispatch.test_uses_obb_iou_when_oriented_box_coordinates_present": {"executed_lines": [1035, 1036, 1037, 1039, 1041], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1031, "executed_branches": [], "missing_branches": []}, "TestDetectionsObbDispatch.test_falls_back_without_obb_data": {"executed_lines": [1052, 1058, 1060], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1050, "executed_branches": [], "missing_branches": []}, "TestMergeObbCorners.test_merge": {"executed_lines": [1129, 1130, 1131, 1132, 1134], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1125, "executed_branches": [[1131, 1132], [1131, 1134]], "missing_branches": []}, "TestMergeDetectionGroup.test_merge": {"executed_lines": [1451, 1452, 1453, 1454, 1455, 1459, 1460, 1461, 1463, 1464, 1465, 1467, 1468, 1469, 1471, 1472, 1473, 1474, 1475, 1476], "summary": {"covered_lines": 20, "num_statements": 20, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 12, "num_partial_branches": 0, "covered_branches": 12, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1445, "executed_branches": [[1454, 1455], [1454, 1459], [1460, 1461], [1460, 1463], [1464, 1465], [1464, 1467], [1468, 1469], [1468, 1471], [1472, 1473], [1472, 1474], [1474, -1140], [1474, 1475]], "missing_branches": []}, "TestDetectionsWithNMM.test_obb_nmm_merge": {"executed_lines": [1668, 1669, 1673, 1680, 1687, 1688, 1690, 1691, 1697, 1698, 1699, 1700, 1701, 1702, 1703, 1704], "summary": {"covered_lines": 16, "num_statements": 16, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1655, "executed_branches": [[1668, 1669], [1668, 1687], [1700, 1701], [1700, 1702]], "missing_branches": []}, "TestDetectionsWithNMM.test_obb_nmm_matches_aabb_for_axis_aligned": {"executed_lines": [1712, 1713, 1714, 1716, 1721, 1736, 1737, 1739, 1740, 1741], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1710, "executed_branches": [], "missing_branches": []}, "TestDetectionsWithNMM.test_staircase_obb_merge_within_union": {"executed_lines": [1745, 1759, 1761, 1763, 1764], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1743, "executed_branches": [], "missing_branches": []}, "TestDetectionsWithNMM.test_obb_nmm_empty_detections": {"executed_lines": [1768, 1775, 1777], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1766, "executed_branches": [], "missing_branches": []}, "TestDetectionsArea.test_uses_oriented_box_corners_when_present": {"executed_lines": [1796, 1797, 1799], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1792, "executed_branches": [], "missing_branches": []}, "TestDetectionsArea.test_falls_back_to_box_area_without_obb_data": {"executed_lines": [1803, 1808, 1809], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1801, "executed_branches": [], "missing_branches": []}, "TestDetectionsArea.test_mask_takes_precedence_over_oriented_box": {"executed_lines": [1814, 1815, 1816, 1817, 1824], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1811, "executed_branches": [], "missing_branches": []}, "TestDetectionsArea.test_empty_detections_with_obb_data_returns_empty_array": {"executed_lines": [1829, 1835], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1826, "executed_branches": [], "missing_branches": []}, "TestDetectionsArea.test_degenerate_oriented_box_has_zero_area": {"executed_lines": [1840, 1841, 1843], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1837, "executed_branches": [], "missing_branches": []}, "TestDetectionsArea.test_handles_batched_oriented_boxes": {"executed_lines": [1849, 1854, 1856], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1845, "executed_branches": [], "missing_branches": []}, "TestDetectionsArea.test_raises_on_malformed_obb_coordinates_shape": {"executed_lines": [1867, 1868, 1874, 1875], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1865, "executed_branches": [], "missing_branches": []}, "TestDetectionsArea.test_area_return_dtype_per_branch": {"executed_lines": [1889, 1890, 1891, 1892, 1893, 1898, 1899, 1900, 1906], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1885, "executed_branches": [[1889, 1890], [1889, 1892], [1892, 1893], [1892, 1898]], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 6, 7, 9, 10, 16, 17, 18, 19, 20, 22, 37, 45, 46, 47, 58, 69, 88, 99, 102, 110, 120, 126, 131, 135, 142, 143, 155, 166, 299, 315, 579, 589, 660, 671, 716, 722, 880, 891, 941, 946, 983, 995, 1007, 1021, 1024, 1031, 1043, 1050, 1063, 1066, 1125, 1137, 1140, 1445, 1479, 1482, 1655, 1710, 1743, 1766, 1780, 1783, 1792, 1801, 1811, 1826, 1837, 1845, 1858, 1865, 1877, 1885], "summary": {"covered_lines": 75, "num_statements": 75, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"test_from_inference_sdk_dict_path_empty_preserves_class_name_dtype._FakeSdkResult": {"executed_lines": [988], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 986, "executed_branches": [], "missing_branches": []}, "TestDetectionsObbDispatch": {"executed_lines": [1035, 1036, 1037, 1039, 1041, 1052, 1058, 1060], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1021, "executed_branches": [], "missing_branches": []}, "TestMergeObbCorners": {"executed_lines": [1129, 1130, 1131, 1132, 1134], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1063, "executed_branches": [[1131, 1132], [1131, 1134]], "missing_branches": []}, "TestMergeDetectionGroup": {"executed_lines": [1451, 1452, 1453, 1454, 1455, 1459, 1460, 1461, 1463, 1464, 1465, 1467, 1468, 1469, 1471, 1472, 1473, 1474, 1475, 1476], "summary": {"covered_lines": 20, "num_statements": 20, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 12, "num_partial_branches": 0, "covered_branches": 12, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1137, "executed_branches": [[1454, 1455], [1454, 1459], [1460, 1461], [1460, 1463], [1464, 1465], [1464, 1467], [1468, 1469], [1468, 1471], [1472, 1473], [1472, 1474], [1474, -1140], [1474, 1475]], "missing_branches": []}, "TestDetectionsWithNMM": {"executed_lines": [1668, 1669, 1673, 1680, 1687, 1688, 1690, 1691, 1697, 1698, 1699, 1700, 1701, 1702, 1703, 1704, 1712, 1713, 1714, 1716, 1721, 1736, 1737, 1739, 1740, 1741, 1745, 1759, 1761, 1763, 1764, 1768, 1775, 1777], "summary": {"covered_lines": 34, "num_statements": 34, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1479, "executed_branches": [[1668, 1669], [1668, 1687], [1700, 1701], [1700, 1702]], "missing_branches": []}, "TestDetectionsArea": {"executed_lines": [1796, 1797, 1799, 1803, 1808, 1809, 1814, 1815, 1816, 1817, 1824, 1829, 1835, 1840, 1841, 1843, 1849, 1854, 1856, 1867, 1868, 1874, 1875, 1889, 1890, 1891, 1892, 1893, 1898, 1899, 1900, 1906], "summary": {"covered_lines": 32, "num_statements": 32, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1780, "executed_branches": [[1889, 1890], [1889, 1892], [1892, 1893], [1892, 1898]], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 6, 7, 9, 10, 16, 17, 18, 19, 20, 22, 37, 45, 46, 47, 58, 69, 88, 99, 102, 110, 120, 126, 131, 135, 142, 143, 144, 145, 146, 150, 155, 156, 160, 166, 299, 310, 311, 312, 315, 579, 584, 585, 586, 589, 660, 666, 667, 668, 671, 716, 719, 722, 880, 886, 887, 888, 891, 941, 943, 946, 948, 949, 963, 964, 967, 968, 971, 974, 975, 976, 979, 980, 983, 986, 987, 990, 991, 992, 995, 998, 999, 1000, 1001, 1004, 1007, 1011, 1012, 1013, 1021, 1024, 1031, 1043, 1050, 1063, 1066, 1125, 1137, 1140, 1445, 1479, 1482, 1655, 1710, 1743, 1766, 1780, 1783, 1792, 1801, 1811, 1826, 1837, 1845, 1858, 1865, 1877, 1885], "summary": {"covered_lines": 120, "num_statements": 120, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [[975, 976], [975, 979]], "missing_branches": []}}}, "tests\\detection\\test_csv.py": {"executed_lines": [1, 3, 4, 5, 7, 8, 10, 11, 12, 15, 293, 301, 302, 303, 305, 306, 307, 309, 311, 314, 501, 509, 510, 511, 512, 513, 515, 518, 519, 520, 521, 522, 526, 529, 540, 541], "summary": {"covered_lines": 36, "num_statements": 36, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 6, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [[302, 303], [302, 305], [306, 307], [306, 309], [521, 522], [521, 526]], "missing_branches": [], "functions": {"test_csv_sink": {"executed_lines": [301, 302, 303, 305, 306, 307, 309, 311], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 293, "executed_branches": [[302, 303], [302, 305], [306, 307], [306, 309]], "missing_branches": []}, "test_csv_sink_manual": {"executed_lines": [509, 510, 511, 512, 513, 515], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 501, "executed_branches": [], "missing_branches": []}, "assert_csv_equal": {"executed_lines": [519, 520, 521, 522, 526], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 518, "executed_branches": [[521, 522], [521, 526]], "missing_branches": []}, "test_csv_sink_slice_value": {"executed_lines": [541], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 540, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 5, 7, 8, 10, 11, 12, 15, 293, 314, 501, 518, 529, 540], "summary": {"covered_lines": 16, "num_statements": 16, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 3, 4, 5, 7, 8, 10, 11, 12, 15, 293, 301, 302, 303, 305, 306, 307, 309, 311, 314, 501, 509, 510, 511, 512, 513, 515, 518, 519, 520, 521, 522, 526, 529, 540, 541], "summary": {"covered_lines": 36, "num_statements": 36, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 6, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [[302, 303], [302, 305], [306, 307], [306, 309], [521, 522], [521, 526]], "missing_branches": []}}}, "tests\\detection\\test_from_adapters.py": {"executed_lines": [1, 3, 4, 6, 7, 8, 9, 18, 19, 26, 28, 30, 31, 32, 33, 36, 37, 38, 39, 40, 42, 43, 45, 47, 48, 49, 50, 52, 53, 54, 57, 60, 62, 63, 65, 68, 70, 72, 73, 74, 77, 94, 100, 105, 107, 109, 110, 111, 112, 113], "summary": {"covered_lines": 50, "num_statements": 50, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [[110, -77], [110, 111]], "missing_branches": [], "functions": {"test_from_yolov5_maps_columns_correctly": {"executed_lines": [19, 26, 28, 30, 31, 32, 33], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 18, "executed_branches": [], "missing_branches": []}, "test_from_ultralytics_boxes_branch_maps_fields_and_class_names": {"executed_lines": [37, 38, 39, 40, 42, 43, 45, 47, 48, 49, 50, 52, 53, 54], "summary": {"covered_lines": 14, "num_statements": 14, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 36, "executed_branches": [], "missing_branches": []}, "test_from_ultralytics_segmentation_only_branch_uses_masks_and_arange": {"executed_lines": [60, 62, 63, 65, 68, 70, 72, 73, 74], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 57, "executed_branches": [], "missing_branches": []}, "test_from_yolo_nas_handles_empty_and_non_empty": {"executed_lines": [100, 105, 107, 109, 110, 111, 112, 113], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 94, "executed_branches": [[110, -77], [110, 111]], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 6, 7, 8, 9, 18, 36, 57, 77, 94], "summary": {"covered_lines": 12, "num_statements": 12, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 3, 4, 6, 7, 8, 9, 18, 19, 26, 28, 30, 31, 32, 33, 36, 37, 38, 39, 40, 42, 43, 45, 47, 48, 49, 50, 52, 53, 54, 57, 60, 62, 63, 65, 68, 70, 72, 73, 74, 77, 94, 100, 105, 107, 109, 110, 111, 112, 113], "summary": {"covered_lines": 50, "num_statements": 50, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [[110, -77], [110, 111]], "missing_branches": []}}}, "tests\\detection\\test_from_sam.py": {"executed_lines": [1, 3, 4, 6, 8, 40, 66, 83, 100, 105, 107, 108, 109, 111, 114, 179, 186, 190, 191, 192, 195, 196, 197, 200], "summary": {"covered_lines": 24, "num_statements": 24, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [[108, 109], [108, 111]], "missing_branches": [], "functions": {"test_from_sam": {"executed_lines": [105, 107, 108, 109, 111], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 100, "executed_branches": [[108, 109], [108, 111]], "missing_branches": []}, "test_from_sam3": {"executed_lines": [186, 190, 191, 192], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 179, "executed_branches": [], "missing_branches": []}, "test_from_sam3_invalid_resolution": {"executed_lines": [196, 197, 200], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 195, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 6, 8, 40, 66, 83, 100, 114, 179, 195], "summary": {"covered_lines": 12, "num_statements": 12, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 3, 4, 6, 8, 40, 66, 83, 100, 105, 107, 108, 109, 111, 114, 179, 186, 190, 191, 192, 195, 196, 197, 200], "summary": {"covered_lines": 24, "num_statements": 24, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [[108, 109], [108, 111]], "missing_branches": []}}}, "tests\\detection\\test_inference_slicer_compact.py": {"executed_lines": [9, 11, 13, 14, 15, 18, 20, 21, 22, 23, 24, 25, 33, 45, 47, 48, 55, 56, 60, 62, 63, 70, 71, 72, 74, 76, 78, 86, 95, 96, 98, 100, 101, 104, 105, 107, 108, 110, 116, 118, 120, 122, 124, 125, 127, 135, 137, 138, 142, 145, 146, 147, 153, 154, 161, 162], "summary": {"covered_lines": 56, "num_statements": 56, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"_fake_seg_callback": {"executed_lines": [20, 21, 22, 23, 24, 25], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 18, "executed_branches": [], "missing_branches": []}, "TestInferenceSlicerCompactMasks.test_compact_masks_flag_converts_dense_to_compact": {"executed_lines": [47, 48, 55, 56], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 45, "executed_branches": [], "missing_branches": []}, "TestInferenceSlicerCompactMasks.test_compact_masks_false_keeps_dense": {"executed_lines": [62, 63, 70, 71, 72], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 60, "executed_branches": [], "missing_branches": []}, "TestInferenceSlicerCompactMasks.test_compact_and_dense_pipelines_give_same_masks": {"executed_lines": [76, 78, 86, 95, 96, 98, 100, 101, 104, 107, 108, 110], "summary": {"covered_lines": 12, "num_statements": 12, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 74, "executed_branches": [], "missing_branches": []}, "TestInferenceSlicerCompactMasks.test_compact_and_dense_pipelines_give_same_masks._sort_key": {"executed_lines": [105], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 104, "executed_branches": [], "missing_branches": []}, "TestInferenceSlicerCompactMasks.test_nms_with_overlapping_tiles_uses_rle_iou": {"executed_lines": [118, 120, 122, 127, 135, 137, 138], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 116, "executed_branches": [], "missing_branches": []}, "TestInferenceSlicerCompactMasks.test_nms_with_overlapping_tiles_uses_rle_iou.counting_callback": {"executed_lines": [124, 125], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 122, "executed_branches": [], "missing_branches": []}, "TestInferenceSlicerCompactMasks.test_no_mask_callback_unaffected": {"executed_lines": [145, 153, 154, 161, 162], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 142, "executed_branches": [], "missing_branches": []}, "TestInferenceSlicerCompactMasks.test_no_mask_callback_unaffected.box_only_callback": {"executed_lines": [146, 147], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 145, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [9, 11, 13, 14, 15, 18, 33, 45, 60, 74, 116, 142], "summary": {"covered_lines": 12, "num_statements": 12, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"TestInferenceSlicerCompactMasks": {"executed_lines": [47, 48, 55, 56, 62, 63, 70, 71, 72, 76, 78, 86, 95, 96, 98, 100, 101, 104, 105, 107, 108, 110, 118, 120, 122, 124, 125, 127, 135, 137, 138, 145, 146, 147, 153, 154, 161, 162], "summary": {"covered_lines": 38, "num_statements": 38, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 33, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [9, 11, 13, 14, 15, 18, 20, 21, 22, 23, 24, 25, 33, 45, 60, 74, 116, 142], "summary": {"covered_lines": 18, "num_statements": 18, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\detection\\test_json.py": {"executed_lines": [1, 3, 4, 5, 7, 8, 10, 11, 14, 377, 385, 386, 387, 389, 390, 391, 393, 395, 398, 408, 412, 413, 418, 419, 420, 421, 422, 425, 427, 428, 432, 433, 434, 435, 436, 439, 441, 442, 445, 446, 447, 448, 452], "summary": {"covered_lines": 43, "num_statements": 43, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [[386, 387], [386, 389], [390, 391], [390, 393]], "missing_branches": [], "functions": {"test_json_sink": {"executed_lines": [385, 386, 387, 389, 390, 391, 393, 395], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 377, "executed_branches": [[386, 387], [386, 389], [390, 391], [390, 393]], "missing_branches": []}, "test_json_sink_serializes_numpy_scalar_custom_data": {"executed_lines": [412, 413, 418, 419, 420, 421, 422], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 408, "executed_branches": [], "missing_branches": []}, "test_json_sink_serializes_nested_numpy_array_custom_data": {"executed_lines": [427, 428, 432, 433, 434, 435, 436], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 425, "executed_branches": [], "missing_branches": []}, "test_json_default_raises_for_unserializable_type": {"executed_lines": [441, 442], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 439, "executed_branches": [], "missing_branches": []}, "assert_json_equal": {"executed_lines": [446, 447, 448, 452], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 445, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 5, 7, 8, 10, 11, 14, 377, 398, 408, 425, 439, 445], "summary": {"covered_lines": 15, "num_statements": 15, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 3, 4, 5, 7, 8, 10, 11, 14, 377, 385, 386, 387, 389, 390, 391, 393, 395, 398, 408, 412, 413, 418, 419, 420, 421, 422, 425, 427, 428, 432, 433, 434, 435, 436, 439, 441, 442, 445, 446, 447, 448, 452], "summary": {"covered_lines": 43, "num_statements": 43, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [[386, 387], [386, 389], [390, 391], [390, 393]], "missing_branches": []}}}, "tests\\detection\\test_line_counter.py": {"executed_lines": [1, 3, 5, 6, 8, 9, 10, 13, 68, 73, 74, 75, 78, 236, 242, 244, 245, 246, 247, 251, 252, 253, 255, 258, 263, 403, 410, 414, 415, 416, 417, 421, 422, 423, 425, 428, 433, 481, 489, 490, 493, 494, 495, 496, 500, 501, 502, 504, 505, 508, 596, 604, 611, 612, 613, 614, 618, 619, 620, 622, 625, 630, 769, 780, 781, 787, 788, 789, 790, 791, 792, 796, 797, 798, 799, 800, 802, 803, 804, 805, 808, 863, 870, 872, 875, 878, 880, 881, 884, 885, 886, 887, 888, 890, 892, 893, 894, 896, 897], "summary": {"covered_lines": 99, "num_statements": 99, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 14, "num_partial_branches": 0, "covered_branches": 14, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [[246, 247], [246, 255], [416, 417], [416, 425], [495, 496], [495, 504], [613, 614], [613, 622], [791, 792], [791, 802], [872, 875], [872, 880], [886, 887], [886, 890]], "missing_branches": [], "functions": {"test_calculate_region_of_interest_limits": {"executed_lines": [73, 74, 75], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 68, "executed_branches": [], "missing_branches": []}, "test_line_zone_one_detection_default_anchors": {"executed_lines": [242, 244, 245, 246, 247, 251, 252, 253, 255, 258], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 236, "executed_branches": [[246, 247], [246, 255]], "missing_branches": []}, "test_line_zone_one_detection": {"executed_lines": [410, 414, 415, 416, 417, 421, 422, 423, 425, 428], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 403, "executed_branches": [[416, 417], [416, 425]], "missing_branches": []}, "test_line_zone_multiple_detections": {"executed_lines": [489, 490, 493, 494, 495, 496, 500, 501, 502, 504, 505], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 481, "executed_branches": [[495, 496], [495, 504]], "missing_branches": []}, "test_line_zone_one_detection_long_horizon": {"executed_lines": [604, 611, 612, 613, 614, 618, 619, 620, 622, 625], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 596, "executed_branches": [[613, 614], [613, 622]], "missing_branches": []}, "test_line_zone_long_horizon_disappearing_detections": {"executed_lines": [780, 781, 787, 788, 789, 790, 791, 792, 796, 797, 798, 799, 800, 802, 803, 804, 805], "summary": {"covered_lines": 17, "num_statements": 17, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 769, "executed_branches": [[791, 792], [791, 802]], "missing_branches": []}, "test_line_zone_tracker_id_reuse_with_different_classes": {"executed_lines": [870, 872, 875, 878, 880, 881], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 863, "executed_branches": [[872, 875], [872, 880]], "missing_branches": []}, "test_line_zone_annotator_multiclass_supports_none_class_id": {"executed_lines": [885, 886, 887, 888, 890, 892, 893, 894, 896, 897], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 884, "executed_branches": [[886, 887], [886, 890]], "missing_branches": []}, "": {"executed_lines": [1, 3, 5, 6, 8, 9, 10, 13, 68, 78, 236, 263, 403, 433, 481, 508, 596, 630, 769, 808, 863, 884], "summary": {"covered_lines": 22, "num_statements": 22, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 3, 5, 6, 8, 9, 10, 13, 68, 73, 74, 75, 78, 236, 242, 244, 245, 246, 247, 251, 252, 253, 255, 258, 263, 403, 410, 414, 415, 416, 417, 421, 422, 423, 425, 428, 433, 481, 489, 490, 493, 494, 495, 496, 500, 501, 502, 504, 505, 508, 596, 604, 611, 612, 613, 614, 618, 619, 620, 622, 625, 630, 769, 780, 781, 787, 788, 789, 790, 791, 792, 796, 797, 798, 799, 800, 802, 803, 804, 805, 808, 863, 870, 872, 875, 878, 880, 881, 884, 885, 886, 887, 888, 890, 892, 893, 894, 896, 897], "summary": {"covered_lines": 99, "num_statements": 99, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 14, "num_partial_branches": 0, "covered_branches": 14, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [[246, 247], [246, 255], [416, 417], [416, 425], [495, 496], [495, 504], [613, 614], [613, 622], [791, 792], [791, 802], [872, 875], [872, 880], [886, 887], [886, 890]], "missing_branches": []}}}, "tests\\detection\\test_polygon_zone_annotator.py": {"executed_lines": [1, 2, 4, 6, 7, 8, 9, 10, 16, 24, 54, 59, 60], "summary": {"covered_lines": 13, "num_statements": 13, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"test_polygon_zone_annotator": {"executed_lines": [59, 60], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 54, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 2, 4, 6, 7, 8, 9, 10, 16, 24, 54], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 2, 4, 6, 7, 8, 9, 10, 16, 24, 54, 59, 60], "summary": {"covered_lines": 13, "num_statements": 13, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\detection\\test_polygonzone.py": {"executed_lines": [1, 3, 4, 6, 7, 9, 24, 28, 31, 32, 43, 44, 45, 48, 49, 98, 105, 106, 107, 108, 110, 122, 125, 128, 133, 137, 140, 142, 144, 149, 153, 154, 156, 158, 159, 161, 165, 166], "summary": {"covered_lines": 38, "num_statements": 38, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"TestPolygonZoneInit.test_empty_anchors_raises": {"executed_lines": [44, 45], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 43, "executed_branches": [], "missing_branches": []}, "TestPolygonZoneTrigger.test_anchor_configurations": {"executed_lines": [105, 106, 107, 108], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 98, "executed_branches": [], "missing_branches": []}, "TestPolygonZoneTrigger.test_straddling_detection_assigned_to_one_zone": {"executed_lines": [122, 125, 128, 133, 137, 140], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 110, "executed_branches": [], "missing_branches": []}, "TestPolygonZoneTrigger.test_out_of_bounds_anchor_excluded": {"executed_lines": [144, 149, 153, 154], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 142, "executed_branches": [], "missing_branches": []}, "TestPolygonZoneTrigger.test_anchor_on_polygon_boundary_included": {"executed_lines": [158, 159, 161, 165, 166], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 156, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 6, 7, 9, 24, 28, 31, 32, 43, 48, 49, 98, 110, 142, 156], "summary": {"covered_lines": 17, "num_statements": 17, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"TestPolygonZoneInit": {"executed_lines": [44, 45], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 31, "executed_branches": [], "missing_branches": []}, "TestPolygonZoneTrigger": {"executed_lines": [105, 106, 107, 108, 122, 125, 128, 133, 137, 140, 144, 149, 153, 154, 158, 159, 161, 165, 166], "summary": {"covered_lines": 19, "num_statements": 19, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 48, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 6, 7, 9, 24, 28, 31, 32, 43, 48, 49, 98, 110, 142, 156], "summary": {"covered_lines": 17, "num_statements": 17, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\detection\\test_vlm.py": {"executed_lines": [1, 3, 4, 6, 7, 9, 10, 11, 22, 200, 207, 208, 211, 212, 213, 216, 410, 418, 419, 425, 426, 427, 428, 431, 565, 572, 573, 576, 577, 578, 579, 582, 679, 685, 686, 690, 691, 694, 921, 929, 930, 931, 932, 933, 935, 936, 937, 939, 940, 941, 943, 946, 1149, 1157, 1158, 1168, 1171, 1172, 1174, 1175, 1177, 1178, 1180, 1181, 1183, 1184, 1185, 1187, 1188, 1190, 1191, 1192, 1195, 1271, 1278, 1279, 1286, 1289, 1291, 1292, 1294, 1295, 1296, 1302, 1304, 1310, 1314, 1315, 1316, 1317, 1318, 1319, 1322, 1337, 1339, 1340, 1341, 1343, 1345], "summary": {"covered_lines": 99, "num_statements": 101, "percent_covered": 94.4, "percent_covered_display": "94", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 98.01980198019803, "percent_statements_covered_display": "98", "num_branches": 24, "num_partial_branches": 5, "covered_branches": 19, "missing_branches": 5, "percent_branches_covered": 79.16666666666667, "percent_branches_covered_display": "79"}, "missing_lines": [1169, 1287], "excluded_lines": [], "executed_branches": [[425, 426], [576, 577], [690, 691], [932, 933], [932, 935], [936, 937], [936, 939], [940, 941], [940, 943], [1168, 1171], [1180, 1181], [1180, 1183], [1187, 1188], [1187, 1190], [1286, 1289], [1291, 1292], [1291, 1294], [1340, 1341], [1340, 1343]], "missing_branches": [[425, -216], [576, -431], [690, -582], [1168, 1169], [1286, 1287]], "functions": {"test_from_paligemma": {"executed_lines": [207, 208, 211, 212, 213], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 200, "executed_branches": [], "missing_branches": []}, "test_from_qwen_2_5_vl": {"executed_lines": [418, 419, 425, 426, 427, 428], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 87.5, "percent_covered_display": "88", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [], "excluded_lines": [], "start_line": 410, "executed_branches": [[425, 426]], "missing_branches": [[425, -216]]}, "test_from_google_gemini": {"executed_lines": [572, 573, 576, 577, 578, 579], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 87.5, "percent_covered_display": "88", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [], "excluded_lines": [], "start_line": 565, "executed_branches": [[576, 577]], "missing_branches": [[576, -431]]}, "test_from_moondream": {"executed_lines": [685, 686, 690, 691], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 83.33333333333333, "percent_covered_display": "83", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [], "excluded_lines": [], "start_line": 679, "executed_branches": [[690, 691]], "missing_branches": [[690, -582]]}, "test_florence_2": {"executed_lines": [929, 930, 931, 932, 933, 935, 936, 937, 939, 940, 941, 943], "summary": {"covered_lines": 12, "num_statements": 12, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 6, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 921, "executed_branches": [[932, 933], [932, 935], [936, 937], [936, 939], [940, 941], [940, 943]], "missing_branches": []}, "test_from_google_gemini_2_5": {"executed_lines": [1157, 1158, 1168, 1171, 1172, 1174, 1175, 1177, 1178, 1180, 1181, 1183, 1184, 1185, 1187, 1188, 1190, 1191, 1192], "summary": {"covered_lines": 19, "num_statements": 20, "percent_covered": 92.3076923076923, "percent_covered_display": "92", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 95.0, "percent_statements_covered_display": "95", "num_branches": 6, "num_partial_branches": 1, "covered_branches": 5, "missing_branches": 1, "percent_branches_covered": 83.33333333333333, "percent_branches_covered_display": "83"}, "missing_lines": [1169], "excluded_lines": [], "start_line": 1149, "executed_branches": [[1168, 1171], [1180, 1181], [1180, 1183], [1187, 1188], [1187, 1190]], "missing_branches": [[1168, 1169]]}, "test_from_deepseek_vl_2": {"executed_lines": [1278, 1279, 1286, 1289, 1291, 1292, 1294, 1295, 1296], "summary": {"covered_lines": 9, "num_statements": 10, "percent_covered": 85.71428571428571, "percent_covered_display": "86", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 90.0, "percent_statements_covered_display": "90", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [1287], "excluded_lines": [], "start_line": 1271, "executed_branches": [[1286, 1289], [1291, 1292], [1291, 1294]], "missing_branches": [[1286, 1287]]}, "test_from_google_gemini_2_5_malformed_mask_keeps_confidence_aligned": {"executed_lines": [1304, 1310, 1314, 1315, 1316, 1317, 1318, 1319], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1302, "executed_branches": [], "missing_branches": []}, "test_vlm_parsers_degrade_on_malformed_json": {"executed_lines": [1339, 1340, 1341, 1343, 1345], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1337, "executed_branches": [[1340, 1341], [1340, 1343]], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 6, 7, 9, 10, 11, 22, 200, 216, 410, 431, 565, 582, 679, 694, 921, 946, 1149, 1195, 1271, 1302, 1322, 1337], "summary": {"covered_lines": 25, "num_statements": 25, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 3, 4, 6, 7, 9, 10, 11, 22, 200, 207, 208, 211, 212, 213, 216, 410, 418, 419, 425, 426, 427, 428, 431, 565, 572, 573, 576, 577, 578, 579, 582, 679, 685, 686, 690, 691, 694, 921, 929, 930, 931, 932, 933, 935, 936, 937, 939, 940, 941, 943, 946, 1149, 1157, 1158, 1168, 1171, 1172, 1174, 1175, 1177, 1178, 1180, 1181, 1183, 1184, 1185, 1187, 1188, 1190, 1191, 1192, 1195, 1271, 1278, 1279, 1286, 1289, 1291, 1292, 1294, 1295, 1296, 1302, 1304, 1310, 1314, 1315, 1316, 1317, 1318, 1319, 1322, 1337, 1339, 1340, 1341, 1343, 1345], "summary": {"covered_lines": 99, "num_statements": 101, "percent_covered": 94.4, "percent_covered_display": "94", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 98.01980198019803, "percent_statements_covered_display": "98", "num_branches": 24, "num_partial_branches": 5, "covered_branches": 19, "missing_branches": 5, "percent_branches_covered": 79.16666666666667, "percent_branches_covered_display": "79"}, "missing_lines": [1169, 1287], "excluded_lines": [], "start_line": 1, "executed_branches": [[425, 426], [576, 577], [690, 691], [932, 933], [932, 935], [936, 937], [936, 939], [940, 941], [940, 943], [1168, 1171], [1180, 1181], [1180, 1183], [1187, 1188], [1187, 1190], [1286, 1289], [1291, 1292], [1291, 1294], [1340, 1341], [1340, 1343]], "missing_branches": [[425, -216], [576, -431], [690, -582], [1168, 1169], [1286, 1287]]}}}, "tests\\detection\\tools\\test_inference_slicer.py": {"executed_lines": [1, 3, 4, 6, 7, 9, 10, 11, 12, 13, 16, 17, 26, 189, 195, 201, 206, 210, 212, 218, 219, 221, 222, 225, 229, 230, 236, 237, 239, 240, 241, 243, 249, 252, 256, 257, 263, 264, 266, 267, 268, 270, 276, 279, 283, 286, 292, 293, 297, 298, 301, 305, 306, 313, 314, 321, 322, 323, 325, 331, 334, 338, 340, 346, 347, 349, 350, 351, 353, 359, 362, 366, 367, 373, 374, 376, 377, 378, 379, 381, 387, 390, 393, 394, 395, 396, 398, 401, 402, 403, 404, 407, 408, 410, 421, 422, 429, 430, 432, 433, 434, 437, 440, 441, 442, 443, 446, 449, 453, 464, 465, 466, 472, 479, 480, 487, 488, 497, 499], "summary": {"covered_lines": 119, "num_statements": 123, "percent_covered": 96.0, "percent_covered_display": "96", "missing_lines": 4, "excluded_lines": 0, "percent_statements_covered": 96.7479674796748, "percent_statements_covered_display": "97", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [20, 21, 23, 405], "excluded_lines": [], "executed_branches": [[404, 407]], "missing_branches": [[404, 405]], "functions": {"mock_callback": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 2, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 2, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [20, 23], "excluded_lines": [], "start_line": 17, "executed_branches": [], "missing_branches": []}, "mock_callback.callback": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [21], "excluded_lines": [], "start_line": 20, "executed_branches": [], "missing_branches": []}, "test_generate_offset": {"executed_lines": [195, 201], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 189, "executed_branches": [], "missing_branches": []}, "test_run_callback_warns_when_detections_outside_slice_bounds": {"executed_lines": [210, 218, 219, 221, 222], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 206, "executed_branches": [], "missing_branches": []}, "test_run_callback_warns_when_detections_outside_slice_bounds.out_of_bounds_callback": {"executed_lines": [212], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 210, "executed_branches": [], "missing_branches": []}, "test_run_callback_warns_only_once_for_out_of_bounds_detections": {"executed_lines": [229, 236, 237, 239, 240, 241, 243, 249], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 225, "executed_branches": [], "missing_branches": []}, "test_run_callback_warns_only_once_for_out_of_bounds_detections.out_of_bounds_callback": {"executed_lines": [230], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 229, "executed_branches": [], "missing_branches": []}, "test_run_callback_no_warning_when_detections_inside_slice_bounds": {"executed_lines": [256, 263, 264, 266, 267, 268, 270, 276], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 252, "executed_branches": [], "missing_branches": []}, "test_run_callback_no_warning_when_detections_inside_slice_bounds.in_bounds_callback": {"executed_lines": [257], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 256, "executed_branches": [], "missing_branches": []}, "test_run_callback_warns_when_detections_have_negative_coordinates": {"executed_lines": [283, 292, 293, 297, 298], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 279, "executed_branches": [], "missing_branches": []}, "test_run_callback_warns_when_detections_have_negative_coordinates.negative_coords_callback": {"executed_lines": [286], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 283, "executed_branches": [], "missing_branches": []}, "test_run_callback_warns_only_once_with_multiple_threads": {"executed_lines": [305, 313, 314, 321, 322, 323, 325, 331], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 301, "executed_branches": [], "missing_branches": []}, "test_run_callback_warns_only_once_with_multiple_threads.out_of_bounds_callback": {"executed_lines": [306], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 305, "executed_branches": [], "missing_branches": []}, "test_run_callback_no_warning_for_detection_exactly_at_slice_boundary": {"executed_lines": [338, 346, 347, 349, 350, 351, 353, 359], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 334, "executed_branches": [], "missing_branches": []}, "test_run_callback_no_warning_for_detection_exactly_at_slice_boundary.at_boundary_callback": {"executed_lines": [340], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 338, "executed_branches": [], "missing_branches": []}, "test_run_callback_does_not_rewarn_on_second_call": {"executed_lines": [366, 373, 374, 376, 377, 378, 379, 381, 387], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 362, "executed_branches": [], "missing_branches": []}, "test_run_callback_does_not_rewarn_on_second_call.out_of_bounds_callback": {"executed_lines": [367], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 366, "executed_branches": [], "missing_branches": []}, "test_obb_callbacks_run_sequentially_even_with_multiple_workers": {"executed_lines": [393, 394, 395, 396, 398, 421, 422, 429, 430, 432, 433, 434], "summary": {"covered_lines": 12, "num_statements": 12, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 390, "executed_branches": [], "missing_branches": []}, "test_obb_callbacks_run_sequentially_even_with_multiple_workers.obb_callback": {"executed_lines": [401, 402, 403, 404, 407, 408, 410], "summary": {"covered_lines": 7, "num_statements": 8, "percent_covered": 80.0, "percent_covered_display": "80", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 87.5, "percent_statements_covered_display": "88", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [405], "excluded_lines": [], "start_line": 398, "executed_branches": [[404, 407]], "missing_branches": [[404, 405]]}, "_rotated_rect": {"executed_lines": [440, 441, 442, 443, 446], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 437, "executed_branches": [], "missing_branches": []}, "test_inference_slicer_keeps_crossed_obb_detections": {"executed_lines": [464, 465, 466, 472, 479, 487, 488, 497, 499], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 453, "executed_branches": [], "missing_branches": []}, "test_inference_slicer_keeps_crossed_obb_detections.callback": {"executed_lines": [480], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 479, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 6, 7, 9, 10, 11, 12, 13, 16, 17, 26, 189, 206, 225, 252, 279, 301, 334, 362, 390, 437, 449, 453], "summary": {"covered_lines": 25, "num_statements": 25, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 3, 4, 6, 7, 9, 10, 11, 12, 13, 16, 17, 26, 189, 195, 201, 206, 210, 212, 218, 219, 221, 222, 225, 229, 230, 236, 237, 239, 240, 241, 243, 249, 252, 256, 257, 263, 264, 266, 267, 268, 270, 276, 279, 283, 286, 292, 293, 297, 298, 301, 305, 306, 313, 314, 321, 322, 323, 325, 331, 334, 338, 340, 346, 347, 349, 350, 351, 353, 359, 362, 366, 367, 373, 374, 376, 377, 378, 379, 381, 387, 390, 393, 394, 395, 396, 398, 401, 402, 403, 404, 407, 408, 410, 421, 422, 429, 430, 432, 433, 434, 437, 440, 441, 442, 443, 446, 449, 453, 464, 465, 466, 472, 479, 480, 487, 488, 497, 499], "summary": {"covered_lines": 119, "num_statements": 123, "percent_covered": 96.0, "percent_covered_display": "96", "missing_lines": 4, "excluded_lines": 0, "percent_statements_covered": 96.7479674796748, "percent_statements_covered_display": "97", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [20, 21, 23, 405], "excluded_lines": [], "start_line": 1, "executed_branches": [[404, 407]], "missing_branches": [[404, 405]]}}}, "tests\\detection\\tools\\test_smoother.py": {"executed_lines": [3, 5, 6, 7, 9, 10, 11, 14, 15, 38, 45, 46, 53, 61, 62, 63, 65, 66, 68, 70, 71, 78, 85, 86, 88, 90, 91, 96, 97, 99, 101, 103, 104, 111, 118, 126, 127, 128], "summary": {"covered_lines": 38, "num_statements": 38, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [[62, 63], [62, 65]], "missing_branches": [], "functions": {"TestDetectionsSmoother.test_smoother_confidence_scenarios": {"executed_lines": [45, 46, 53, 61, 62, 63, 65, 66], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 38, "executed_branches": [[62, 63], [62, 65]], "missing_branches": []}, "TestDetectionsSmoother.test_smoother_multi_track_mixed_confidence_does_not_crash": {"executed_lines": [70, 71, 78, 85, 86], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 68, "executed_branches": [], "missing_branches": []}, "TestDetectionsSmoother.test_smoother_tracker_id_none_warns_and_returns_unchanged": {"executed_lines": [90, 91, 96, 97, 99], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 88, "executed_branches": [], "missing_branches": []}, "TestDetectionsSmoother.test_smoother_window_full_averages_all_frames": {"executed_lines": [103, 104, 111, 118, 126, 127, 128], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 101, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [3, 5, 6, 7, 9, 10, 11, 14, 15, 38, 68, 88, 101], "summary": {"covered_lines": 13, "num_statements": 13, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"TestDetectionsSmoother": {"executed_lines": [45, 46, 53, 61, 62, 63, 65, 66, 70, 71, 78, 85, 86, 90, 91, 96, 97, 99, 103, 104, 111, 118, 126, 127, 128], "summary": {"covered_lines": 25, "num_statements": 25, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 14, "executed_branches": [[62, 63], [62, 65]], "missing_branches": []}, "": {"executed_lines": [3, 5, 6, 7, 9, 10, 11, 14, 15, 38, 68, 88, 101], "summary": {"covered_lines": 13, "num_statements": 13, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\detection\\utils\\__init__.py": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\detection\\utils\\test_boxes.py": {"executed_lines": [1, 3, 5, 6, 8, 17, 52, 57, 58, 61, 96, 102, 103, 104, 107, 142, 148, 149, 150, 153, 222, 229, 230, 235, 238, 269, 271, 272], "summary": {"covered_lines": 28, "num_statements": 28, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"test_clip_boxes": {"executed_lines": [57, 58], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 52, "executed_branches": [], "missing_branches": []}, "test_move_boxes": {"executed_lines": [102, 103, 104], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 96, "executed_branches": [], "missing_branches": []}, "test_scale_boxes": {"executed_lines": [148, 149, 150], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 142, "executed_branches": [], "missing_branches": []}, "test_denormalize_boxes": {"executed_lines": [229, 230, 235], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 222, "executed_branches": [], "missing_branches": []}, "test_xyxyxyxy_to_xyxy": {"executed_lines": [271, 272], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 269, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 5, 6, 8, 17, 52, 61, 96, 107, 142, 153, 222, 238, 269], "summary": {"covered_lines": 15, "num_statements": 15, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 3, 5, 6, 8, 17, 52, 57, 58, 61, 96, 102, 103, 104, 107, 142, 148, 149, 150, 153, 222, 229, 230, 235, 238, 269, 271, 272], "summary": {"covered_lines": 28, "num_statements": 28, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\detection\\utils\\test_converters.py": {"executed_lines": [1, 3, 5, 6, 7, 9, 28, 46, 47, 48, 51, 69, 70, 71, 74, 120, 121, 122, 125, 143, 144, 145, 148, 312, 313, 314, 315, 316, 319, 321, 322, 323, 324, 325, 331, 334, 335, 375, 379, 381, 382, 383, 385, 386, 388, 389, 390, 392, 393, 395, 396, 399, 469, 475, 476, 477, 480, 582, 588, 589, 590, 593, 594, 602, 603, 604, 612, 625, 627, 635, 645, 647, 650, 657, 659, 660, 663, 673, 675, 678, 691, 693, 701, 713, 715, 718, 729, 731, 734, 743, 745, 753, 789, 793, 796, 850, 857, 858, 861, 877, 879, 880, 881, 882], "summary": {"covered_lines": 104, "num_statements": 104, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [[322, 323], [322, 331], [324, 322], [324, 325]], "missing_branches": [], "functions": {"test_xywh_to_xyxy": {"executed_lines": [47, 48], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 46, "executed_branches": [], "missing_branches": []}, "test_xyxy_to_xywh": {"executed_lines": [70, 71], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 69, "executed_branches": [], "missing_branches": []}, "test_xyxy_to_xcycarh": {"executed_lines": [121, 122], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 120, "executed_branches": [], "missing_branches": []}, "test_xcycwh_to_xyxy": {"executed_lines": [144, 145], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 143, "executed_branches": [], "missing_branches": []}, "test_xyxy_to_mask": {"executed_lines": [313, 314, 315, 316], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 312, "executed_branches": [], "missing_branches": []}, "_mask_to_xyxy_reference": {"executed_lines": [321, 322, 323, 324, 325, 331], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 319, "executed_branches": [[322, 323], [322, 331], [324, 322], [324, 325]], "missing_branches": []}, "TestMaskToXyxy.test_mask_to_xyxy_known_values": {"executed_lines": [379, 381, 382, 383], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 375, "executed_branches": [], "missing_branches": []}, "TestMaskToXyxy.test_mask_to_xyxy_matches_reference": {"executed_lines": [388, 389, 390, 392, 393, 395, 396], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 386, "executed_branches": [], "missing_branches": []}, "test_mask_to_rle": {"executed_lines": [475, 476, 477], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 469, "executed_branches": [], "missing_branches": []}, "test_rle_to_mask": {"executed_lines": [588, 589, 590], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 582, "executed_branches": [], "missing_branches": []}, "test_mask_rle_compressed_round_trip": {"executed_lines": [594, 602, 603, 604], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 593, "executed_branches": [], "missing_branches": []}, "test_is_compressed_rle": {"executed_lines": [627], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 625, "executed_branches": [], "missing_branches": []}, "test_base48_decode": {"executed_lines": [647], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 645, "executed_branches": [], "missing_branches": []}, "test_base48_decode_malformed": {"executed_lines": [659, 660], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 657, "executed_branches": [], "missing_branches": []}, "test_base48_encode": {"executed_lines": [675], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 673, "executed_branches": [], "missing_branches": []}, "test_base48_round_trip": {"executed_lines": [693], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 691, "executed_branches": [], "missing_branches": []}, "test_delta_decode": {"executed_lines": [715], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 713, "executed_branches": [], "missing_branches": []}, "test_delta_encode": {"executed_lines": [731], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 729, "executed_branches": [], "missing_branches": []}, "test_delta_round_trip": {"executed_lines": [745], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 743, "executed_branches": [], "missing_branches": []}, "test_mask_to_rle_counts": {"executed_lines": [793], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 789, "executed_branches": [], "missing_branches": []}, "test_rle_counts_to_mask": {"executed_lines": [857, 858], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 850, "executed_branches": [], "missing_branches": []}, "test_mask_rle_counts_round_trip": {"executed_lines": [879, 880, 881, 882], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 877, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 5, 6, 7, 9, 28, 46, 51, 69, 74, 120, 125, 143, 148, 312, 319, 334, 335, 375, 385, 386, 399, 469, 480, 582, 593, 612, 625, 635, 645, 650, 657, 663, 673, 678, 691, 701, 713, 718, 729, 734, 743, 753, 789, 796, 850, 861, 877], "summary": {"covered_lines": 49, "num_statements": 49, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"TestMaskToXyxy": {"executed_lines": [379, 381, 382, 383, 388, 389, 390, 392, 393, 395, 396], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 334, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 5, 6, 7, 9, 28, 46, 47, 48, 51, 69, 70, 71, 74, 120, 121, 122, 125, 143, 144, 145, 148, 312, 313, 314, 315, 316, 319, 321, 322, 323, 324, 325, 331, 334, 335, 375, 385, 386, 399, 469, 475, 476, 477, 480, 582, 588, 589, 590, 593, 594, 602, 603, 604, 612, 625, 627, 635, 645, 647, 650, 657, 659, 660, 663, 673, 675, 678, 691, 693, 701, 713, 715, 718, 729, 731, 734, 743, 745, 753, 789, 793, 796, 850, 857, 858, 861, 877, 879, 880, 881, 882], "summary": {"covered_lines": 93, "num_statements": 93, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [[322, 323], [322, 331], [324, 322], [324, 325]], "missing_branches": []}}}, "tests\\detection\\utils\\test_internal.py": {"executed_lines": [1, 3, 4, 6, 7, 9, 10, 17, 18, 20, 21, 23, 24, 25, 28, 454, 461, 462, 463, 464, 465, 466, 469, 472, 473, 474, 477, 488, 675, 680, 681, 682, 685, 686, 687, 691, 696, 850, 856, 857, 858, 859, 860, 864, 869, 1032, 1033, 1034, 1035, 1037, 1038, 1039, 1040, 1042], "summary": {"covered_lines": 54, "num_statements": 57, "percent_covered": 92.20779220779221, "percent_covered_display": "92", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 94.73684210526316, "percent_statements_covered_display": "95", "num_branches": 20, "num_partial_branches": 3, "covered_branches": 17, "missing_branches": 3, "percent_branches_covered": 85.0, "percent_branches_covered_display": "85"}, "missing_lines": [483, 683, 1036], "excluded_lines": [], "executed_branches": [[472, -28], [472, 473], [473, 474], [682, 685], [685, -488], [685, 686], [686, 687], [686, 691], [858, -696], [858, 859], [859, 860], [859, 864], [1035, 1037], [1037, -869], [1037, 1038], [1039, 1040], [1039, 1042]], "missing_branches": [[473, 483], [682, 683], [1035, 1036]], "functions": {"test_process_roboflow_result": {"executed_lines": [461, 462, 463, 464, 465, 466, 469, 472, 473, 474, 477], "summary": {"covered_lines": 11, "num_statements": 12, "percent_covered": 87.5, "percent_covered_display": "88", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 91.66666666666667, "percent_statements_covered_display": "92", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [483], "excluded_lines": [], "start_line": 454, "executed_branches": [[472, -28], [472, 473], [473, 474]], "missing_branches": [[473, 483]]}, "test_merge_data": {"executed_lines": [680, 681, 682, 685, 686, 687, 691], "summary": {"covered_lines": 7, "num_statements": 8, "percent_covered": 85.71428571428571, "percent_covered_display": "86", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 87.5, "percent_statements_covered_display": "88", "num_branches": 6, "num_partial_branches": 1, "covered_branches": 5, "missing_branches": 1, "percent_branches_covered": 83.33333333333333, "percent_branches_covered_display": "83"}, "missing_lines": [683], "excluded_lines": [], "start_line": 675, "executed_branches": [[682, 685], [685, -488], [685, 686], [686, 687], [686, 691]], "missing_branches": [[682, 683]]}, "test_get_data_item": {"executed_lines": [856, 857, 858, 859, 860, 864], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 850, "executed_branches": [[858, -696], [858, 859], [859, 860], [859, 864]], "missing_branches": []}, "test_merge_metadata": {"executed_lines": [1033, 1034, 1035, 1037, 1038, 1039, 1040, 1042], "summary": {"covered_lines": 8, "num_statements": 9, "percent_covered": 86.66666666666667, "percent_covered_display": "87", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 88.88888888888889, "percent_statements_covered_display": "89", "num_branches": 6, "num_partial_branches": 1, "covered_branches": 5, "missing_branches": 1, "percent_branches_covered": 83.33333333333333, "percent_branches_covered_display": "83"}, "missing_lines": [1036], "excluded_lines": [], "start_line": 1032, "executed_branches": [[1035, 1037], [1037, -869], [1037, 1038], [1039, 1040], [1039, 1042]], "missing_branches": [[1035, 1036]]}, "": {"executed_lines": [1, 3, 4, 6, 7, 9, 10, 17, 18, 20, 21, 23, 24, 25, 28, 454, 488, 675, 696, 850, 869, 1032], "summary": {"covered_lines": 22, "num_statements": 22, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 3, 4, 6, 7, 9, 10, 17, 18, 20, 21, 23, 24, 25, 28, 454, 461, 462, 463, 464, 465, 466, 469, 472, 473, 474, 477, 488, 675, 680, 681, 682, 685, 686, 687, 691, 696, 850, 856, 857, 858, 859, 860, 864, 869, 1032, 1033, 1034, 1035, 1037, 1038, 1039, 1040, 1042], "summary": {"covered_lines": 54, "num_statements": 57, "percent_covered": 92.20779220779221, "percent_covered_display": "92", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 94.73684210526316, "percent_statements_covered_display": "95", "num_branches": 20, "num_partial_branches": 3, "covered_branches": 17, "missing_branches": 3, "percent_branches_covered": 85.0, "percent_branches_covered_display": "85"}, "missing_lines": [483, 683, 1036], "excluded_lines": [], "start_line": 1, "executed_branches": [[472, -28], [472, 473], [473, 474], [682, 685], [685, -488], [685, 686], [686, 687], [686, 691], [858, -696], [858, 859], [859, 860], [859, 864], [1035, 1037], [1037, -869], [1037, 1038], [1039, 1040], [1039, 1042]], "missing_branches": [[473, 483], [682, 683], [1035, 1036]]}}}, "tests\\detection\\utils\\test_iou_and_nms.py": {"executed_lines": [1, 3, 5, 6, 8, 21, 24, 28, 29, 30, 31, 34, 37, 39, 50, 163, 169, 170, 174, 177, 269, 275, 276, 279, 282, 474, 481, 482, 485, 488, 654, 661, 662, 665, 666, 667, 670, 822, 829, 830, 835, 838, 1093, 1100, 1101, 1107, 1108, 1109, 1117, 1130, 1134, 1139, 1140, 1142, 1147, 1153, 1154, 1155, 1163, 1170, 1180, 1181, 1183, 1184, 1186, 1187, 1188, 1189, 1192, 1195, 1203, 1211, 1212, 1213, 1215, 1220, 1221, 1222, 1223, 1225, 1228, 1229, 1231, 1232, 1235, 1236, 1238, 1240, 1241, 1243, 1246, 1248, 1250, 1251, 1253, 1255, 1257, 1272, 1276, 1278, 1279, 1280, 1282, 1288, 1289, 1291, 1293, 1295, 1297, 1299, 1300, 1302, 1325, 1337, 1338, 1340, 1348, 1350, 1351, 1353, 1355, 1356, 1357, 1359, 1367, 1371, 1372, 1374, 1375, 1378, 1381, 1385, 1386, 1387, 1388, 1396, 1397, 1399, 1402, 1404, 1411, 1415, 1416, 1417, 1418, 1426, 1428, 1431, 1433, 1436, 1437, 1438, 1439, 1443, 1445, 1446, 1448, 1452, 1453, 1455, 1456, 1458, 1459, 1460, 1462, 1468, 1470, 1477, 1482, 1483, 1484, 1485, 1493, 1494, 1496, 1502, 1504, 1511, 1515, 1516, 1517, 1518, 1526, 1533, 1536, 1539, 1541, 1542, 1544, 1548, 1550, 1552, 1553, 1554, 1556, 1560, 1562, 1565, 1566, 1567, 1568, 1569, 1578, 1582, 1583, 1586, 1592, 1593, 1594, 1595, 1596, 1598, 1599, 1607, 1610, 1617, 1625, 1634, 1635, 1636, 1638, 1640, 1641, 1643, 1645, 1646, 1647, 1649, 1650, 1652, 1655, 1658, 1660, 1662, 1663, 1664, 1665, 1667, 1669, 1670, 1671, 1672, 1673, 1674, 1675, 1677, 1679, 1680, 1681, 1682, 1684, 1685, 1686, 1689, 1690, 1693, 1694, 1698, 1702, 1703, 1704, 1705, 1706, 1707, 1711, 1715, 1716, 1717, 1719, 1721, 1722, 1724, 1725, 1726, 1727, 1729, 1730, 1731, 1733, 1735, 1736, 1738, 1739, 1740, 1741], "summary": {"covered_lines": 285, "num_statements": 285, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [[1279, -1257], [1279, 1280], [1595, 1596], [1595, 1598]], "missing_branches": [], "functions": {"_rotated_rect": {"executed_lines": [28, 29, 30, 31, 34], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 24, "executed_branches": [], "missing_branches": []}, "_aabb_of": {"executed_lines": [39], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 37, "executed_branches": [], "missing_branches": []}, "test_group_overlapping_boxes": {"executed_lines": [169, 170, 174], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 163, "executed_branches": [], "missing_branches": []}, "test_box_non_max_suppression": {"executed_lines": [275, 276, 279], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 269, "executed_branches": [], "missing_branches": []}, "test_mask_non_max_suppression": {"executed_lines": [481, 482, 485], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 474, "executed_branches": [], "missing_branches": []}, "test_mask_non_max_merge": {"executed_lines": [661, 662, 665, 666, 667], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 654, "executed_branches": [], "missing_branches": []}, "test_box_iou": {"executed_lines": [829, 830, 835], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 822, "executed_branches": [], "missing_branches": []}, "test_box_iou_batch": {"executed_lines": [1100, 1101, 1107, 1108, 1109], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1093, "executed_branches": [], "missing_branches": []}, "test_box_iou_batch_symmetric_large": {"executed_lines": [1139, 1140, 1142, 1147, 1153, 1154, 1155], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1134, "executed_branches": [], "missing_branches": []}, "test_oriented_box_iou_batch_is_invariant_to_non_square_scaling": {"executed_lines": [1180, 1181, 1183, 1184, 1186, 1187, 1188, 1189], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1170, "executed_branches": [], "missing_branches": []}, "TestOrientedBoxIouBatch.test_is_invariant_to_canvas_transforms": {"executed_lines": [1211, 1212, 1213, 1215, 1220, 1221, 1222, 1223], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1203, "executed_branches": [], "missing_branches": []}, "TestOrientedBoxIouBatch.test_supports_overlap_metric": {"executed_lines": [1228, 1229, 1231, 1232, 1235, 1236], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1225, "executed_branches": [], "missing_branches": []}, "TestOrientedBoxIouBatch.test_half_overlap_matches_analytic_value": {"executed_lines": [1240, 1241, 1243, 1246], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1238, "executed_branches": [], "missing_branches": []}, "TestOrientedBoxIouBatch.test_disjoint_boxes_score_zero": {"executed_lines": [1250, 1251, 1253, 1255], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1248, "executed_branches": [], "missing_branches": []}, "TestOrientedBoxIouBatch.test_self_comparison_is_symmetric_with_unit_diagonal": {"executed_lines": [1276, 1278, 1279, 1280], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1272, "executed_branches": [[1279, -1257], [1279, 1280]], "missing_branches": []}, "TestOrientedBoxIouBatch.test_envelope_overlap_without_polygon_overlap_scores_zero": {"executed_lines": [1288, 1289, 1291, 1293], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1282, "executed_branches": [], "missing_branches": []}, "TestOrientedBoxIouBatch.test_rejects_unsupported_overlap_metric": {"executed_lines": [1297, 1299, 1300], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1295, "executed_branches": [], "missing_branches": []}, "TestOrientedBoxIouBatch.test_degenerate_boxes_score_zero": {"executed_lines": [1337, 1338], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1325, "executed_branches": [], "missing_branches": []}, "TestOrientedBoxIouBatch.test_empty_input_returns_correct_shape": {"executed_lines": [1350, 1351, 1353, 1355, 1356, 1357], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1348, "executed_branches": [], "missing_branches": []}, "TestOrientedBoxIouBatch.test_invalid_shape_raises_value_error": {"executed_lines": [1371, 1372, 1374, 1375], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1367, "executed_branches": [], "missing_branches": []}, "TestOrientedBoxNonMaxSuppression.test_keeps_x_pattern": {"executed_lines": [1385, 1386, 1387, 1388, 1396, 1397, 1399, 1402], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1381, "executed_branches": [], "missing_branches": []}, "TestOrientedBoxNonMaxSuppression.test_suppression_is_class_aware": {"executed_lines": [1415, 1416, 1417, 1418, 1426, 1428, 1431], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1411, "executed_branches": [], "missing_branches": []}, "TestOrientedBoxNonMaxSuppression.test_length_mismatch_raises": {"executed_lines": [1436, 1437, 1438, 1439], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1433, "executed_branches": [], "missing_branches": []}, "TestOrientedBoxNonMaxSuppression.test_empty_predictions": {"executed_lines": [1445, 1446, 1448, 1452, 1453], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1443, "executed_branches": [], "missing_branches": []}, "TestOrientedBoxNonMaxSuppression.test_keeps_single_prediction": {"executed_lines": [1458, 1459, 1460, 1462, 1468], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1456, "executed_branches": [], "missing_branches": []}, "TestOrientedBoxNonMaxSuppression.test_threshold_extremes": {"executed_lines": [1482, 1483, 1484, 1485, 1493, 1494, 1496, 1502], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1477, "executed_branches": [], "missing_branches": []}, "TestOrientedBoxNonMaxSuppression.test_overlap_metric_determines_suppression": {"executed_lines": [1515, 1516, 1517, 1518, 1526, 1533], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1511, "executed_branches": [], "missing_branches": []}, "TestOrientedBoxNonMaxMerge.test_empty_predictions_returns_empty_groups": {"executed_lines": [1541, 1542, 1544, 1548], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1539, "executed_branches": [], "missing_branches": []}, "TestOrientedBoxNonMaxMerge.test_single_prediction_returns_singleton_group": {"executed_lines": [1552, 1553, 1554, 1556, 1560], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1550, "executed_branches": [], "missing_branches": []}, "TestOrientedBoxNonMaxMerge.test_groups_overlapping_oriented_boxes": {"executed_lines": [1565, 1566, 1567, 1568, 1569, 1578, 1582, 1583], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1562, "executed_branches": [], "missing_branches": []}, "_naive_mask_iou": {"executed_lines": [1592, 1593, 1594, 1595, 1596, 1598, 1599], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1586, "executed_branches": [[1595, 1596], [1595, 1598]], "missing_branches": []}, "TestMaskIouBatch.test_matches_naive_reference_on_random_masks": {"executed_lines": [1634, 1635, 1636, 1638, 1640, 1641], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1625, "executed_branches": [], "missing_branches": []}, "TestMaskIouBatch.test_chunking_matches_single_pass": {"executed_lines": [1645, 1646, 1647, 1649, 1650, 1652, 1655, 1658], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1643, "executed_branches": [], "missing_branches": []}, "TestMaskIouBatch.test_mismatched_spatial_shape_raises": {"executed_lines": [1662, 1663, 1664, 1665], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1660, "executed_branches": [], "missing_branches": []}, "TestMaskIouBatch.test_invalid_ndim_raises": {"executed_lines": [1669, 1670, 1671, 1672, 1673, 1674, 1675], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1667, "executed_branches": [], "missing_branches": []}, "TestMaskIouBatch.test_identical_disjoint_and_empty": {"executed_lines": [1679, 1680, 1681, 1682, 1684, 1685, 1686, 1689, 1690, 1693, 1694], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1677, "executed_branches": [], "missing_branches": []}, "TestMaskIouBatch.test_matmul_emits_no_runtime_warnings": {"executed_lines": [1702, 1703, 1704, 1705, 1706, 1707], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1698, "executed_branches": [], "missing_branches": []}, "TestMaskIouBatch.test_float64_promotion_for_large_float32_masks": {"executed_lines": [1715, 1716, 1717], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1711, "executed_branches": [], "missing_branches": []}, "TestMaskIouBatch.test_compact_mask_mixed_input_gives_same_result": {"executed_lines": [1721, 1722, 1724, 1725, 1726, 1727, 1729, 1730, 1731], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1719, "executed_branches": [], "missing_branches": []}, "TestMaskIouBatch.test_detection_exceeds_limit_warns_and_completes": {"executed_lines": [1735, 1736, 1738, 1739, 1740, 1741], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1733, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 5, 6, 8, 21, 24, 37, 50, 163, 177, 269, 282, 474, 488, 654, 670, 822, 838, 1093, 1117, 1130, 1134, 1163, 1170, 1192, 1195, 1203, 1225, 1238, 1248, 1257, 1272, 1282, 1295, 1302, 1325, 1340, 1348, 1359, 1367, 1378, 1381, 1404, 1411, 1433, 1443, 1455, 1456, 1470, 1477, 1504, 1511, 1536, 1539, 1550, 1562, 1586, 1607, 1610, 1617, 1625, 1643, 1660, 1667, 1677, 1698, 1711, 1719, 1733], "summary": {"covered_lines": 70, "num_statements": 70, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"TestOrientedBoxIouBatch": {"executed_lines": [1211, 1212, 1213, 1215, 1220, 1221, 1222, 1223, 1228, 1229, 1231, 1232, 1235, 1236, 1240, 1241, 1243, 1246, 1250, 1251, 1253, 1255, 1276, 1278, 1279, 1280, 1288, 1289, 1291, 1293, 1297, 1299, 1300, 1337, 1338, 1350, 1351, 1353, 1355, 1356, 1357, 1371, 1372, 1374, 1375], "summary": {"covered_lines": 45, "num_statements": 45, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1192, "executed_branches": [[1279, -1257], [1279, 1280]], "missing_branches": []}, "TestOrientedBoxNonMaxSuppression": {"executed_lines": [1385, 1386, 1387, 1388, 1396, 1397, 1399, 1402, 1415, 1416, 1417, 1418, 1426, 1428, 1431, 1436, 1437, 1438, 1439, 1445, 1446, 1448, 1452, 1453, 1458, 1459, 1460, 1462, 1468, 1482, 1483, 1484, 1485, 1493, 1494, 1496, 1502, 1515, 1516, 1517, 1518, 1526, 1533], "summary": {"covered_lines": 43, "num_statements": 43, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1378, "executed_branches": [], "missing_branches": []}, "TestOrientedBoxNonMaxMerge": {"executed_lines": [1541, 1542, 1544, 1548, 1552, 1553, 1554, 1556, 1560, 1565, 1566, 1567, 1568, 1569, 1578, 1582, 1583], "summary": {"covered_lines": 17, "num_statements": 17, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1536, "executed_branches": [], "missing_branches": []}, "TestMaskIouBatch": {"executed_lines": [1634, 1635, 1636, 1638, 1640, 1641, 1645, 1646, 1647, 1649, 1650, 1652, 1655, 1658, 1662, 1663, 1664, 1665, 1669, 1670, 1671, 1672, 1673, 1674, 1675, 1679, 1680, 1681, 1682, 1684, 1685, 1686, 1689, 1690, 1693, 1694, 1702, 1703, 1704, 1705, 1706, 1707, 1715, 1716, 1717, 1721, 1722, 1724, 1725, 1726, 1727, 1729, 1730, 1731, 1735, 1736, 1738, 1739, 1740, 1741], "summary": {"covered_lines": 60, "num_statements": 60, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1607, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 5, 6, 8, 21, 24, 28, 29, 30, 31, 34, 37, 39, 50, 163, 169, 170, 174, 177, 269, 275, 276, 279, 282, 474, 481, 482, 485, 488, 654, 661, 662, 665, 666, 667, 670, 822, 829, 830, 835, 838, 1093, 1100, 1101, 1107, 1108, 1109, 1117, 1130, 1134, 1139, 1140, 1142, 1147, 1153, 1154, 1155, 1163, 1170, 1180, 1181, 1183, 1184, 1186, 1187, 1188, 1189, 1192, 1195, 1203, 1225, 1238, 1248, 1257, 1272, 1282, 1295, 1302, 1325, 1340, 1348, 1359, 1367, 1378, 1381, 1404, 1411, 1433, 1443, 1455, 1456, 1470, 1477, 1504, 1511, 1536, 1539, 1550, 1562, 1586, 1592, 1593, 1594, 1595, 1596, 1598, 1599, 1607, 1610, 1617, 1625, 1643, 1660, 1667, 1677, 1698, 1711, 1719, 1733], "summary": {"covered_lines": 120, "num_statements": 120, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [[1595, 1596], [1595, 1598]], "missing_branches": []}}}, "tests\\detection\\utils\\test_masks.py": {"executed_lines": [1, 3, 5, 6, 7, 9, 18, 268, 275, 276, 277, 280, 361, 366, 367, 368, 371, 418, 421, 422, 423, 426, 495, 501, 502, 503, 506, 719, 728, 729, 736], "summary": {"covered_lines": 31, "num_statements": 31, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"test_move_masks": {"executed_lines": [275, 276, 277], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 268, "executed_branches": [], "missing_branches": []}, "test_calculate_masks_centroids": {"executed_lines": [366, 367, 368], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 361, "executed_branches": [], "missing_branches": []}, "test_contains_holes": {"executed_lines": [421, 422, 423], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 418, "executed_branches": [], "missing_branches": []}, "test_contains_multiple_segments": {"executed_lines": [501, 502, 503], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 495, "executed_branches": [], "missing_branches": []}, "test_filter_segments_by_distance_sweep": {"executed_lines": [728, 729, 736], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 719, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 5, 6, 7, 9, 18, 268, 280, 361, 371, 418, 426, 495, 506, 719], "summary": {"covered_lines": 16, "num_statements": 16, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 3, 5, 6, 7, 9, 18, 268, 275, 276, 277, 280, 361, 366, 367, 368, 371, 418, 421, 422, 423, 426, 495, 501, 502, 503, 506, 719, 728, 729, 736], "summary": {"covered_lines": 31, "num_statements": 31, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\detection\\utils\\test_polygons.py": {"executed_lines": [1, 3, 5, 6, 8, 14, 92, 99, 100, 103, 104, 105, 108, 109, 110, 115, 116, 117, 118, 126, 127, 129, 131, 132, 133, 134, 135, 137, 139, 141, 143, 145, 154, 156, 157, 158, 160, 167, 169, 170, 171], "summary": {"covered_lines": 41, "num_statements": 41, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [[104, -14], [104, 105], [134, -116], [134, 135]], "missing_branches": [], "functions": {"test_filter_polygons_by_area": {"executed_lines": [99, 100, 103, 104, 105], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 92, "executed_branches": [[104, -14], [104, 105]], "missing_branches": []}, "_regular_polygon": {"executed_lines": [109, 110], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 108, "executed_branches": [], "missing_branches": []}, "TestApproximatePolygon.test_within_budget_and_valid": {"executed_lines": [126, 127, 129, 131, 132, 133, 134, 135], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 118, "executed_branches": [[134, -116], [134, 135]], "missing_branches": []}, "TestApproximatePolygon.test_zero_percentage_keeps_polygon": {"executed_lines": [139, 141, 143], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 137, "executed_branches": [], "missing_branches": []}, "TestApproximatePolygon.test_raises_on_out_of_range_percentage": {"executed_lines": [156, 157, 158], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 154, "executed_branches": [], "missing_branches": []}, "TestApproximatePolygon.test_raises_on_non_positive_epsilon_step": {"executed_lines": [169, 170, 171], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 167, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 5, 6, 8, 14, 92, 108, 115, 116, 117, 118, 137, 145, 154, 160, 167], "summary": {"covered_lines": 17, "num_statements": 17, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"TestApproximatePolygon": {"executed_lines": [126, 127, 129, 131, 132, 133, 134, 135, 139, 141, 143, 156, 157, 158, 169, 170, 171], "summary": {"covered_lines": 17, "num_statements": 17, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 115, "executed_branches": [[134, -116], [134, 135]], "missing_branches": []}, "": {"executed_lines": [1, 3, 5, 6, 8, 14, 92, 99, 100, 103, 104, 105, 108, 109, 110, 115, 116, 117, 118, 137, 145, 154, 160, 167], "summary": {"covered_lines": 24, "num_statements": 24, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [[104, -14], [104, 105]], "missing_branches": []}}}, "tests\\detection\\utils\\test_vlms.py": {"executed_lines": [1, 3, 6, 63, 64, 70, 106, 109], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"test_edit_distance": {"executed_lines": [64], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 63, "executed_branches": [], "missing_branches": []}, "test_fuzzy_match_index": {"executed_lines": [109], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 106, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 6, 63, 70, 106], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 3, 6, 63, 64, 70, 106, 109], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\draw\\__init__.py": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\draw\\test_color.py": {"executed_lines": [1, 3, 5, 7, 10, 58, 70, 71, 72, 75, 91, 101, 102, 103, 106, 139, 144, 145, 146, 149, 182, 187, 188, 189, 192, 214, 219, 220, 221, 224, 246, 251, 252, 253, 256, 264, 269, 270, 271, 274, 282, 287, 288, 289, 292, 302, 303, 306, 315, 316, 317], "summary": {"covered_lines": 51, "num_statements": 51, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"test_color_from_hex": {"executed_lines": [70, 71, 72], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 58, "executed_branches": [], "missing_branches": []}, "test_color_as_hex": {"executed_lines": [101, 102, 103], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 91, "executed_branches": [], "missing_branches": []}, "test_color_from_rgb_tuple": {"executed_lines": [144, 145, 146], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 139, "executed_branches": [], "missing_branches": []}, "test_color_from_bgr_tuple": {"executed_lines": [187, 188, 189], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 182, "executed_branches": [], "missing_branches": []}, "test_color_from_rgba_tuple": {"executed_lines": [219, 220, 221], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 214, "executed_branches": [], "missing_branches": []}, "test_color_from_bgra_tuple": {"executed_lines": [251, 252, 253], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 246, "executed_branches": [], "missing_branches": []}, "test_color_as_rgba": {"executed_lines": [269, 270, 271], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 264, "executed_branches": [], "missing_branches": []}, "test_color_as_bgra": {"executed_lines": [287, 288, 289], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 282, "executed_branches": [], "missing_branches": []}, "test_color_repr": {"executed_lines": [303], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 302, "executed_branches": [], "missing_branches": []}, "test_color_hash": {"executed_lines": [316, 317], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 315, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 5, 7, 10, 58, 75, 91, 106, 139, 149, 182, 192, 214, 224, 246, 256, 264, 274, 282, 292, 302, 306, 315], "summary": {"covered_lines": 24, "num_statements": 24, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 3, 5, 7, 10, 58, 70, 71, 72, 75, 91, 101, 102, 103, 106, 139, 144, 145, 146, 149, 182, 187, 188, 189, 192, 214, 219, 220, 221, 224, 246, 251, 252, 253, 256, 264, 269, 270, 271, 274, 282, 287, 288, 289, 292, 302, 303, 306, 315, 316, 317], "summary": {"covered_lines": 51, "num_statements": 51, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\geometry\\__init__.py": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\geometry\\test_core.py": {"executed_lines": [1, 3, 6, 29, 39, 40, 43, 64, 72, 73], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"test_vector_cross_product": {"executed_lines": [39, 40], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 29, "executed_branches": [], "missing_branches": []}, "test_vector_magnitude": {"executed_lines": [72, 73], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 64, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 6, 29, 43, 64], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 3, 6, 29, 39, 40, 43, 64, 72, 73], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\geometry\\test_utils.py": {"executed_lines": [1, 2, 4, 5, 8, 29, 30, 31, 32, 34, 37, 50, 59, 60], "summary": {"covered_lines": 14, "num_statements": 14, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"generate_test_polygon": {"executed_lines": [29, 30, 31, 32, 34], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 8, "executed_branches": [], "missing_branches": []}, "test_get_polygon_center": {"executed_lines": [59, 60], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 50, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 2, 4, 5, 8, 37, 50], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 2, 4, 5, 8, 29, 30, 31, 32, 34, 37, 50, 59, 60], "summary": {"covered_lines": 14, "num_statements": 14, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\helpers.py": {"executed_lines": [9, 11, 13, 15, 16, 19, 62, 63, 65, 79, 125, 126, 128, 144, 178, 180, 181, 183, 184, 185, 187, 188, 189, 190, 192, 194, 197, 215, 218, 231, 234, 235, 236, 239, 245, 248, 251, 252, 254, 255, 257, 258, 260, 264, 267, 268, 271, 274, 281, 282, 283, 284, 287, 290, 291, 292, 293, 294, 295, 297, 298, 301, 304, 305, 306, 307, 310, 313, 314, 317, 320, 321, 322, 323, 326, 329, 330, 331, 334, 335, 336, 337, 338, 341, 342, 343, 346, 347, 355, 356, 357, 360, 403, 405, 407, 408, 410, 412, 413, 414, 415, 416, 418, 419, 420, 422, 424, 425, 426, 429, 430, 431, 433, 434, 436, 437, 438, 439, 442, 443, 445, 448, 451, 452, 453, 456, 457, 458, 460, 471, 492, 498, 499, 500, 502, 503, 505, 506, 507, 509, 512, 513, 514, 515, 518, 519, 520, 521, 525, 526, 527, 528, 530], "summary": {"covered_lines": 153, "num_statements": 155, "percent_covered": 98.26589595375722, "percent_covered_display": "98", "missing_lines": 2, "excluded_lines": 1, "percent_statements_covered": 98.70967741935483, "percent_statements_covered_display": "99", "num_branches": 18, "num_partial_branches": 1, "covered_branches": 17, "missing_branches": 1, "percent_branches_covered": 94.44444444444444, "percent_branches_covered_display": "94"}, "missing_lines": [261, 494], "excluded_lines": [198], "executed_branches": [[183, 184], [183, 194], [322, -320], [322, 323], [407, 408], [407, 410], [422, 424], [422, 456], [433, 434], [433, 451], [492, 498], [502, 503], [502, 530], [503, 505], [503, 509], [509, 512], [509, 525]], "missing_branches": [[492, 494]], "functions": {"_create_detections": {"executed_lines": [62, 65], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 19, "executed_branches": [], "missing_branches": []}, "_create_detections.convert_data": {"executed_lines": [63], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 62, "executed_branches": [], "missing_branches": []}, "_create_key_points": {"executed_lines": [125, 128], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 79, "executed_branches": [], "missing_branches": []}, "_create_key_points.convert_data": {"executed_lines": [126], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 125, "executed_branches": [], "missing_branches": []}, "_generate_random_boxes": {"executed_lines": [178, 180, 181, 183, 184, 185, 187, 188, 189, 190, 192, 194], "summary": {"covered_lines": 12, "num_statements": 12, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 144, "executed_branches": [[183, 184], [183, 194]], "missing_branches": []}, "assert_almost_equal": {"executed_lines": [215], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 1, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [198], "start_line": 197, "executed_branches": [], "missing_branches": []}, "assert_image_mostly_same": {"executed_lines": [231, 234, 235, 236, 239, 245], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 218, "executed_branches": [], "missing_branches": []}, "_FakeTensor.__init__": {"executed_lines": [252], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 251, "executed_branches": [], "missing_branches": []}, "_FakeTensor.cpu": {"executed_lines": [255], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 254, "executed_branches": [], "missing_branches": []}, "_FakeTensor.numpy": {"executed_lines": [258], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 257, "executed_branches": [], "missing_branches": []}, "_FakeTensor.int": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [261], "excluded_lines": [], "start_line": 260, "executed_branches": [], "missing_branches": []}, "_FakeYOLOv5Results.__init__": {"executed_lines": [268], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 267, "executed_branches": [], "missing_branches": []}, "_FakeUltralyticsBoxes.__init__": {"executed_lines": [281, 282, 283, 284], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 274, "executed_branches": [], "missing_branches": []}, "_FakeUltralyticsResults.__init__": {"executed_lines": [291, 292, 293, 294, 295], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 290, "executed_branches": [], "missing_branches": []}, "_FakeUltralyticsResults.__len__": {"executed_lines": [298], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 297, "executed_branches": [], "missing_branches": []}, "_FakeYoloNasPrediction.__init__": {"executed_lines": [305, 306, 307], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 304, "executed_branches": [], "missing_branches": []}, "_FakeYoloNasResults.__init__": {"executed_lines": [314], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 313, "executed_branches": [], "missing_branches": []}, "_FakeYoloNasKeyPoint.__init__": {"executed_lines": [321, 322, 323], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 320, "executed_branches": [[322, -320], [322, 323]], "missing_branches": []}, "_FakeYoloNasKeyPointResults.__init__": {"executed_lines": [330, 331], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 329, "executed_branches": [], "missing_branches": []}, "_FakeMediapipeLandmark.__init__": {"executed_lines": [336, 337, 338], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 335, "executed_branches": [], "missing_branches": []}, "_FakeMediapipePose.__init__": {"executed_lines": [343], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 342, "executed_branches": [], "missing_branches": []}, "_FakeMediapipeResults.__init__": {"executed_lines": [355, 356, 357], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 347, "executed_branches": [], "missing_branches": []}, "create_yolo_dataset": {"executed_lines": [403, 405, 407, 408, 410, 412, 413, 414, 415, 416, 418, 419, 420, 422, 424, 425, 426, 429, 430, 431, 433, 434, 436, 437, 438, 439, 442, 443, 445, 448, 451, 452, 453, 456, 457, 458, 460], "summary": {"covered_lines": 37, "num_statements": 37, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 6, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 360, "executed_branches": [[407, 408], [407, 410], [422, 424], [422, 456], [433, 434], [433, 451]], "missing_branches": []}, "create_predictions_with_class_iou_tests": {"executed_lines": [492, 498, 499, 500, 502, 503, 505, 506, 507, 509, 512, 513, 514, 515, 518, 519, 520, 521, 525, 526, 527, 528, 530], "summary": {"covered_lines": 23, "num_statements": 24, "percent_covered": 93.75, "percent_covered_display": "94", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 95.83333333333333, "percent_statements_covered_display": "96", "num_branches": 8, "num_partial_branches": 1, "covered_branches": 7, "missing_branches": 1, "percent_branches_covered": 87.5, "percent_branches_covered_display": "88"}, "missing_lines": [494], "excluded_lines": [], "start_line": 471, "executed_branches": [[492, 498], [502, 503], [502, 530], [503, 505], [503, 509], [509, 512], [509, 525]], "missing_branches": [[492, 494]]}, "": {"executed_lines": [9, 11, 13, 15, 16, 19, 79, 144, 197, 218, 248, 251, 254, 257, 260, 264, 267, 271, 274, 287, 290, 297, 301, 304, 310, 313, 317, 320, 326, 329, 334, 335, 341, 342, 346, 347, 360, 471], "summary": {"covered_lines": 38, "num_statements": 38, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"_FakeTensor": {"executed_lines": [252, 255, 258], "summary": {"covered_lines": 3, "num_statements": 4, "percent_covered": 75.0, "percent_covered_display": "75", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 75.0, "percent_statements_covered_display": "75", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [261], "excluded_lines": [], "start_line": 248, "executed_branches": [], "missing_branches": []}, "_FakeYOLOv5Results": {"executed_lines": [268], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 264, "executed_branches": [], "missing_branches": []}, "_FakeUltralyticsBoxes": {"executed_lines": [281, 282, 283, 284], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 271, "executed_branches": [], "missing_branches": []}, "_FakeUltralyticsResults": {"executed_lines": [291, 292, 293, 294, 295, 298], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 287, "executed_branches": [], "missing_branches": []}, "_FakeYoloNasPrediction": {"executed_lines": [305, 306, 307], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 301, "executed_branches": [], "missing_branches": []}, "_FakeYoloNasResults": {"executed_lines": [314], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 310, "executed_branches": [], "missing_branches": []}, "_FakeYoloNasKeyPoint": {"executed_lines": [321, 322, 323], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 317, "executed_branches": [[322, -320], [322, 323]], "missing_branches": []}, "_FakeYoloNasKeyPointResults": {"executed_lines": [330, 331], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 326, "executed_branches": [], "missing_branches": []}, "_FakeMediapipeLandmark": {"executed_lines": [336, 337, 338], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 334, "executed_branches": [], "missing_branches": []}, "_FakeMediapipePose": {"executed_lines": [343], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 341, "executed_branches": [], "missing_branches": []}, "_FakeMediapipeResults": {"executed_lines": [355, 356, 357], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 346, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [9, 11, 13, 15, 16, 19, 62, 63, 65, 79, 125, 126, 128, 144, 178, 180, 181, 183, 184, 185, 187, 188, 189, 190, 192, 194, 197, 215, 218, 231, 234, 235, 236, 239, 245, 248, 251, 254, 257, 260, 264, 267, 271, 274, 287, 290, 297, 301, 304, 310, 313, 317, 320, 326, 329, 334, 335, 341, 342, 346, 347, 360, 403, 405, 407, 408, 410, 412, 413, 414, 415, 416, 418, 419, 420, 422, 424, 425, 426, 429, 430, 431, 433, 434, 436, 437, 438, 439, 442, 443, 445, 448, 451, 452, 453, 456, 457, 458, 460, 471, 492, 498, 499, 500, 502, 503, 505, 506, 507, 509, 512, 513, 514, 515, 518, 519, 520, 521, 525, 526, 527, 528, 530], "summary": {"covered_lines": 123, "num_statements": 124, "percent_covered": 98.57142857142857, "percent_covered_display": "99", "missing_lines": 1, "excluded_lines": 1, "percent_statements_covered": 99.19354838709677, "percent_statements_covered_display": "99", "num_branches": 16, "num_partial_branches": 1, "covered_branches": 15, "missing_branches": 1, "percent_branches_covered": 93.75, "percent_branches_covered_display": "94"}, "missing_lines": [494], "excluded_lines": [198], "start_line": 1, "executed_branches": [[183, 184], [183, 194], [407, 408], [407, 410], [422, 424], [422, 456], [433, 434], [433, 451], [492, 498], [502, 503], [502, 530], [503, 505], [503, 509], [509, 512], [509, 525]], "missing_branches": [[492, 494]]}}}, "tests\\key_points\\__init__.py": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\key_points\\test_annotators.py": {"executed_lines": [1, 2, 4, 5, 8, 16, 23, 24, 27, 31, 39, 40, 41, 42, 45, 49, 56, 57, 60, 62, 64, 68, 69, 70, 72, 74, 78, 79, 80, 82, 84, 87, 88, 89, 92, 100, 107, 108, 111, 115, 123, 124, 125, 128, 132, 139, 140, 143, 145, 147, 151, 152, 153, 155, 157, 161, 162, 163, 165, 173, 178, 179, 181, 184, 190, 195, 199, 200, 201, 203, 206, 208, 209, 211, 216, 217, 219, 221, 226, 228, 229, 231, 236, 237, 239, 240, 242, 244, 245, 250, 255, 257, 260, 264, 265, 267, 269, 270, 274, 276, 278, 279, 281, 290, 292, 293, 296, 299, 300, 304, 305, 306, 308, 313, 315, 316, 318, 319, 320, 322, 324, 325, 326, 331, 336, 338, 341, 345, 346, 349, 352, 353, 357, 358, 359, 361, 365, 367, 368, 370, 371, 372, 374, 376, 377, 378, 383, 388, 390, 393, 397, 398, 401, 402, 428, 431, 432, 434, 467, 468, 469, 471, 488, 489, 490, 492, 502, 503, 504], "summary": {"covered_lines": 169, "num_statements": 169, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"TestVertexAnnotator.test_annotate_with_default_parameters": {"executed_lines": [23, 24, 27], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 16, "executed_branches": [], "missing_branches": []}, "TestVertexAnnotator.test_annotate_with_custom_color_and_radius": {"executed_lines": [39, 40, 41, 42, 45], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 31, "executed_branches": [], "missing_branches": []}, "TestVertexAnnotator.test_annotate_empty_key_points": {"executed_lines": [56, 57, 60], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 49, "executed_branches": [], "missing_branches": []}, "TestVertexAnnotator.test_visible_false_skips_vertex": {"executed_lines": [64, 68, 69, 70], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 62, "executed_branches": [], "missing_branches": []}, "TestVertexAnnotator.test_visible_true_draws_vertex": {"executed_lines": [74, 78, 79, 80], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 72, "executed_branches": [], "missing_branches": []}, "TestVertexAnnotator.test_visible_none_draws_all": {"executed_lines": [84, 87, 88, 89], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 82, "executed_branches": [], "missing_branches": []}, "TestEdgeAnnotator.test_annotate_with_default_parameters": {"executed_lines": [107, 108, 111], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 100, "executed_branches": [], "missing_branches": []}, "TestEdgeAnnotator.test_annotate_with_custom_edges": {"executed_lines": [123, 124, 125, 128], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 115, "executed_branches": [], "missing_branches": []}, "TestEdgeAnnotator.test_annotate_empty_key_points": {"executed_lines": [139, 140, 143], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 132, "executed_branches": [], "missing_branches": []}, "TestEdgeAnnotator.test_visible_false_skips_edge": {"executed_lines": [147, 151, 152, 153], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 145, "executed_branches": [], "missing_branches": []}, "TestEdgeAnnotator.test_visible_true_draws_edge": {"executed_lines": [157, 161, 162, 163], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 155, "executed_branches": [], "missing_branches": []}, "TestEdgeAnnotator.test_annotate_no_edges_found": {"executed_lines": [173, 178, 179, 181], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 165, "executed_branches": [], "missing_branches": []}, "TestVertexEllipseAnnotator.test_annotate_with_covariance_data": {"executed_lines": [195, 199, 200, 201, 203, 206, 208, 209], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 190, "executed_branches": [], "missing_branches": []}, "TestVertexEllipseAnnotator.test_annotate_empty_key_points": {"executed_lines": [216, 217, 219], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 211, "executed_branches": [], "missing_branches": []}, "TestVertexEllipseAnnotator.test_annotate_missing_covariance_data_raises": {"executed_lines": [226, 228, 229], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 221, "executed_branches": [], "missing_branches": []}, "TestVertexEllipseAnnotator.test_annotate_invalid_covariance_shape_raises": {"executed_lines": [236, 237, 239, 240], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 231, "executed_branches": [], "missing_branches": []}, "TestVertexEllipseAnnotator.test_visible_false_skips_keypoint": {"executed_lines": [244, 245, 250, 255, 257, 260, 264, 265], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 242, "executed_branches": [], "missing_branches": []}, "TestVertexEllipseAnnotator.test_max_axis_caps_large_eigenvalue": {"executed_lines": [269, 270, 274, 276, 278, 279], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 267, "executed_branches": [], "missing_branches": []}, "TestVertexEllipseAnnotator.test_constructor_raises_on_invalid_params": {"executed_lines": [292, 293], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 290, "executed_branches": [], "missing_branches": []}, "TestVertexEllipseOutlineAnnotator.test_annotate_draws_outlines": {"executed_lines": [300, 304, 305, 306, 308, 313, 315, 316], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 299, "executed_branches": [], "missing_branches": []}, "TestVertexEllipseOutlineAnnotator.test_annotate_empty_key_points": {"executed_lines": [319, 320, 322], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 318, "executed_branches": [], "missing_branches": []}, "TestVertexEllipseOutlineAnnotator.test_visible_false_skips_keypoint": {"executed_lines": [325, 326, 331, 336, 338, 341, 345, 346], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 324, "executed_branches": [], "missing_branches": []}, "TestVertexEllipseHaloAnnotator.test_annotate_draws_halo": {"executed_lines": [353, 357, 358, 359, 361, 365, 367, 368], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 352, "executed_branches": [], "missing_branches": []}, "TestVertexEllipseHaloAnnotator.test_annotate_empty_key_points": {"executed_lines": [371, 372, 374], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 370, "executed_branches": [], "missing_branches": []}, "TestVertexEllipseHaloAnnotator.test_visible_false_skips_keypoint": {"executed_lines": [377, 378, 383, 388, 390, 393, 397, 398], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 376, "executed_branches": [], "missing_branches": []}, "TestVertexLabelAnnotator.test_resolve_labels_returns_expected": {"executed_lines": [431, 432], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 428, "executed_branches": [], "missing_branches": []}, "TestVertexLabelAnnotator.test_resolve_labels_raises": {"executed_lines": [468, 469], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 467, "executed_branches": [], "missing_branches": []}, "TestVertexLabelAnnotator.test_resolve_color_list_returns_expected": {"executed_lines": [489, 490], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 488, "executed_branches": [], "missing_branches": []}, "TestVertexLabelAnnotator.test_resolve_color_list_wrong_length_raises": {"executed_lines": [503, 504], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 502, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 2, 4, 5, 8, 16, 31, 49, 62, 72, 82, 92, 100, 115, 132, 145, 155, 165, 184, 190, 211, 221, 231, 242, 267, 281, 290, 296, 299, 318, 324, 349, 352, 370, 376, 401, 402, 428, 434, 467, 471, 488, 492, 502], "summary": {"covered_lines": 44, "num_statements": 44, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"TestVertexAnnotator": {"executed_lines": [23, 24, 27, 39, 40, 41, 42, 45, 56, 57, 60, 64, 68, 69, 70, 74, 78, 79, 80, 84, 87, 88, 89], "summary": {"covered_lines": 23, "num_statements": 23, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 8, "executed_branches": [], "missing_branches": []}, "TestEdgeAnnotator": {"executed_lines": [107, 108, 111, 123, 124, 125, 128, 139, 140, 143, 147, 151, 152, 153, 157, 161, 162, 163, 173, 178, 179, 181], "summary": {"covered_lines": 22, "num_statements": 22, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 92, "executed_branches": [], "missing_branches": []}, "TestVertexEllipseAnnotator": {"executed_lines": [195, 199, 200, 201, 203, 206, 208, 209, 216, 217, 219, 226, 228, 229, 236, 237, 239, 240, 244, 245, 250, 255, 257, 260, 264, 265, 269, 270, 274, 276, 278, 279, 292, 293], "summary": {"covered_lines": 34, "num_statements": 34, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 184, "executed_branches": [], "missing_branches": []}, "TestVertexEllipseOutlineAnnotator": {"executed_lines": [300, 304, 305, 306, 308, 313, 315, 316, 319, 320, 322, 325, 326, 331, 336, 338, 341, 345, 346], "summary": {"covered_lines": 19, "num_statements": 19, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 296, "executed_branches": [], "missing_branches": []}, "TestVertexEllipseHaloAnnotator": {"executed_lines": [353, 357, 358, 359, 361, 365, 367, 368, 371, 372, 374, 377, 378, 383, 388, 390, 393, 397, 398], "summary": {"covered_lines": 19, "num_statements": 19, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 349, "executed_branches": [], "missing_branches": []}, "TestVertexLabelAnnotator": {"executed_lines": [431, 432, 468, 469, 489, 490, 503, 504], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 401, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 2, 4, 5, 8, 16, 31, 49, 62, 72, 82, 92, 100, 115, 132, 145, 155, 165, 184, 190, 211, 221, 231, 242, 267, 281, 290, 296, 299, 318, 324, 349, 352, 370, 376, 401, 402, 428, 434, 467, 471, 488, 492, 502], "summary": {"covered_lines": 44, "num_statements": 44, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\key_points\\test_core.py": {"executed_lines": [1, 3, 4, 6, 7, 16, 31, 371, 372, 373, 374, 377, 393, 508, 510, 511, 514, 517, 518, 523, 525, 526, 531, 532, 533, 535, 536, 546, 547, 548, 550, 551, 557, 558, 559, 561, 562, 568, 569, 570, 572, 573, 582, 583, 584, 585, 589, 590, 594, 595, 597, 598, 603, 608, 613, 614, 616, 617, 621, 626, 629, 631, 632, 633, 634, 637, 639, 640, 642, 647, 650, 652, 658, 659, 660, 662, 663, 666, 691, 695, 696, 697, 698, 699, 702, 704, 705, 706, 709, 711, 717, 719, 722, 724, 731, 733, 736, 738, 744, 746, 749, 751, 757, 759, 760, 763, 765, 771, 774, 775, 778, 780, 785, 786, 787, 788, 791, 793, 799, 800, 801, 802, 803, 804, 805, 806, 809, 811, 816, 817, 820, 861, 863, 864, 867, 869, 872, 875, 876, 879, 905, 907, 908, 911, 913, 916, 919, 922, 948, 950, 951, 954, 991, 993, 996, 999, 1002, 1004, 1006, 1007, 1009, 1010, 1012, 1013, 1015, 1028, 1032, 1033, 1034, 1036, 1037, 1039, 1041, 1043, 1044, 1046, 1047, 1048, 1050, 1051, 1053, 1055, 1057, 1059, 1060, 1061, 1063, 1065, 1067, 1069, 1070, 1072, 1074, 1075, 1077, 1078, 1082, 1087, 1396, 1398, 1399, 1402, 1437, 1439, 1440], "summary": {"covered_lines": 205, "num_statements": 205, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [[800, 801], [800, 806], [816, -809], [816, 817]], "missing_branches": [], "functions": {"test_key_points_getitem": {"executed_lines": [372, 373, 374], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 371, "executed_branches": [], "missing_branches": []}, "test_key_points_getitem_detection_level": {"executed_lines": [510, 511], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 508, "executed_branches": [], "missing_branches": []}, "TestKeyPointsVisible.test_visible_defaults_to_none": {"executed_lines": [518, 523], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 517, "executed_branches": [], "missing_branches": []}, "TestKeyPointsVisible.test_visible_set_from_confidence_threshold": {"executed_lines": [526, 531, 532, 533], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 525, "executed_branches": [], "missing_branches": []}, "TestKeyPointsVisible.test_visible_preserved_on_skeleton_filter": {"executed_lines": [536, 546, 547, 548], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 535, "executed_branches": [], "missing_branches": []}, "TestKeyPointsVisible.test_visible_preserved_on_int_index": {"executed_lines": [551, 557, 558, 559], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 550, "executed_branches": [], "missing_branches": []}, "TestKeyPointsVisible.test_visible_preserved_on_anchor_slice": {"executed_lines": [562, 568, 569, 570], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 561, "executed_branches": [], "missing_branches": []}, "TestKeyPointsVisible.test_visible_preserved_on_2d_bool_mask": {"executed_lines": [573, 582, 583, 584, 585], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 572, "executed_branches": [], "missing_branches": []}, "TestKeyPointsVisible.test_visible_none_stays_none_on_filter": {"executed_lines": [590, 594, 595], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 589, "executed_branches": [], "missing_branches": []}, "TestKeyPointsVisible.test_equality_with_visible": {"executed_lines": [598, 603, 608, 613, 614], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 597, "executed_branches": [], "missing_branches": []}, "TestKeyPointsVisible.test_equality_visible_none_vs_set": {"executed_lines": [617, 621, 626], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 616, "executed_branches": [], "missing_branches": []}, "test_key_points_empty": {"executed_lines": [631, 632, 633, 634], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 629, "executed_branches": [], "missing_branches": []}, "test_key_points_is_empty": {"executed_lines": [639, 640, 642, 647], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 637, "executed_branches": [], "missing_branches": []}, "test_key_points_setitem": {"executed_lines": [652, 658, 659, 660, 662, 663], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 650, "executed_branches": [], "missing_branches": []}, "test_key_points_as_detections": {"executed_lines": [695, 696, 697, 698, 699], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 691, "executed_branches": [], "missing_branches": []}, "test_key_points_as_detections_empty": {"executed_lines": [704, 705, 706], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 702, "executed_branches": [], "missing_branches": []}, "test_key_points_as_detections_ignores_missing_keypoints": {"executed_lines": [711, 717, 719], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 709, "executed_branches": [], "missing_branches": []}, "test_key_points_as_detections_uses_detection_confidence": {"executed_lines": [724, 731, 733], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 722, "executed_branches": [], "missing_branches": []}, "test_key_points_as_detections_selected_keypoint_indices": {"executed_lines": [738, 744, 746], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 736, "executed_branches": [], "missing_branches": []}, "test_key_points_as_detections_confidence_over_selected_indices": {"executed_lines": [751, 757, 759, 760], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 749, "executed_branches": [], "missing_branches": []}, "test_key_points_as_detections_mixed_valid_invalid_batch": {"executed_lines": [765, 771, 774, 775], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 763, "executed_branches": [], "missing_branches": []}, "test_key_points_as_detections_with_data": {"executed_lines": [780, 785, 786, 787, 788], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 778, "executed_branches": [], "missing_branches": []}, "test_key_points_iteration": {"executed_lines": [793, 799, 800, 801, 802, 803, 804, 805, 806], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 791, "executed_branches": [[800, 801], [800, 806]], "missing_branches": []}, "test_key_points_iteration_no_confidence": {"executed_lines": [811, 816, 817], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 809, "executed_branches": [[816, -809], [816, 817]], "missing_branches": []}, "test_key_points_equality": {"executed_lines": [863, 864], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 861, "executed_branches": [], "missing_branches": []}, "test_key_points_equality_with_data": {"executed_lines": [869, 872, 875, 876], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 867, "executed_branches": [], "missing_branches": []}, "test_from_inference_input": {"executed_lines": [907, 908], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 905, "executed_branches": [], "missing_branches": []}, "test_from_inference_invalid_input": {"executed_lines": [913, 916, 919], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 911, "executed_branches": [], "missing_branches": []}, "test_from_yolo_nas_input": {"executed_lines": [950, 951], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 948, "executed_branches": [], "missing_branches": []}, "test_from_mediapipe_input": {"executed_lines": [993, 996], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 991, "executed_branches": [], "missing_branches": []}, "TestDeprecatedConfidenceConstructor.test_constructor_accepts_and_warns_on_deprecated_confidence_kwarg": {"executed_lines": [1004, 1006, 1007, 1009, 1010, 1012, 1013], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1002, "executed_branches": [], "missing_branches": []}, "TestDeprecatedConfidenceConstructor.test_constructor_rejects_both_confidence_and_keypoint_confidence": {"executed_lines": [1032, 1033, 1034, 1036, 1037], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1028, "executed_branches": [], "missing_branches": []}, "TestDeprecatedConfidenceConstructor.test_constructor_normal_keypoint_confidence_path": {"executed_lines": [1041, 1043, 1044, 1046, 1047, 1048, 1050, 1051], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1039, "executed_branches": [], "missing_branches": []}, "TestDeprecatedConfidenceConstructor.test_constructor_confidence_none_does_not_warn": {"executed_lines": [1055, 1057, 1059, 1060, 1061, 1063], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1053, "executed_branches": [], "missing_branches": []}, "TestDeprecatedConfidenceConstructor.test_constructor_data_none_defaults_to_empty_dict": {"executed_lines": [1067, 1069, 1070], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1065, "executed_branches": [], "missing_branches": []}, "TestDeprecatedConfidenceConstructor.test_keypoints_init_covers_all_dataclass_fields": {"executed_lines": [1074, 1075, 1077, 1078, 1082], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1072, "executed_branches": [], "missing_branches": []}, "test_with_nms": {"executed_lines": [1398, 1399], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1396, "executed_branches": [], "missing_branches": []}, "test_with_nms_raises": {"executed_lines": [1439, 1440], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1437, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 6, 7, 16, 31, 371, 377, 393, 508, 514, 517, 525, 535, 550, 561, 572, 589, 597, 616, 629, 637, 650, 666, 691, 702, 709, 722, 736, 749, 763, 778, 791, 809, 820, 861, 867, 879, 905, 911, 922, 948, 954, 991, 999, 1002, 1015, 1028, 1039, 1053, 1065, 1072, 1087, 1396, 1402, 1437], "summary": {"covered_lines": 57, "num_statements": 57, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"TestKeyPointsVisible": {"executed_lines": [518, 523, 526, 531, 532, 533, 536, 546, 547, 548, 551, 557, 558, 559, 562, 568, 569, 570, 573, 582, 583, 584, 585, 590, 594, 595, 598, 603, 608, 613, 614, 617, 621, 626], "summary": {"covered_lines": 34, "num_statements": 34, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 514, "executed_branches": [], "missing_branches": []}, "TestDeprecatedConfidenceConstructor": {"executed_lines": [1004, 1006, 1007, 1009, 1010, 1012, 1013, 1032, 1033, 1034, 1036, 1037, 1041, 1043, 1044, 1046, 1047, 1048, 1050, 1051, 1055, 1057, 1059, 1060, 1061, 1063, 1067, 1069, 1070, 1074, 1075, 1077, 1078, 1082], "summary": {"covered_lines": 34, "num_statements": 34, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 999, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 6, 7, 16, 31, 371, 372, 373, 374, 377, 393, 508, 510, 511, 514, 517, 525, 535, 550, 561, 572, 589, 597, 616, 629, 631, 632, 633, 634, 637, 639, 640, 642, 647, 650, 652, 658, 659, 660, 662, 663, 666, 691, 695, 696, 697, 698, 699, 702, 704, 705, 706, 709, 711, 717, 719, 722, 724, 731, 733, 736, 738, 744, 746, 749, 751, 757, 759, 760, 763, 765, 771, 774, 775, 778, 780, 785, 786, 787, 788, 791, 793, 799, 800, 801, 802, 803, 804, 805, 806, 809, 811, 816, 817, 820, 861, 863, 864, 867, 869, 872, 875, 876, 879, 905, 907, 908, 911, 913, 916, 919, 922, 948, 950, 951, 954, 991, 993, 996, 999, 1002, 1015, 1028, 1039, 1053, 1065, 1072, 1087, 1396, 1398, 1399, 1402, 1437, 1439, 1440], "summary": {"covered_lines": 137, "num_statements": 137, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [[800, 801], [800, 806], [816, -809], [816, 817]], "missing_branches": []}}}, "tests\\key_points\\test_skeletons.py": {"executed_lines": [1, 8, 9, 11, 12, 13, 17, 20, 23, 24, 25, 27, 30, 34, 35, 36, 37, 39, 41, 43, 44, 45, 47, 49, 50, 51, 53, 56, 59, 60], "summary": {"covered_lines": 30, "num_statements": 30, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 8, "num_partial_branches": 0, "covered_branches": 8, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [[11, -9], [11, 12], [35, 36], [35, 39], [50, 51], [50, 56], [59, -47], [59, 60]], "missing_branches": [], "functions": {"TestSkeletons.test_skeleton_enum_values": {"executed_lines": [11, 12, 13], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 9, "executed_branches": [[11, -9], [11, 12]], "missing_branches": []}, "TestSkeletons.test_skeletons_by_vertex_count": {"executed_lines": [20, 23, 24, 25], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 17, "executed_branches": [], "missing_branches": []}, "TestSkeletons.test_skeletons_by_edge_count": {"executed_lines": [30, 34, 35, 36, 37, 39], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 27, "executed_branches": [[35, 36], [35, 39]], "missing_branches": []}, "TestSkeletons.test_unique_vertices_calculation": {"executed_lines": [43, 44, 45], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 41, "executed_branches": [], "missing_branches": []}, "TestSkeletons.test_skeletons_by_vertex_count_mapping_behaviour": {"executed_lines": [49, 50, 51, 53, 56, 59, 60], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 47, "executed_branches": [[50, 51], [50, 56], [59, -47], [59, 60]], "missing_branches": []}, "": {"executed_lines": [1, 8, 9, 17, 27, 41, 47], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"TestSkeletons": {"executed_lines": [11, 12, 13, 20, 23, 24, 25, 30, 34, 35, 36, 37, 39, 43, 44, 45, 49, 50, 51, 53, 56, 59, 60], "summary": {"covered_lines": 23, "num_statements": 23, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 8, "num_partial_branches": 0, "covered_branches": 8, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 8, "executed_branches": [[11, -9], [11, 12], [35, 36], [35, 39], [50, 51], [50, 56], [59, -47], [59, 60]], "missing_branches": []}, "": {"executed_lines": [1, 8, 9, 17, 27, 41, 47], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\metrics\\__init__.py": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\metrics\\conftest.py": {"executed_lines": [1, 3, 4, 6, 9, 10, 11, 18, 19, 20, 26, 27, 28, 35, 36, 37, 44, 45, 46, 52, 53, 54, 66, 67, 82, 83, 96, 97, 98, 105, 106, 107, 113, 114, 115, 128, 129, 130, 137, 138, 139, 145, 163, 165, 168, 178, 179, 194, 202, 203, 219], "summary": {"covered_lines": 51, "num_statements": 54, "percent_covered": 92.85714285714286, "percent_covered_display": "93", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 94.44444444444444, "percent_statements_covered_display": "94", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [68, 84, 166], "excluded_lines": [], "executed_branches": [[165, 168]], "missing_branches": [[165, 166]], "functions": {"detections_50_50": {"executed_lines": [11], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 10, "executed_branches": [], "missing_branches": []}, "targets_50_50": {"executed_lines": [20], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 19, "executed_branches": [], "missing_branches": []}, "dummy_prediction": {"executed_lines": [28], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 27, "executed_branches": [], "missing_branches": []}, "predictions_no_overlap": {"executed_lines": [37], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 36, "executed_branches": [], "missing_branches": []}, "targets_no_overlap": {"executed_lines": [46], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 45, "executed_branches": [], "missing_branches": []}, "targets_two_objects_class_0": {"executed_lines": [54], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 53, "executed_branches": [], "missing_branches": []}, "predictions_multiple_classes": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [68], "excluded_lines": [], "start_line": 67, "executed_branches": [], "missing_branches": []}, "targets_multiple_classes": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [84], "excluded_lines": [], "start_line": 83, "executed_branches": [], "missing_branches": []}, "predictions_iou_064": {"executed_lines": [98], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 97, "executed_branches": [], "missing_branches": []}, "targets_iou_064": {"executed_lines": [107], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 106, "executed_branches": [], "missing_branches": []}, "predictions_confidence_ranking": {"executed_lines": [115], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 114, "executed_branches": [], "missing_branches": []}, "prediction_class_1": {"executed_lines": [130], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 129, "executed_branches": [], "missing_branches": []}, "target_class_1": {"executed_lines": [139], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 138, "executed_branches": [], "missing_branches": []}, "_yolo_dataset_factory": {"executed_lines": [163, 165, 168], "summary": {"covered_lines": 3, "num_statements": 4, "percent_covered": 66.66666666666667, "percent_covered_display": "67", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 75.0, "percent_statements_covered_display": "75", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [166], "excluded_lines": [], "start_line": 145, "executed_branches": [[165, 168]], "missing_branches": [[165, 166]]}, "yolo_dataset_structure": {"executed_lines": [194], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 179, "executed_branches": [], "missing_branches": []}, "yolo_dataset_two_classes": {"executed_lines": [219], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 203, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 6, 9, 10, 18, 19, 26, 27, 35, 36, 44, 45, 52, 53, 66, 67, 82, 83, 96, 97, 105, 106, 113, 114, 128, 129, 137, 138, 145, 178, 179, 202, 203], "summary": {"covered_lines": 35, "num_statements": 35, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 3, 4, 6, 9, 10, 11, 18, 19, 20, 26, 27, 28, 35, 36, 37, 44, 45, 46, 52, 53, 54, 66, 67, 82, 83, 96, 97, 98, 105, 106, 107, 113, 114, 115, 128, 129, 130, 137, 138, 139, 145, 163, 165, 168, 178, 179, 194, 202, 203, 219], "summary": {"covered_lines": 51, "num_statements": 54, "percent_covered": 92.85714285714286, "percent_covered_display": "93", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 94.44444444444444, "percent_statements_covered_display": "94", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [68, 84, 166], "excluded_lines": [], "start_line": 1, "executed_branches": [[165, 168]], "missing_branches": [[165, 166]]}}}, "tests\\metrics\\test_detection.py": {"executed_lines": [1, 3, 4, 6, 7, 9, 10, 11, 12, 18, 25, 26, 45, 46, 54, 55, 65, 74, 75, 77, 92, 108, 113, 119, 130, 142, 151, 152, 153, 154, 155, 157, 158, 159, 160, 161, 162, 164, 165, 166, 167, 168, 169, 170, 172, 173, 177, 181, 185, 364, 379, 380, 385, 387, 505, 515, 516, 524, 525, 527, 549, 559, 560, 568, 569, 571, 581, 587, 588, 590, 592, 621, 635, 636, 639, 641, 1097, 1107, 1108, 1118, 1120, 1130, 1131, 1134, 1141, 1145, 1152, 1156, 1161, 1164, 1169, 1170, 1172, 1173, 1174, 1179, 1188, 1189, 1194, 1195, 1197, 1202, 1203, 1207, 1213, 1243, 1247, 1248, 1250, 1258, 1262, 1265, 1272, 1281, 1288, 1289, 1293, 1294, 1304, 1312, 1313, 1316, 1324, 1330, 1331, 1333, 1347, 1348, 1349, 1350, 1353, 1363, 1374, 1375, 1380, 1387, 1397, 1404, 1405, 1406, 1409, 1416, 1417, 1419, 1445, 1449, 1456, 1458, 1475, 1477, 1478, 1480, 1482, 1485, 1502, 1519, 1527, 1528, 1529, 1531, 1533, 1534, 1544, 1546, 1548, 1554], "summary": {"covered_lines": 166, "num_statements": 166, "percent_covered": 99.42528735632185, "percent_covered_display": "99", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 8, "num_partial_branches": 1, "covered_branches": 7, "missing_branches": 1, "percent_branches_covered": 87.5, "percent_branches_covered_display": "88"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [[153, 154], [159, 160], [159, 162], [166, 167], [166, 170], [1172, 1173], [1172, 1179]], "missing_branches": [[153, 155]], "functions": {"_call_confusion_matrix_from_detections_masks": {"executed_lines": [26], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 25, "executed_branches": [], "missing_branches": []}, "_call_confusion_matrix_from_tensors_masks": {"executed_lines": [46], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 45, "executed_branches": [], "missing_branches": []}, "_call_confusion_matrix_evaluate_detection_batch_masks": {"executed_lines": [55], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 54, "executed_branches": [], "missing_branches": []}, "TestDetectionMetrics.create_empty_conf_matrix": {"executed_lines": [153, 154, 155], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 80.0, "percent_covered_display": "80", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 1, "covered_branches": 1, "missing_branches": 1, "percent_branches_covered": 50.0, "percent_branches_covered_display": "50"}, "missing_lines": [], "excluded_lines": [], "start_line": 152, "executed_branches": [[153, 154]], "missing_branches": [[153, 155]]}, "TestDetectionMetrics.update_ideal_conf_matrix": {"executed_lines": [159, 160, 161, 162], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 158, "executed_branches": [[159, 160], [159, 162]], "missing_branches": []}, "TestDetectionMetrics.worsen_ideal_conf_matrix": {"executed_lines": [166, 167, 168, 169, 170], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 165, "executed_branches": [[166, 167], [166, 170]], "missing_branches": []}, "TestDetectionMetrics.test_detections_to_tensor": {"executed_lines": [379, 380, 385], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 364, "executed_branches": [], "missing_branches": []}, "TestDetectionMetrics.test_from_tensors": {"executed_lines": [515, 516, 524, 525], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 505, "executed_branches": [], "missing_branches": []}, "TestDetectionMetrics.test_evaluate_detection_batch": {"executed_lines": [559, 560, 568, 569], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 549, "executed_branches": [], "missing_branches": []}, "TestDetectionMetrics.test_drop_extra_matches": {"executed_lines": [587, 588, 590], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 581, "executed_branches": [], "missing_branches": []}, "TestDetectionMetrics.test_compute_average_precision": {"executed_lines": [635, 636, 639], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 621, "executed_branches": [], "missing_branches": []}, "TestDetectionMetrics.test_confusion_matrix": {"executed_lines": [1107, 1108, 1118], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1097, "executed_branches": [], "missing_branches": []}, "TestDetectionMetrics.test_confusion_matrix_on_yolo_dataset": {"executed_lines": [1130, 1131, 1134, 1141, 1145, 1152, 1156, 1161, 1164, 1169, 1170, 1172, 1173, 1174, 1179, 1188, 1189, 1194, 1195, 1197, 1202, 1203, 1207], "summary": {"covered_lines": 23, "num_statements": 23, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1120, "executed_branches": [[1172, 1173], [1172, 1179]], "missing_branches": []}, "TestDetectionMetrics.test_validate_input_tensors_obb": {"executed_lines": [1247, 1248], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1243, "executed_branches": [], "missing_branches": []}, "TestDetectionMetrics.test_confusion_matrix_obb": {"executed_lines": [1258, 1262, 1265, 1272, 1281, 1288, 1289, 1293, 1294, 1304, 1312, 1313, 1316, 1324, 1330, 1331], "summary": {"covered_lines": 16, "num_statements": 16, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1250, "executed_branches": [], "missing_branches": []}, "TestDetectionMetrics.test_confusion_matrix_obb_regression_1760": {"executed_lines": [1347, 1348, 1349, 1350, 1353, 1363, 1374, 1375, 1380, 1387, 1397, 1404, 1405, 1406, 1409, 1416, 1417], "summary": {"covered_lines": 17, "num_statements": 17, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1333, "executed_branches": [], "missing_branches": []}, "TestDetectionMetrics.test_confusion_matrix_from_tensors_obb": {"executed_lines": [1449, 1456], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1445, "executed_branches": [], "missing_branches": []}, "TestDetectionMetrics.test_confusion_matrix_masks_rejection": {"executed_lines": [1477, 1478], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1475, "executed_branches": [], "missing_branches": []}, "TestDetectionMetrics.test_confusion_matrix_multiclass_obb": {"executed_lines": [1482, 1485, 1502, 1519, 1527, 1528, 1529], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1480, "executed_branches": [], "missing_branches": []}, "TestDetectionMetrics.test_confusion_matrix_metric_target_persistence_from_detections": {"executed_lines": [1533, 1534, 1544], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1531, "executed_branches": [], "missing_branches": []}, "TestDetectionMetrics.test_confusion_matrix_metric_target_persistence_from_tensors": {"executed_lines": [1548, 1554], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1546, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 6, 7, 9, 10, 11, 12, 18, 25, 45, 54, 65, 74, 75, 77, 92, 108, 113, 119, 130, 142, 151, 152, 157, 158, 164, 165, 172, 173, 177, 181, 185, 364, 387, 505, 527, 549, 571, 581, 592, 621, 641, 1097, 1120, 1213, 1243, 1250, 1333, 1419, 1445, 1458, 1475, 1480, 1531, 1546], "summary": {"covered_lines": 57, "num_statements": 57, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"TestDetectionMetrics": {"executed_lines": [153, 154, 155, 159, 160, 161, 162, 166, 167, 168, 169, 170, 379, 380, 385, 515, 516, 524, 525, 559, 560, 568, 569, 587, 588, 590, 635, 636, 639, 1107, 1108, 1118, 1130, 1131, 1134, 1141, 1145, 1152, 1156, 1161, 1164, 1169, 1170, 1172, 1173, 1174, 1179, 1188, 1189, 1194, 1195, 1197, 1202, 1203, 1207, 1247, 1248, 1258, 1262, 1265, 1272, 1281, 1288, 1289, 1293, 1294, 1304, 1312, 1313, 1316, 1324, 1330, 1331, 1347, 1348, 1349, 1350, 1353, 1363, 1374, 1375, 1380, 1387, 1397, 1404, 1405, 1406, 1409, 1416, 1417, 1449, 1456, 1477, 1478, 1482, 1485, 1502, 1519, 1527, 1528, 1529, 1533, 1534, 1544, 1548, 1554], "summary": {"covered_lines": 106, "num_statements": 106, "percent_covered": 99.12280701754386, "percent_covered_display": "99", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 8, "num_partial_branches": 1, "covered_branches": 7, "missing_branches": 1, "percent_branches_covered": 87.5, "percent_branches_covered_display": "88"}, "missing_lines": [], "excluded_lines": [], "start_line": 65, "executed_branches": [[153, 154], [159, 160], [159, 162], [166, 167], [166, 170], [1172, 1173], [1172, 1179]], "missing_branches": [[153, 155]]}, "": {"executed_lines": [1, 3, 4, 6, 7, 9, 10, 11, 12, 18, 25, 26, 45, 46, 54, 55, 65, 74, 75, 77, 92, 108, 113, 119, 130, 142, 151, 152, 157, 158, 164, 165, 172, 173, 177, 181, 185, 364, 387, 505, 527, 549, 571, 581, 592, 621, 641, 1097, 1120, 1213, 1243, 1250, 1333, 1419, 1445, 1458, 1475, 1480, 1531, 1546], "summary": {"covered_lines": 60, "num_statements": 60, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\metrics\\test_f1_score.py": {"executed_lines": [1, 2, 4, 5, 6, 7, 10, 11, 12, 13, 26, 27, 28, 39, 41, 42, 43, 44, 45, 47, 49, 53, 54, 56, 58, 61, 64, 65, 68, 69, 70, 72, 74, 75, 82, 83, 84, 85, 87, 89, 90, 96, 97, 99, 101, 103, 104, 110, 111, 113, 115, 117, 118, 124, 125, 127, 129, 134, 138, 144, 145, 151, 152, 154, 170, 173, 180, 185, 186, 191, 193, 195, 201, 202, 205, 207, 211, 212, 218, 219, 220, 222, 226, 227, 233, 234, 235, 237, 241, 242, 249, 250, 251, 252, 253, 255, 257, 258, 263, 264, 266, 268, 269, 275, 276, 278, 282, 283, 288, 289, 291, 293, 296, 297, 299, 303, 305, 306, 309, 310, 312, 316, 317, 322, 323, 325, 329, 330, 335, 336, 338, 342, 343, 348, 349], "summary": {"covered_lines": 135, "num_statements": 135, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"TestF1Score.predictions_multiple_classes": {"executed_lines": [13], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 12, "executed_branches": [], "missing_branches": []}, "TestF1Score.targets_multiple_classes": {"executed_lines": [28], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 27, "executed_branches": [], "missing_branches": []}, "TestF1Score.test_initialization_default": {"executed_lines": [41, 42, 43, 44, 45], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 39, "executed_branches": [], "missing_branches": []}, "TestF1Score.test_initialization_custom": {"executed_lines": [49, 53, 54], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 47, "executed_branches": [], "missing_branches": []}, "TestF1Score.test_reset": {"executed_lines": [58, 61, 64, 65, 68, 69, 70], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 56, "executed_branches": [], "missing_branches": []}, "TestF1Score.test_perfect_match": {"executed_lines": [74, 75, 82, 83, 84, 85], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 72, "executed_branches": [], "missing_branches": []}, "TestF1Score.test_no_overlap": {"executed_lines": [89, 90, 96, 97], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 87, "executed_branches": [], "missing_branches": []}, "TestF1Score.test_empty_predictions": {"executed_lines": [101, 103, 104, 110, 111], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 99, "executed_branches": [], "missing_branches": []}, "TestF1Score.test_empty_targets": {"executed_lines": [115, 117, 118, 124, 125], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 113, "executed_branches": [], "missing_branches": []}, "TestF1Score.test_false_positives_on_background_image_counted": {"executed_lines": [129, 134, 138, 144, 145, 151, 152], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 127, "executed_branches": [], "missing_branches": []}, "TestF1Score.test_false_positives_of_absent_class_counted": {"executed_lines": [173, 180, 185, 186, 191], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 170, "executed_branches": [], "missing_branches": []}, "TestF1Score.test_false_positives_on_background_image_weighted_returns_zero": {"executed_lines": [195, 201, 202, 205], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 193, "executed_branches": [], "missing_branches": []}, "TestF1Score.test_single_class_mixed_results": {"executed_lines": [211, 212, 218, 219, 220], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 207, "executed_branches": [], "missing_branches": []}, "TestF1Score.test_precision_recall_imbalance": {"executed_lines": [226, 227, 233, 234, 235], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 222, "executed_branches": [], "missing_branches": []}, "TestF1Score.test_multiple_classes": {"executed_lines": [241, 242, 249, 250, 251, 252, 253], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 237, "executed_branches": [], "missing_branches": []}, "TestF1Score.test_different_iou_thresholds": {"executed_lines": [257, 258, 263, 264], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 255, "executed_branches": [], "missing_branches": []}, "TestF1Score.test_confidence_ranking": {"executed_lines": [268, 269, 275, 276], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 266, "executed_branches": [], "missing_branches": []}, "TestF1Score.test_list_inputs": {"executed_lines": [282, 283, 288, 289], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 278, "executed_branches": [], "missing_branches": []}, "TestF1Score.test_mismatched_list_lengths": {"executed_lines": [293, 296, 297], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 291, "executed_branches": [], "missing_branches": []}, "TestF1Score.test_averaging_methods": {"executed_lines": [305, 306, 309, 310], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 303, "executed_branches": [], "missing_branches": []}, "TestF1Score.test_macro_averaging": {"executed_lines": [316, 317, 322, 323], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 312, "executed_branches": [], "missing_branches": []}, "TestF1Score.test_micro_averaging": {"executed_lines": [329, 330, 335, 336], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 325, "executed_branches": [], "missing_branches": []}, "TestF1Score.test_weighted_averaging": {"executed_lines": [342, 343, 348, 349], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 338, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 2, 4, 5, 6, 7, 10, 11, 12, 26, 27, 39, 47, 56, 72, 87, 99, 113, 127, 154, 170, 193, 207, 222, 237, 255, 266, 278, 291, 299, 303, 312, 325, 338], "summary": {"covered_lines": 34, "num_statements": 34, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"TestF1Score": {"executed_lines": [13, 28, 41, 42, 43, 44, 45, 49, 53, 54, 58, 61, 64, 65, 68, 69, 70, 74, 75, 82, 83, 84, 85, 89, 90, 96, 97, 101, 103, 104, 110, 111, 115, 117, 118, 124, 125, 129, 134, 138, 144, 145, 151, 152, 173, 180, 185, 186, 191, 195, 201, 202, 205, 211, 212, 218, 219, 220, 226, 227, 233, 234, 235, 241, 242, 249, 250, 251, 252, 253, 257, 258, 263, 264, 268, 269, 275, 276, 282, 283, 288, 289, 293, 296, 297, 305, 306, 309, 310, 316, 317, 322, 323, 329, 330, 335, 336, 342, 343, 348, 349], "summary": {"covered_lines": 101, "num_statements": 101, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 10, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 2, 4, 5, 6, 7, 10, 11, 12, 26, 27, 39, 47, 56, 72, 87, 99, 113, 127, 154, 170, 193, 207, 222, 237, 255, 266, 278, 291, 299, 303, 312, 325, 338], "summary": {"covered_lines": 34, "num_statements": 34, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\metrics\\test_mean_average_precision.py": {"executed_lines": [1, 3, 4, 5, 6, 9, 10, 12, 13, 14, 17, 19, 22, 31, 32, 33, 36, 38, 47, 51, 57, 63, 66, 67, 69, 71, 73, 75, 76, 77, 78, 81, 83, 86, 94, 99, 107, 115, 125, 126, 127, 128, 129, 132, 133, 137, 140, 148, 153, 156, 166, 167, 168, 169, 170, 173, 175, 178, 186, 192, 195, 205, 206, 207, 208, 209, 212, 214, 217, 225, 229, 240, 253, 254, 255, 256, 257, 260, 262, 264, 267, 280, 281, 282, 284, 287, 288, 289, 291, 296, 300, 303, 308, 310, 311, 312, 313, 314, 317, 319, 321, 323, 324, 325, 328, 329, 330, 333, 334, 335], "summary": {"covered_lines": 110, "num_statements": 110, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [[281, 282], [281, 284]], "missing_branches": [], "functions": {"TestMeanAveragePrecision.test_single_perfect_detection": {"executed_lines": [12, 13, 14, 17], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 10, "executed_branches": [], "missing_branches": []}, "TestMeanAveragePrecision.test_multiple_perfect_detections": {"executed_lines": [22, 31, 32, 33, 36], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 19, "executed_branches": [], "missing_branches": []}, "TestMeanAveragePrecision.test_perfect_non_square_oriented_boxes_get_full_map": {"executed_lines": [47, 51, 57, 63, 66, 67, 69], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 38, "executed_branches": [], "missing_branches": []}, "TestMeanAveragePrecision.test_batch_updates_perfect_detections": {"executed_lines": [73, 75, 76, 77, 78, 81], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 71, "executed_branches": [], "missing_branches": []}, "TestMeanAveragePrecision.test_scenario_1_success_case_imperfect_match": {"executed_lines": [86, 94, 99, 107, 115, 125, 126, 127, 128, 129, 132, 133], "summary": {"covered_lines": 12, "num_statements": 12, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 83, "executed_branches": [], "missing_branches": []}, "TestMeanAveragePrecision.test_scenario_2_missed_detection": {"executed_lines": [140, 148, 153, 156, 166, 167, 168, 169, 170, 173], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 137, "executed_branches": [], "missing_branches": []}, "TestMeanAveragePrecision.test_scenario_3_false_positive": {"executed_lines": [178, 186, 192, 195, 205, 206, 207, 208, 209, 212], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 175, "executed_branches": [], "missing_branches": []}, "TestMeanAveragePrecision.test_scenario_4_no_data": {"executed_lines": [217, 225, 229, 240, 253, 254, 255, 256, 257, 260, 262], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 214, "executed_branches": [], "missing_branches": []}, "TestMeanAveragePrecision.test_scenario_5_only_one_class_present": {"executed_lines": [267, 280, 281, 282, 284, 287, 288, 289], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 264, "executed_branches": [[281, 282], [281, 284]], "missing_branches": []}, "TestMeanAveragePrecision.test_mixed_classes_with_missing_detections": {"executed_lines": [296, 300, 303, 308, 310, 311, 312, 313, 314, 317, 319], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 291, "executed_branches": [], "missing_branches": []}, "TestMeanAveragePrecision.test_empty_predictions_and_targets": {"executed_lines": [323, 324, 325, 328, 329, 330, 333, 334, 335], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 321, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 5, 6, 9, 10, 19, 38, 71, 83, 137, 175, 214, 264, 291, 321], "summary": {"covered_lines": 17, "num_statements": 17, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"TestMeanAveragePrecision": {"executed_lines": [12, 13, 14, 17, 22, 31, 32, 33, 36, 47, 51, 57, 63, 66, 67, 69, 73, 75, 76, 77, 78, 81, 86, 94, 99, 107, 115, 125, 126, 127, 128, 129, 132, 133, 140, 148, 153, 156, 166, 167, 168, 169, 170, 173, 178, 186, 192, 195, 205, 206, 207, 208, 209, 212, 217, 225, 229, 240, 253, 254, 255, 256, 257, 260, 262, 267, 280, 281, 282, 284, 287, 288, 289, 296, 300, 303, 308, 310, 311, 312, 313, 314, 317, 319, 323, 324, 325, 328, 329, 330, 333, 334, 335], "summary": {"covered_lines": 93, "num_statements": 93, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 9, "executed_branches": [[281, 282], [281, 284]], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 5, 6, 9, 10, 19, 38, 71, 83, 137, 175, 214, 264, 291, 321], "summary": {"covered_lines": 17, "num_statements": 17, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\metrics\\test_mean_average_precision_area.py": {"executed_lines": [1, 3, 4, 6, 7, 10, 13, 45, 49, 53, 59, 60, 63, 64, 65, 70, 72, 73, 77, 81, 82, 86, 90, 91, 95, 99, 101, 108, 110, 115, 117, 118, 120, 121, 123, 128, 129], "summary": {"covered_lines": 37, "num_statements": 37, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 6, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [[72, 73], [72, 77], [81, 82], [81, 86], [90, 91], [90, 95]], "missing_branches": [], "functions": {"TestMeanAveragePrecisionArea.test_area_calculation_and_size_specific_map": {"executed_lines": [49, 53, 59, 60, 63, 64, 65, 70, 72, 73, 77, 81, 82, 86, 90, 91, 95], "summary": {"covered_lines": 17, "num_statements": 17, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 6, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 45, "executed_branches": [[72, 73], [72, 77], [81, 82], [81, 86], [90, 91], [90, 95]], "missing_branches": []}, "TestMeanAveragePrecisionArea.test_area_preserved_from_data": {"executed_lines": [101, 108, 110, 115, 117, 118, 120, 121, 123, 128, 129], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 99, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 6, 7, 10, 13, 45, 99], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"TestMeanAveragePrecisionArea": {"executed_lines": [49, 53, 59, 60, 63, 64, 65, 70, 72, 73, 77, 81, 82, 86, 90, 91, 95, 101, 108, 110, 115, 117, 118, 120, 121, 123, 128, 129], "summary": {"covered_lines": 28, "num_statements": 28, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 6, "num_partial_branches": 0, "covered_branches": 6, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 10, "executed_branches": [[72, 73], [72, 77], [81, 82], [81, 86], [90, 91], [90, 95]], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 6, 7, 10, 13, 45, 99], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\metrics\\test_mean_average_recall.py": {"executed_lines": [1, 2, 4, 5, 8, 9, 16, 146, 147, 156, 285, 286, 298, 309, 322, 325, 326, 338, 348, 359, 362, 364, 369, 370, 371, 374, 375, 378, 383, 384, 393, 394, 396, 397, 398, 401, 403, 406, 435, 437, 438, 439, 442, 443, 444, 448, 449, 450, 454, 461, 485, 487, 488, 489, 492, 493, 497, 498, 502, 508, 522, 524, 525, 528, 534, 535, 538, 539, 541, 542, 545, 546, 548, 549, 552, 553, 555, 566, 567, 568, 571, 574, 575, 576, 579, 580, 583, 587], "summary": {"covered_lines": 88, "num_statements": 89, "percent_covered": 97.84946236559139, "percent_covered_display": "98", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 98.87640449438203, "percent_statements_covered_display": "99", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [563], "excluded_lines": [], "executed_branches": [[541, 542], [541, 566], [545, 546]], "missing_branches": [[545, 563]], "functions": {"complex_scenario_targets": {"executed_lines": [16], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 9, "executed_branches": [], "missing_branches": []}, "complex_scenario_predictions": {"executed_lines": [156], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 147, "executed_branches": [], "missing_branches": []}, "two_class_two_image_detections": {"executed_lines": [298, 309, 322], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 286, "executed_branches": [], "missing_branches": []}, "three_class_single_image_detections": {"executed_lines": [338, 348, 359], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 326, "executed_branches": [], "missing_branches": []}, "test_single_perfect_detection": {"executed_lines": [364, 369, 370, 371, 374, 375], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 362, "executed_branches": [], "missing_branches": []}, "test_complex_integration_scenario": {"executed_lines": [383, 393, 394, 396, 397, 398, 401, 403], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 378, "executed_branches": [], "missing_branches": []}, "test_complex_integration_scenario.mock_detections_list": {"executed_lines": [384], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 383, "executed_branches": [], "missing_branches": []}, "test_mar_at_k_limits_per_image_not_per_class": {"executed_lines": [435, 437, 438, 439, 442, 443, 444, 448, 449, 450, 454], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 406, "executed_branches": [], "missing_branches": []}, "test_three_class_single_image_scenario": {"executed_lines": [485, 487, 488, 489, 492, 493, 497, 498, 502], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 461, "executed_branches": [], "missing_branches": []}, "test_dataset_split_integration": {"executed_lines": [522, 524, 525, 528, 534, 535, 538, 539, 541, 542, 545, 546, 548, 549, 552, 553, 555, 566, 567, 568, 571, 574, 575, 576, 579, 580, 583, 587], "summary": {"covered_lines": 28, "num_statements": 29, "percent_covered": 93.93939393939394, "percent_covered_display": "94", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 96.55172413793103, "percent_statements_covered_display": "97", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [563], "excluded_lines": [], "start_line": 508, "executed_branches": [[541, 542], [541, 566], [545, 546]], "missing_branches": [[545, 563]]}, "": {"executed_lines": [1, 2, 4, 5, 8, 9, 146, 147, 285, 286, 325, 326, 362, 378, 406, 461, 508], "summary": {"covered_lines": 17, "num_statements": 17, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 2, 4, 5, 8, 9, 16, 146, 147, 156, 285, 286, 298, 309, 322, 325, 326, 338, 348, 359, 362, 364, 369, 370, 371, 374, 375, 378, 383, 384, 393, 394, 396, 397, 398, 401, 403, 406, 435, 437, 438, 439, 442, 443, 444, 448, 449, 450, 454, 461, 485, 487, 488, 489, 492, 493, 497, 498, 502, 508, 522, 524, 525, 528, 534, 535, 538, 539, 541, 542, 545, 546, 548, 549, 552, 553, 555, 566, 567, 568, 571, 574, 575, 576, 579, 580, 583, 587], "summary": {"covered_lines": 88, "num_statements": 89, "percent_covered": 97.84946236559139, "percent_covered_display": "98", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 98.87640449438203, "percent_statements_covered_display": "99", "num_branches": 4, "num_partial_branches": 1, "covered_branches": 3, "missing_branches": 1, "percent_branches_covered": 75.0, "percent_branches_covered_display": "75"}, "missing_lines": [563], "excluded_lines": [], "start_line": 1, "executed_branches": [[541, 542], [541, 566], [545, 546]], "missing_branches": [[545, 563]]}}}, "tests\\metrics\\test_oriented_bounding_box_metrics.py": {"executed_lines": [1, 2, 4, 5, 6, 7, 8, 9, 10, 11, 14, 15, 19, 27, 36, 41, 42, 44, 45, 47, 50, 57, 58, 60, 61, 63], "summary": {"covered_lines": 26, "num_statements": 26, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"_non_square_obb_detections": {"executed_lines": [15, 19], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 14, "executed_branches": [], "missing_branches": []}, "test_perfect_non_square_oriented_boxes_score_as_perfect": {"executed_lines": [41, 42, 44, 45, 47], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 36, "executed_branches": [], "missing_branches": []}, "test_mean_average_precision_accepts_obb_metric_target": {"executed_lines": [57, 58, 60, 61, 63], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 50, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 2, 4, 5, 6, 7, 8, 9, 10, 11, 14, 27, 36, 50], "summary": {"covered_lines": 14, "num_statements": 14, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 2, 4, 5, 6, 7, 8, 9, 10, 11, 14, 15, 19, 27, 36, 41, 42, 44, 45, 47, 50, 57, 58, 60, 61, 63], "summary": {"covered_lines": 26, "num_statements": 26, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\metrics\\test_precision.py": {"executed_lines": [1, 2, 4, 5, 6, 9, 10, 11, 12, 25, 26, 27, 39, 41, 42, 43, 44, 45, 47, 49, 53, 54, 56, 58, 61, 64, 65, 68, 69, 70, 72, 74, 75, 80, 81, 82, 83, 85, 87, 88, 92, 93, 95, 97, 99, 100, 103, 104, 106, 108, 110, 111, 115, 116, 118, 120, 125, 129, 135, 136, 142, 143, 145, 161, 164, 171, 176, 177, 182, 184, 186, 192, 193, 196, 198, 200, 201, 205, 206, 208, 212, 213, 221, 222, 223, 224, 225, 227, 229, 230, 234, 235, 237, 239, 240, 244, 246, 250, 251, 256, 257, 259, 261, 264, 265, 267, 271, 273, 274, 277, 278], "summary": {"covered_lines": 111, "num_statements": 111, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"TestPrecision.predictions_multiple_classes": {"executed_lines": [12], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 11, "executed_branches": [], "missing_branches": []}, "TestPrecision.targets_multiple_classes": {"executed_lines": [27], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 26, "executed_branches": [], "missing_branches": []}, "TestPrecision.test_initialization_default": {"executed_lines": [41, 42, 43, 44, 45], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 39, "executed_branches": [], "missing_branches": []}, "TestPrecision.test_initialization_custom": {"executed_lines": [49, 53, 54], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 47, "executed_branches": [], "missing_branches": []}, "TestPrecision.test_reset": {"executed_lines": [58, 61, 64, 65, 68, 69, 70], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 56, "executed_branches": [], "missing_branches": []}, "TestPrecision.test_perfect_match": {"executed_lines": [74, 75, 80, 81, 82, 83], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 72, "executed_branches": [], "missing_branches": []}, "TestPrecision.test_no_overlap": {"executed_lines": [87, 88, 92, 93], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 85, "executed_branches": [], "missing_branches": []}, "TestPrecision.test_empty_predictions": {"executed_lines": [97, 99, 100, 103, 104], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 95, "executed_branches": [], "missing_branches": []}, "TestPrecision.test_empty_targets": {"executed_lines": [108, 110, 111, 115, 116], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 106, "executed_branches": [], "missing_branches": []}, "TestPrecision.test_false_positives_on_background_image_counted": {"executed_lines": [120, 125, 129, 135, 136, 142, 143], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 118, "executed_branches": [], "missing_branches": []}, "TestPrecision.test_false_positives_of_absent_class_counted": {"executed_lines": [164, 171, 176, 177, 182], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 161, "executed_branches": [], "missing_branches": []}, "TestPrecision.test_false_positives_on_background_image_weighted_returns_zero": {"executed_lines": [186, 192, 193, 196], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 184, "executed_branches": [], "missing_branches": []}, "TestPrecision.test_single_class": {"executed_lines": [200, 201, 205, 206], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 198, "executed_branches": [], "missing_branches": []}, "TestPrecision.test_multiple_classes": {"executed_lines": [212, 213, 221, 222, 223, 224, 225], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 208, "executed_branches": [], "missing_branches": []}, "TestPrecision.test_different_iou_thresholds": {"executed_lines": [229, 230, 234, 235], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 227, "executed_branches": [], "missing_branches": []}, "TestPrecision.test_confidence_ranking": {"executed_lines": [239, 240, 244], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 237, "executed_branches": [], "missing_branches": []}, "TestPrecision.test_list_inputs": {"executed_lines": [250, 251, 256, 257], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 246, "executed_branches": [], "missing_branches": []}, "TestPrecision.test_mismatched_list_lengths": {"executed_lines": [261, 264, 265], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 259, "executed_branches": [], "missing_branches": []}, "TestPrecision.test_averaging_methods": {"executed_lines": [273, 274, 277, 278], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 271, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 2, 4, 5, 6, 9, 10, 11, 25, 26, 39, 47, 56, 72, 85, 95, 106, 118, 145, 161, 184, 198, 208, 227, 237, 246, 259, 267, 271], "summary": {"covered_lines": 29, "num_statements": 29, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"TestPrecision": {"executed_lines": [12, 27, 41, 42, 43, 44, 45, 49, 53, 54, 58, 61, 64, 65, 68, 69, 70, 74, 75, 80, 81, 82, 83, 87, 88, 92, 93, 97, 99, 100, 103, 104, 108, 110, 111, 115, 116, 120, 125, 129, 135, 136, 142, 143, 164, 171, 176, 177, 182, 186, 192, 193, 196, 200, 201, 205, 206, 212, 213, 221, 222, 223, 224, 225, 229, 230, 234, 235, 239, 240, 244, 250, 251, 256, 257, 261, 264, 265, 273, 274, 277, 278], "summary": {"covered_lines": 82, "num_statements": 82, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 9, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 2, 4, 5, 6, 9, 10, 11, 25, 26, 39, 47, 56, 72, 85, 95, 106, 118, 145, 161, 184, 198, 208, 227, 237, 246, 259, 267, 271], "summary": {"covered_lines": 29, "num_statements": 29, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\metrics\\test_recall.py": {"executed_lines": [1, 2, 4, 5, 6, 7, 10, 11, 12, 13, 25, 26, 27, 39, 41, 42, 43, 44, 45, 47, 49, 53, 54, 56, 58, 61, 64, 65, 68, 69, 70, 72, 74, 75, 79, 80, 81, 82, 84, 86, 87, 91, 92, 94, 96, 98, 99, 102, 103, 105, 107, 109, 110, 113, 114, 116, 120, 121, 125, 126, 128, 132, 133, 140, 141, 142, 143, 144, 145, 147, 149, 150, 154, 155, 157, 159, 160, 164, 166, 170, 171, 175, 177, 181, 182, 187, 188, 190, 192, 195, 196, 198, 202, 204, 205, 208, 209, 211, 217, 229, 241, 242, 245], "summary": {"covered_lines": 103, "num_statements": 103, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"TestRecall.predictions_multiple_classes": {"executed_lines": [13], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 12, "executed_branches": [], "missing_branches": []}, "TestRecall.targets_multiple_classes": {"executed_lines": [27], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 26, "executed_branches": [], "missing_branches": []}, "TestRecall.test_initialization_default": {"executed_lines": [41, 42, 43, 44, 45], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 39, "executed_branches": [], "missing_branches": []}, "TestRecall.test_initialization_custom": {"executed_lines": [49, 53, 54], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 47, "executed_branches": [], "missing_branches": []}, "TestRecall.test_reset": {"executed_lines": [58, 61, 64, 65, 68, 69, 70], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 56, "executed_branches": [], "missing_branches": []}, "TestRecall.test_perfect_match": {"executed_lines": [74, 75, 79, 80, 81, 82], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 72, "executed_branches": [], "missing_branches": []}, "TestRecall.test_no_overlap": {"executed_lines": [86, 87, 91, 92], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 84, "executed_branches": [], "missing_branches": []}, "TestRecall.test_empty_predictions": {"executed_lines": [96, 98, 99, 102, 103], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 94, "executed_branches": [], "missing_branches": []}, "TestRecall.test_empty_targets": {"executed_lines": [107, 109, 110, 113, 114], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 105, "executed_branches": [], "missing_branches": []}, "TestRecall.test_single_class_missed_detections": {"executed_lines": [120, 121, 125, 126], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 116, "executed_branches": [], "missing_branches": []}, "TestRecall.test_multiple_classes": {"executed_lines": [132, 133, 140, 141, 142, 143, 144, 145], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 128, "executed_branches": [], "missing_branches": []}, "TestRecall.test_different_iou_thresholds": {"executed_lines": [149, 150, 154, 155], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 147, "executed_branches": [], "missing_branches": []}, "TestRecall.test_confidence_ranking": {"executed_lines": [159, 160, 164], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 157, "executed_branches": [], "missing_branches": []}, "TestRecall.test_multiple_predictions_one_target": {"executed_lines": [170, 171, 175], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 166, "executed_branches": [], "missing_branches": []}, "TestRecall.test_list_inputs": {"executed_lines": [181, 182, 187, 188], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 177, "executed_branches": [], "missing_branches": []}, "TestRecall.test_mismatched_list_lengths": {"executed_lines": [192, 195, 196], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 190, "executed_branches": [], "missing_branches": []}, "TestRecall.test_averaging_methods": {"executed_lines": [204, 205, 208, 209], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 202, "executed_branches": [], "missing_branches": []}, "TestRecall.test_macro_averaging": {"executed_lines": [217, 229, 241, 242, 245], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 211, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 2, 4, 5, 6, 7, 10, 11, 12, 25, 26, 39, 47, 56, 72, 84, 94, 105, 116, 128, 147, 157, 166, 177, 190, 198, 202, 211], "summary": {"covered_lines": 28, "num_statements": 28, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"TestRecall": {"executed_lines": [13, 27, 41, 42, 43, 44, 45, 49, 53, 54, 58, 61, 64, 65, 68, 69, 70, 74, 75, 79, 80, 81, 82, 86, 87, 91, 92, 96, 98, 99, 102, 103, 107, 109, 110, 113, 114, 120, 121, 125, 126, 132, 133, 140, 141, 142, 143, 144, 145, 149, 150, 154, 155, 159, 160, 164, 170, 171, 175, 181, 182, 187, 188, 192, 195, 196, 204, 205, 208, 209, 217, 229, 241, 242, 245], "summary": {"covered_lines": 75, "num_statements": 75, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 10, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 2, 4, 5, 6, 7, 10, 11, 12, 25, 26, 39, 47, 56, 72, 84, 94, 105, 116, 128, 147, 157, 166, 177, 190, 198, 202, 211], "summary": {"covered_lines": 28, "num_statements": 28, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\test_validate_deprecations.py": {"executed_lines": [1, 3, 4, 6, 7, 9, 10, 11, 12, 13, 14, 33, 34, 41, 97, 98, 99, 102, 103, 104, 105, 106, 114, 116, 119], "summary": {"covered_lines": 25, "num_statements": 25, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"_detections": {"executed_lines": [34], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 33, "executed_branches": [], "missing_branches": []}, "test_validate_public_shims_warn": {"executed_lines": [98, 99], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 97, "executed_branches": [], "missing_branches": []}, "test_private_validation_paths_do_not_warn": {"executed_lines": [103, 104, 105, 106, 114, 116, 119], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 102, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 6, 7, 9, 10, 11, 12, 13, 14, 33, 41, 97, 102], "summary": {"covered_lines": 15, "num_statements": 15, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 3, 4, 6, 7, 9, 10, 11, 12, 13, 14, 33, 34, 41, 97, 98, 99, 102, 103, 104, 105, 106, 114, 116, 119], "summary": {"covered_lines": 25, "num_statements": 25, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\tracker\\__init__.py": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\tracker\\test_byte_tracker.py": {"executed_lines": [1, 2, 4, 7, 32, 36, 37, 38, 41, 42, 43, 51, 59, 61, 62, 63], "summary": {"covered_lines": 16, "num_statements": 16, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"test_byte_tracker": {"executed_lines": [36, 37, 38], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 32, "executed_branches": [], "missing_branches": []}, "test_byte_tracker_does_not_skip_external_ids_for_short_lived_tracks": {"executed_lines": [42, 51, 59, 61, 62, 63], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 41, "executed_branches": [], "missing_branches": []}, "test_byte_tracker_does_not_skip_external_ids_for_short_lived_tracks.detections_from_boxes": {"executed_lines": [43], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 42, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 2, 4, 7, 32, 41], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 2, 4, 7, 32, 36, 37, 38, 41, 42, 43, 51, 59, 61, 62, 63], "summary": {"covered_lines": 16, "num_statements": 16, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\utils\\__init__.py": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\utils\\conftest.py": {"executed_lines": [1, 3, 4, 5, 6, 8, 9, 12, 13, 14, 17, 18, 19, 22, 23, 27, 28, 32, 33, 37, 38, 42, 43, 47, 48, 52, 53, 57, 58, 62, 63, 67, 68, 72, 73, 77, 78, 82, 83, 87, 88, 94, 95], "summary": {"covered_lines": 43, "num_statements": 58, "percent_covered": 74.13793103448276, "percent_covered_display": "74", "missing_lines": 15, "excluded_lines": 0, "percent_statements_covered": 74.13793103448276, "percent_statements_covered_display": "74", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [24, 29, 34, 39, 44, 49, 54, 59, 64, 69, 74, 79, 84, 89, 96], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"empty_cv2_image": {"executed_lines": [14], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 13, "executed_branches": [], "missing_branches": []}, "empty_pillow_image": {"executed_lines": [19], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 18, "executed_branches": [], "missing_branches": []}, "all_images": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [24], "excluded_lines": [], "start_line": 23, "executed_branches": [], "missing_branches": []}, "one_image": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [29], "excluded_lines": [], "start_line": 28, "executed_branches": [], "missing_branches": []}, "two_images": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [34], "excluded_lines": [], "start_line": 33, "executed_branches": [], "missing_branches": []}, "three_images": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [39], "excluded_lines": [], "start_line": 38, "executed_branches": [], "missing_branches": []}, "four_images": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [44], "excluded_lines": [], "start_line": 43, "executed_branches": [], "missing_branches": []}, "all_images_tile": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [49], "excluded_lines": [], "start_line": 48, "executed_branches": [], "missing_branches": []}, "all_images_tile_and_custom_colors": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [54], "excluded_lines": [], "start_line": 53, "executed_branches": [], "missing_branches": []}, "all_images_tile_and_custom_grid": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [59], "excluded_lines": [], "start_line": 58, "executed_branches": [], "missing_branches": []}, "four_images_tile": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [64], "excluded_lines": [], "start_line": 63, "executed_branches": [], "missing_branches": []}, "single_image_tile": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [69], "excluded_lines": [], "start_line": 68, "executed_branches": [], "missing_branches": []}, "single_image_tile_enforced_grid": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [74], "excluded_lines": [], "start_line": 73, "executed_branches": [], "missing_branches": []}, "three_images_tile": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [79], "excluded_lines": [], "start_line": 78, "executed_branches": [], "missing_branches": []}, "two_images_tile": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [84], "excluded_lines": [], "start_line": 83, "executed_branches": [], "missing_branches": []}, "all_images_tile_and_custom_colors_and_titles": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [89], "excluded_lines": [], "start_line": 88, "executed_branches": [], "missing_branches": []}, "all_images_tile_and_titles_with_custom_configs": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [96], "excluded_lines": [], "start_line": 95, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 5, 6, 8, 9, 12, 13, 17, 18, 22, 23, 27, 28, 32, 33, 37, 38, 42, 43, 47, 48, 52, 53, 57, 58, 62, 63, 67, 68, 72, 73, 77, 78, 82, 83, 87, 88, 94, 95], "summary": {"covered_lines": 41, "num_statements": 41, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 3, 4, 5, 6, 8, 9, 12, 13, 14, 17, 18, 19, 22, 23, 27, 28, 32, 33, 37, 38, 42, 43, 47, 48, 52, 53, 57, 58, 62, 63, 67, 68, 72, 73, 77, 78, 82, 83, 87, 88, 94, 95], "summary": {"covered_lines": 43, "num_statements": 58, "percent_covered": 74.13793103448276, "percent_covered_display": "74", "missing_lines": 15, "excluded_lines": 0, "percent_statements_covered": 74.13793103448276, "percent_statements_covered_display": "74", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [24, 29, 34, 39, 44, 49, 54, 59, 64, 69, 74, 79, 84, 89, 96], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\utils\\test_conversion.py": {"executed_lines": [1, 2, 4, 12, 16, 17, 19, 20, 25, 28, 31, 34, 37, 44, 45, 51, 55, 56, 58, 59, 64, 67, 70, 73, 76, 83, 86, 90, 93, 94, 99, 103, 106, 111, 113, 116, 119, 123, 126, 129, 130, 131, 136, 141, 144, 147, 148, 149, 154, 159, 162, 165, 166, 169], "summary": {"covered_lines": 54, "num_statements": 54, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [[130, -119], [130, 131], [148, -136], [148, 149]], "missing_branches": [], "functions": {"test_ensure_cv2_image_for_processing_when_pillow_image_submitted": {"executed_lines": [16, 17, 19, 20, 37, 44, 45], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 12, "executed_branches": [], "missing_branches": []}, "test_ensure_cv2_image_for_processing_when_pillow_image_submitted.my_custom_processing_function": {"executed_lines": [25, 28, 31, 34], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 20, "executed_branches": [], "missing_branches": []}, "test_ensure_cv2_image_for_processing_when_cv2_image_submitted": {"executed_lines": [55, 56, 58, 59, 76, 83], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 51, "executed_branches": [], "missing_branches": []}, "test_ensure_cv2_image_for_processing_when_cv2_image_submitted.my_custom_processing_function": {"executed_lines": [64, 67, 70, 73], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 59, "executed_branches": [], "missing_branches": []}, "test_cv2_to_pillow": {"executed_lines": [90, 93, 94], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 86, "executed_branches": [], "missing_branches": []}, "test_pillow_to_cv2": {"executed_lines": [103, 106], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 99, "executed_branches": [], "missing_branches": []}, "test_images_to_cv2_when_empty_input_provided": {"executed_lines": [113, 116], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 111, "executed_branches": [], "missing_branches": []}, "test_images_to_cv2_when_only_cv2_images_provided": {"executed_lines": [123, 126, 129, 130, 131], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 119, "executed_branches": [[130, -119], [130, 131]], "missing_branches": []}, "test_images_to_cv2_when_only_pillow_images_provided": {"executed_lines": [141, 144, 147, 148, 149], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 136, "executed_branches": [[148, -136], [148, 149]], "missing_branches": []}, "test_images_to_cv2_when_mixed_input_provided": {"executed_lines": [159, 162, 165, 166, 169], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 154, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 2, 4, 12, 51, 86, 99, 111, 119, 136, 154], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 2, 4, 12, 16, 17, 19, 20, 25, 28, 31, 34, 37, 44, 45, 51, 55, 56, 58, 59, 64, 67, 70, 73, 76, 83, 86, 90, 93, 94, 99, 103, 106, 111, 113, 116, 119, 123, 126, 129, 130, 131, 136, 141, 144, 147, 148, 149, 154, 159, 162, 165, 166, 169], "summary": {"covered_lines": 54, "num_statements": 54, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 4, "num_partial_branches": 0, "covered_branches": 4, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [[130, -119], [130, 131], [148, -136], [148, 149]], "missing_branches": []}}}, "tests\\utils\\test_file.py": {"executed_lines": [1, 3, 4, 5, 7, 9, 11, 16, 22, 30, 31, 32, 33, 34, 35, 36, 37, 39, 41, 42, 43, 46, 62, 68, 69, 70, 73, 94, 101, 102, 104, 106], "summary": {"covered_lines": 32, "num_statements": 32, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [[101, 102], [101, 104]], "missing_branches": [], "functions": {"setup_and_teardown_files": {"executed_lines": [32, 33, 34, 35, 36, 37, 39, 41, 42, 43], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 31, "executed_branches": [], "missing_branches": []}, "test_read_txt_file": {"executed_lines": [68, 69, 70], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 62, "executed_branches": [], "missing_branches": []}, "test_list_files_with_extensions_normalization": {"executed_lines": [101, 102, 104, 106], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 94, "executed_branches": [[101, 102], [101, 104]], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 5, 7, 9, 11, 16, 22, 30, 31, 46, 62, 73, 94], "summary": {"covered_lines": 15, "num_statements": 15, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 3, 4, 5, 7, 9, 11, 16, 22, 30, 31, 32, 33, 34, 35, 36, 37, 39, 41, 42, 43, 46, 62, 68, 69, 70, 73, 94, 101, 102, 104, 106], "summary": {"covered_lines": 32, "num_statements": 32, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [[101, 102], [101, 104]], "missing_branches": []}}}, "tests\\utils\\test_image.py": {"executed_lines": [1, 2, 3, 5, 13, 15, 16, 19, 26, 31, 33, 34, 37, 44, 45, 46, 51, 53, 54, 64, 69, 75, 76, 77, 86, 88, 89, 92, 95, 96, 97, 100, 103, 104, 105, 106, 107, 110, 112, 113, 125, 130, 134, 135, 140, 169, 170, 171, 172, 173, 174, 176, 177, 180, 193, 194, 195], "summary": {"covered_lines": 57, "num_statements": 57, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [[171, 172], [171, 176]], "missing_branches": [], "functions": {"test_resize_image_for_opencv_image": {"executed_lines": [15, 16, 19, 26], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 13, "executed_branches": [], "missing_branches": []}, "test_resize_image_for_pillow_image": {"executed_lines": [33, 34, 37, 44, 45, 46], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 31, "executed_branches": [], "missing_branches": []}, "test_letterbox_image_for_opencv_image": {"executed_lines": [53, 54, 64, 69], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 51, "executed_branches": [], "missing_branches": []}, "test_letterbox_image_for_grayscale_opencv_image": {"executed_lines": [76, 77, 86, 88, 89], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 75, "executed_branches": [], "missing_branches": []}, "test_letterbox_image_for_rgba_opencv_image": {"executed_lines": [95, 96, 97, 100, 103, 104, 105, 106, 107], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 92, "executed_branches": [], "missing_branches": []}, "test_letterbox_image_for_pillow_image": {"executed_lines": [112, 113, 125, 130, 134, 135], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 110, "executed_branches": [], "missing_branches": []}, "test_crop_image": {"executed_lines": [170, 171, 172, 173, 174, 176, 177], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 169, "executed_branches": [[171, 172], [171, 176]], "missing_branches": []}, "test_get_image_resolution_wh": {"executed_lines": [194, 195], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 193, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 2, 3, 5, 13, 31, 51, 75, 92, 110, 140, 169, 180, 193], "summary": {"covered_lines": 14, "num_statements": 14, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 2, 3, 5, 13, 15, 16, 19, 26, 31, 33, 34, 37, 44, 45, 46, 51, 53, 54, 64, 69, 75, 76, 77, 86, 88, 89, 92, 95, 96, 97, 100, 103, 104, 105, 106, 107, 110, 112, 113, 125, 130, 134, 135, 140, 169, 170, 171, 172, 173, 174, 176, 177, 180, 193, 194, 195], "summary": {"covered_lines": 57, "num_statements": 57, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [[171, 172], [171, 176]], "missing_branches": []}}}, "tests\\utils\\test_internal.py": {"executed_lines": [1, 2, 3, 5, 6, 8, 9, 12, 13, 14, 15, 16, 18, 21, 24, 27, 28, 29, 31, 32, 33, 35, 36, 37, 40, 41, 42, 43, 44, 46, 47, 48, 50, 51, 52, 54, 57, 60, 63, 64, 65, 67, 68, 69, 71, 72, 73, 76, 189, 195, 196, 199], "summary": {"covered_lines": 52, "num_statements": 58, "percent_covered": 89.65517241379311, "percent_covered_display": "90", "missing_lines": 6, "excluded_lines": 0, "percent_statements_covered": 89.65517241379311, "percent_statements_covered_display": "90", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [19, 22, 25, 55, 58, 61], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"MockClass.__init__": {"executed_lines": [14, 15, 16], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 13, "executed_branches": [], "missing_branches": []}, "MockClass.public_method": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [19], "excluded_lines": [], "start_line": 18, "executed_branches": [], "missing_branches": []}, "MockClass._protected_method": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [22], "excluded_lines": [], "start_line": 21, "executed_branches": [], "missing_branches": []}, "MockClass.__private_method": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [25], "excluded_lines": [], "start_line": 24, "executed_branches": [], "missing_branches": []}, "MockClass.public_property": {"executed_lines": [29], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 28, "executed_branches": [], "missing_branches": []}, "MockClass._protected_property": {"executed_lines": [33], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 32, "executed_branches": [], "missing_branches": []}, "MockClass.__private_property": {"executed_lines": [37], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 36, "executed_branches": [], "missing_branches": []}, "MockDataclass.public_method": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [55], "excluded_lines": [], "start_line": 54, "executed_branches": [], "missing_branches": []}, "MockDataclass._protected_method": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [58], "excluded_lines": [], "start_line": 57, "executed_branches": [], "missing_branches": []}, "MockDataclass.__private_method": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0, "percent_statements_covered": 0.0, "percent_statements_covered_display": "0", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [61], "excluded_lines": [], "start_line": 60, "executed_branches": [], "missing_branches": []}, "MockDataclass.public_property": {"executed_lines": [65], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 64, "executed_branches": [], "missing_branches": []}, "MockDataclass._protected_property": {"executed_lines": [69], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 68, "executed_branches": [], "missing_branches": []}, "MockDataclass.__private_property": {"executed_lines": [73], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 72, "executed_branches": [], "missing_branches": []}, "test_get_instance_variables": {"executed_lines": [195, 196, 199], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 189, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 2, 3, 5, 6, 8, 9, 12, 13, 18, 21, 24, 27, 28, 31, 32, 35, 36, 40, 41, 42, 43, 44, 46, 47, 48, 50, 51, 52, 54, 57, 60, 63, 64, 67, 68, 71, 72, 76, 189], "summary": {"covered_lines": 40, "num_statements": 40, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"MockClass": {"executed_lines": [14, 15, 16, 29, 33, 37], "summary": {"covered_lines": 6, "num_statements": 9, "percent_covered": 66.66666666666667, "percent_covered_display": "67", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 66.66666666666667, "percent_statements_covered_display": "67", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [19, 22, 25], "excluded_lines": [], "start_line": 12, "executed_branches": [], "missing_branches": []}, "MockDataclass": {"executed_lines": [65, 69, 73], "summary": {"covered_lines": 3, "num_statements": 6, "percent_covered": 50.0, "percent_covered_display": "50", "missing_lines": 3, "excluded_lines": 0, "percent_statements_covered": 50.0, "percent_statements_covered_display": "50", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [55, 58, 61], "excluded_lines": [], "start_line": 41, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 2, 3, 5, 6, 8, 9, 12, 13, 18, 21, 24, 27, 28, 31, 32, 35, 36, 40, 41, 42, 43, 44, 46, 47, 48, 50, 51, 52, 54, 57, 60, 63, 64, 67, 68, 71, 72, 76, 189, 195, 196, 199], "summary": {"covered_lines": 43, "num_statements": 43, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\utils\\test_iterables.py": {"executed_lines": [1, 3, 6, 21, 22, 23, 26, 41, 42, 43], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"test_create_batches": {"executed_lines": [22, 23], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 21, "executed_branches": [], "missing_branches": []}, "test_fill": {"executed_lines": [42, 43], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 41, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 6, 21, 26, 41], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 3, 6, 21, 22, 23, 26, 41, 42, 43], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\utils\\test_logger.py": {"executed_lines": [1, 3, 4, 5, 7, 10, 11, 13, 14, 16, 18, 19, 21, 23, 25, 26, 28, 30, 31, 33, 35, 36, 37, 39, 41, 42, 43, 45, 47, 48, 50, 52, 53, 58, 60, 62, 63, 68, 70, 72, 73, 75, 77, 78, 79, 80, 81, 82], "summary": {"covered_lines": 48, "num_statements": 48, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [], "missing_branches": [], "functions": {"TestGetLogger.test_default_name": {"executed_lines": [13, 14], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 11, "executed_branches": [], "missing_branches": []}, "TestGetLogger.test_custom_name": {"executed_lines": [18, 19], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 16, "executed_branches": [], "missing_branches": []}, "TestGetLogger.test_default_level_is_info": {"executed_lines": [23, 25, 26], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 21, "executed_branches": [], "missing_branches": []}, "TestGetLogger.test_explicit_level": {"executed_lines": [30, 31], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 28, "executed_branches": [], "missing_branches": []}, "TestGetLogger.test_log_level_env_var": {"executed_lines": [35, 36, 37], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 33, "executed_branches": [], "missing_branches": []}, "TestGetLogger.test_log_level_env_var_warning": {"executed_lines": [41, 42, 43], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 39, "executed_branches": [], "missing_branches": []}, "TestGetLogger.test_two_handlers_configured": {"executed_lines": [47, 48], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 45, "executed_branches": [], "missing_branches": []}, "TestGetLogger.test_stdout_handler_present": {"executed_lines": [52, 53, 58], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 50, "executed_branches": [], "missing_branches": []}, "TestGetLogger.test_stderr_handler_present": {"executed_lines": [62, 63, 68], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 60, "executed_branches": [], "missing_branches": []}, "TestGetLogger.test_no_propagation": {"executed_lines": [72, 73], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 70, "executed_branches": [], "missing_branches": []}, "TestGetLogger.test_idempotent_no_duplicate_handlers": {"executed_lines": [77, 78, 79, 80, 81, 82], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 75, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 5, 7, 10, 11, 16, 21, 28, 33, 39, 45, 50, 60, 70, 75], "summary": {"covered_lines": 17, "num_statements": 17, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"TestGetLogger": {"executed_lines": [13, 14, 18, 19, 23, 25, 26, 30, 31, 35, 36, 37, 41, 42, 43, 47, 48, 52, 53, 58, 62, 63, 68, 72, 73, 77, 78, 79, 80, 81, 82], "summary": {"covered_lines": 31, "num_statements": 31, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 10, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 3, 4, 5, 7, 10, 11, 16, 21, 28, 33, 39, 45, 50, 60, 70, 75], "summary": {"covered_lines": 17, "num_statements": 17, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}}, "tests\\utils\\test_video.py": {"executed_lines": [1, 2, 3, 5, 6, 7, 9, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 29, 37, 39, 40, 41, 42, 44, 45, 52, 60, 62, 63, 66, 70, 73, 80, 82, 83, 84, 85, 87, 88, 97, 105, 106, 108, 109, 110, 112, 119, 120, 123, 131, 133, 134, 137, 145, 148, 156, 157, 158, 159, 160, 161, 162, 165, 173, 175, 176, 177, 178, 180, 182, 183, 184, 185, 188, 196, 197, 198, 199, 200, 203, 211, 212, 213, 216, 224, 226, 227, 233, 238, 246, 248, 249, 254, 257, 273, 277, 278, 279, 281, 285, 287, 290, 292, 293, 295, 296, 297, 299, 304, 306, 307, 310, 318, 319, 320], "summary": {"covered_lines": 115, "num_statements": 115, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 8, "num_partial_branches": 0, "covered_branches": 8, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "executed_branches": [[22, 23], [22, 25], [40, 41], [40, 42], [83, 84], [83, 85], [176, 177], [176, 178]], "missing_branches": [], "functions": {"dummy_video_path": {"executed_lines": [19, 20, 21, 22, 23, 24, 25, 26], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 18, "executed_branches": [[22, 23], [22, 25]], "missing_branches": []}, "test_process_video_exception_handling": {"executed_lines": [37, 39, 44, 45], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 29, "executed_branches": [], "missing_branches": []}, "test_process_video_exception_handling.callback_with_exception": {"executed_lines": [40, 41, 42], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 39, "executed_branches": [[40, 41], [40, 42]], "missing_branches": []}, "test_process_video_success": {"executed_lines": [60, 62, 66, 70], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 52, "executed_branches": [], "missing_branches": []}, "test_process_video_success.callback_success": {"executed_lines": [63], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 62, "executed_branches": [], "missing_branches": []}, "test_process_video_exception_with_small_buffer": {"executed_lines": [80, 82, 87, 88], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 73, "executed_branches": [], "missing_branches": []}, "test_process_video_exception_with_small_buffer.callback_with_exception": {"executed_lines": [83, 84, 85], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 82, "executed_branches": [[83, 84], [83, 85]], "missing_branches": []}, "test_process_video_max_frames": {"executed_lines": [105, 106, 108, 112, 119, 120], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 97, "executed_branches": [], "missing_branches": []}, "test_process_video_max_frames.callback": {"executed_lines": [109, 110], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 108, "executed_branches": [], "missing_branches": []}, "test_process_video_custom_params": {"executed_lines": [131, 133, 137, 145], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 123, "executed_branches": [], "missing_branches": []}, "test_process_video_custom_params.callback": {"executed_lines": [134], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 133, "executed_branches": [], "missing_branches": []}, "test_video_info": {"executed_lines": [156, 157, 158, 159, 160, 161, 162], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 148, "executed_branches": [], "missing_branches": []}, "test_video_info_float_fps": {"executed_lines": [173, 175, 180, 182, 183, 184, 185], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 165, "executed_branches": [], "missing_branches": []}, "test_video_info_float_fps.mocked_get": {"executed_lines": [176, 177, 178], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 2, "num_partial_branches": 0, "covered_branches": 2, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 175, "executed_branches": [[176, 177], [176, 178]], "missing_branches": []}, "test_get_video_frames_generator": {"executed_lines": [196, 197, 198, 199, 200], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 188, "executed_branches": [], "missing_branches": []}, "test_get_video_frames_generator_with_stride": {"executed_lines": [211, 212, 213], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 203, "executed_branches": [], "missing_branches": []}, "test_process_video_preserve_audio_calls_mux": {"executed_lines": [224, 226, 227, 233], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 216, "executed_branches": [], "missing_branches": []}, "test_process_video_no_audio_by_default": {"executed_lines": [246, 248, 249, 254], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 238, "executed_branches": [], "missing_branches": []}, "test_mux_audio_file_unchanged_on_failure": {"executed_lines": [277, 278, 279, 281, 285, 287], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 273, "executed_branches": [], "missing_branches": []}, "test_mux_audio_replaces_file_on_success": {"executed_lines": [292, 293, 295, 296, 297, 299, 304, 306, 307], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 290, "executed_branches": [], "missing_branches": []}, "test_get_video_frames_generator_with_start_end": {"executed_lines": [318, 319, 320], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 310, "executed_branches": [], "missing_branches": []}, "": {"executed_lines": [1, 2, 3, 5, 6, 7, 9, 17, 18, 29, 52, 73, 97, 123, 148, 165, 188, 203, 216, 238, 257, 273, 290, 310], "summary": {"covered_lines": 24, "num_statements": 24, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 0, "num_partial_branches": 0, "covered_branches": 0, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [], "missing_branches": []}}, "classes": {"": {"executed_lines": [1, 2, 3, 5, 6, 7, 9, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 29, 37, 39, 40, 41, 42, 44, 45, 52, 60, 62, 63, 66, 70, 73, 80, 82, 83, 84, 85, 87, 88, 97, 105, 106, 108, 109, 110, 112, 119, 120, 123, 131, 133, 134, 137, 145, 148, 156, 157, 158, 159, 160, 161, 162, 165, 173, 175, 176, 177, 178, 180, 182, 183, 184, 185, 188, 196, 197, 198, 199, 200, 203, 211, 212, 213, 216, 224, 226, 227, 233, 238, 246, 248, 249, 254, 257, 273, 277, 278, 279, 281, 285, 287, 290, 292, 293, 295, 296, 297, 299, 304, 306, 307, 310, 318, 319, 320], "summary": {"covered_lines": 115, "num_statements": 115, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0, "percent_statements_covered": 100.0, "percent_statements_covered_display": "100", "num_branches": 8, "num_partial_branches": 0, "covered_branches": 8, "missing_branches": 0, "percent_branches_covered": 100.0, "percent_branches_covered_display": "100"}, "missing_lines": [], "excluded_lines": [], "start_line": 1, "executed_branches": [[22, 23], [22, 25], [40, 41], [40, 42], [83, 84], [83, 85], [176, 177], [176, 178]], "missing_branches": []}}}}, "totals": {"covered_lines": 13066, "num_statements": 15334, "percent_covered": 81.81333333333333, "percent_covered_display": "82", "missing_lines": 2268, "excluded_lines": 50, "percent_statements_covered": 85.20933872440328, "percent_statements_covered_display": "85", "num_branches": 3416, "num_partial_branches": 430, "covered_branches": 2274, "missing_branches": 1142, "percent_branches_covered": 66.56908665105387, "percent_branches_covered_display": "67"}} \ No newline at end of file diff --git a/metrics-before-pytest/coverage_antes.xml b/metrics-before-pytest/coverage_antes.xml new file mode 100644 index 0000000000..348638eb3f --- /dev/null +++ b/metrics-before-pytest/coverage_antes.xml @@ -0,0 +1,16232 @@ + + + + + + C:\Users\ediva\ufc\manutencao\supervision_refactory + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/metrics-before-pytest/pytest_antes.html b/metrics-before-pytest/pytest_antes.html new file mode 100644 index 0000000000..a4cc2df2f5 --- /dev/null +++ b/metrics-before-pytest/pytest_antes.html @@ -0,0 +1,1094 @@ + + + + + pytest_antes.html + + + + +

pytest_antes.html

+

Report generated on 25-Jun-2026 at 18:53:51 by pytest-html + v4.2.0

+
+

Environment

+
+
+ + + + + +
+
+

Summary

+
+
+

2068 tests took 00:01:10.

+

(Un)check the boxes to filter the results.

+
+ +
+
+
+
+ + 4 Failed, + + 2064 Passed, + + 0 Skipped, + + 0 Expected failures, + + 0 Unexpected passes, + + 0 Errors, + + 0 Reruns + + 0 Retried, +
+
+  /  +
+
+
+
+
+
+
+
+ + + + + + + + + +
ResultTestDurationLinks
+
+
+ +
+ + \ No newline at end of file diff --git a/metrics-before-pytest/pytest_antes.xml b/metrics-before-pytest/pytest_antes.xml new file mode 100644 index 0000000000..9536e5a211 --- /dev/null +++ b/metrics-before-pytest/pytest_antes.xml @@ -0,0 +1,138 @@ +self = <tests.detection.test_compact_mask.TestCompactMaskRoundtripRandom object at 0x000001FBC17BBA10> +seed = 6 + + @pytest.mark.parametrize("seed", list(range(10))) + def test_parity_seed(self, seed: int) -> None: + rng = np.random.default_rng(seed) + num_masks, img_h, img_w = _RANDOM_CONFIGS[seed] +> masks, xyxy = _random_masks_and_xyxy(rng, num_masks, img_h, img_w) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +tests\detection\test_compact_mask.py:808: +_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ + +rng = Generator(PCG64) at 0x1FBC64111C0, num_masks = 5, img_h = 1080 +img_w = 1920, fill_prob = 0.3 + + def _random_masks_and_xyxy( + rng: np.random.Generator, + num_masks: int, + img_h: int, + img_w: int, + fill_prob: float = 0.3, + ) -> tuple[np.ndarray, np.ndarray]: + """Generate *num_masks* random boolean masks with matching tight xyxy boxes. + + Each mask is built by filling a random sub-rectangle with Bernoulli noise at + ``fill_prob``, then computing tight bounding boxes via ``mask_to_xyxy``. + This guarantees every mask has at least one True pixel (for non-degenerate + bounding boxes). + """ +> masks = np.zeros((num_masks, img_h, img_w), dtype=bool) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +E numpy._core._exceptions._ArrayMemoryError: Unable to allocate 9.89 MiB for an array with shape (5, 1080, 1920) and data type bool + +tests\detection\test_compact_mask.py:781: MemoryErrorself = <tests.detection.test_compact_mask.TestCompactMaskRoundtripRandom object at 0x000001FBC17BBAD0> +seed = 7 + + @pytest.mark.parametrize("seed", list(range(10))) + def test_parity_seed(self, seed: int) -> None: + rng = np.random.default_rng(seed) + num_masks, img_h, img_w = _RANDOM_CONFIGS[seed] +> masks, xyxy = _random_masks_and_xyxy(rng, num_masks, img_h, img_w) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +tests\detection\test_compact_mask.py:808: +_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ + +rng = Generator(PCG64) at 0x1FBC6411FC0, num_masks = 1, img_h = 1080 +img_w = 1920, fill_prob = 0.3 + + def _random_masks_and_xyxy( + rng: np.random.Generator, + num_masks: int, + img_h: int, + img_w: int, + fill_prob: float = 0.3, + ) -> tuple[np.ndarray, np.ndarray]: + """Generate *num_masks* random boolean masks with matching tight xyxy boxes. + + Each mask is built by filling a random sub-rectangle with Bernoulli noise at + ``fill_prob``, then computing tight bounding boxes via ``mask_to_xyxy``. + This guarantees every mask has at least one True pixel (for non-degenerate + bounding boxes). + """ +> masks = np.zeros((num_masks, img_h, img_w), dtype=bool) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +E numpy._core._exceptions._ArrayMemoryError: Unable to allocate 1.98 MiB for an array with shape (1, 1080, 1920) and data type bool + +tests\detection\test_compact_mask.py:781: MemoryErrorself = <tests.detection.test_compact_mask.TestCompactMaskRoundtripRandom object at 0x000001FBC17BBB90> +seed = 8 + + @pytest.mark.parametrize("seed", list(range(10))) + def test_parity_seed(self, seed: int) -> None: + rng = np.random.default_rng(seed) + num_masks, img_h, img_w = _RANDOM_CONFIGS[seed] +> masks, xyxy = _random_masks_and_xyxy(rng, num_masks, img_h, img_w) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +tests\detection\test_compact_mask.py:808: +_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ + +rng = Generator(PCG64) at 0x1FBC6412B20, num_masks = 20, img_h = 480 +img_w = 640, fill_prob = 0.3 + + def _random_masks_and_xyxy( + rng: np.random.Generator, + num_masks: int, + img_h: int, + img_w: int, + fill_prob: float = 0.3, + ) -> tuple[np.ndarray, np.ndarray]: + """Generate *num_masks* random boolean masks with matching tight xyxy boxes. + + Each mask is built by filling a random sub-rectangle with Bernoulli noise at + ``fill_prob``, then computing tight bounding boxes via ``mask_to_xyxy``. + This guarantees every mask has at least one True pixel (for non-degenerate + bounding boxes). + """ +> masks = np.zeros((num_masks, img_h, img_w), dtype=bool) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +E numpy._core._exceptions._ArrayMemoryError: Unable to allocate 5.86 MiB for an array with shape (20, 480, 640) and data type bool + +tests\detection\test_compact_mask.py:781: MemoryErrorself = <tests.detection.test_compact_mask.TestCompactMaskRoundtripRandom object at 0x000001FBC16BC5C0> +seed = 6 + + @pytest.mark.parametrize("seed", list(range(10))) + def test_shape_and_len(self, seed: int) -> None: + """len() and .shape must agree with the dense array.""" + rng = np.random.default_rng(seed) + num_masks, img_h, img_w = _RANDOM_CONFIGS[seed] +> masks, xyxy = _random_masks_and_xyxy(rng, num_masks, img_h, img_w) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +tests\detection\test_compact_mask.py:824: +_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ + +rng = Generator(PCG64) at 0x1FBC6411E00, num_masks = 5, img_h = 1080 +img_w = 1920, fill_prob = 0.3 + + def _random_masks_and_xyxy( + rng: np.random.Generator, + num_masks: int, + img_h: int, + img_w: int, + fill_prob: float = 0.3, + ) -> tuple[np.ndarray, np.ndarray]: + """Generate *num_masks* random boolean masks with matching tight xyxy boxes. + + Each mask is built by filling a random sub-rectangle with Bernoulli noise at + ``fill_prob``, then computing tight bounding boxes via ``mask_to_xyxy``. + This guarantees every mask has at least one True pixel (for non-degenerate + bounding boxes). + """ +> masks = np.zeros((num_masks, img_h, img_w), dtype=bool) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +E numpy._core._exceptions._ArrayMemoryError: Unable to allocate 9.89 MiB for an array with shape (5, 1080, 1920) and data type bool + +tests\detection\test_compact_mask.py:781: MemoryError \ No newline at end of file diff --git a/metrics-before-radon/cc_antes.json b/metrics-before-radon/cc_antes.json new file mode 100644 index 0000000000..1d8d745603 --- /dev/null +++ b/metrics-before-radon/cc_antes.json @@ -0,0 +1,14211 @@ +{ + "src\\supervision\\annotators\\base.py": [ + { + "type": "class", + "rank": "A", + "endline": 12, + "complexity": 2, + "lineno": 7, + "col_offset": 0, + "name": "BaseAnnotator", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 12, + "complexity": 1, + "lineno": 9, + "col_offset": 4, + "name": "annotate", + "classname": "BaseAnnotator", + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "endline": 12, + "complexity": 1, + "lineno": 9, + "col_offset": 4, + "name": "annotate", + "classname": "BaseAnnotator", + "closures": [] + } + ], + "src\\supervision\\annotators\\core.py": [ + { + "type": "method", + "rank": "C", + "endline": 2748, + "complexity": 11, + "lineno": 2722, + "col_offset": 4, + "name": "calculate_border_coordinates", + "classname": "PercentageBarAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "C", + "endline": 2942, + "complexity": 11, + "lineno": 2904, + "col_offset": 4, + "name": "calculate_crop_coordinates", + "classname": "CropAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 2116, + "complexity": 10, + "lineno": 2017, + "col_offset": 4, + "name": "annotate", + "classname": "TraceAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 2322, + "complexity": 10, + "lineno": 2250, + "col_offset": 4, + "name": "annotate", + "classname": "PixelateAnnotator", + "closures": [] + }, + { + "type": "function", + "rank": "B", + "endline": 420, + "complexity": 8, + "lineno": 365, + "col_offset": 0, + "name": "_paint_masks_by_area", + "closures": [] + }, + { + "type": "class", + "rank": "B", + "endline": 2322, + "complexity": 8, + "lineno": 2231, + "col_offset": 0, + "name": "PixelateAnnotator", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 2247, + "complexity": 3, + "lineno": 2236, + "col_offset": 4, + "name": "__init__", + "classname": "PixelateAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 2322, + "complexity": 10, + "lineno": 2250, + "col_offset": 4, + "name": "annotate", + "classname": "PixelateAnnotator", + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "B", + "endline": 991, + "complexity": 7, + "lineno": 926, + "col_offset": 4, + "name": "annotate", + "classname": "BoxCornerAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 1881, + "complexity": 7, + "lineno": 1812, + "col_offset": 4, + "name": "annotate", + "classname": "IconAnnotator", + "closures": [] + }, + { + "type": "class", + "rank": "B", + "endline": 2116, + "complexity": 7, + "lineno": 1974, + "col_offset": 0, + "name": "TraceAnnotator", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 2014, + "complexity": 1, + "lineno": 1985, + "col_offset": 4, + "name": "__init__", + "classname": "TraceAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 2116, + "complexity": 10, + "lineno": 2017, + "col_offset": 4, + "name": "annotate", + "classname": "TraceAnnotator", + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "B", + "endline": 2775, + "complexity": 7, + "lineno": 2751, + "col_offset": 4, + "name": "_validate_custom_values", + "classname": "PercentageBarAnnotator", + "closures": [] + }, + { + "type": "class", + "rank": "B", + "endline": 2942, + "complexity": 7, + "lineno": 2790, + "col_offset": 0, + "name": "CropAnnotator", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 2820, + "complexity": 1, + "lineno": 2795, + "col_offset": 4, + "name": "__init__", + "classname": "CropAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 2901, + "complexity": 6, + "lineno": 2823, + "col_offset": 4, + "name": "annotate", + "classname": "CropAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "C", + "endline": 2942, + "complexity": 11, + "lineno": 2904, + "col_offset": 4, + "name": "calculate_crop_coordinates", + "classname": "CropAnnotator", + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "B", + "endline": 3168, + "complexity": 7, + "lineno": 3161, + "col_offset": 4, + "name": "_use_obb", + "classname": "ComparisonAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 3179, + "complexity": 7, + "lineno": 3172, + "col_offset": 4, + "name": "_use_mask", + "classname": "ComparisonAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 361, + "complexity": 6, + "lineno": 301, + "col_offset": 4, + "name": "annotate", + "classname": "OrientedBoxAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 603, + "complexity": 6, + "lineno": 539, + "col_offset": 4, + "name": "annotate", + "classname": "PolygonAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 797, + "complexity": 6, + "lineno": 730, + "col_offset": 4, + "name": "annotate", + "classname": "HaloAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 1194, + "complexity": 6, + "lineno": 1122, + "col_offset": 4, + "name": "annotate", + "classname": "DotAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 1467, + "complexity": 6, + "lineno": 1387, + "col_offset": 4, + "name": "_draw_labels", + "classname": "LabelAnnotator", + "closures": [] + }, + { + "type": "class", + "rank": "B", + "endline": 1971, + "complexity": 6, + "lineno": 1897, + "col_offset": 0, + "name": "BlurAnnotator", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 1911, + "complexity": 3, + "lineno": 1902, + "col_offset": 4, + "name": "__init__", + "classname": "BlurAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 1971, + "complexity": 6, + "lineno": 1914, + "col_offset": 4, + "name": "annotate", + "classname": "BlurAnnotator", + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "B", + "endline": 1971, + "complexity": 6, + "lineno": 1914, + "col_offset": 4, + "name": "annotate", + "classname": "BlurAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 2228, + "complexity": 6, + "lineno": 2155, + "col_offset": 4, + "name": "annotate", + "classname": "HeatMapAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 2444, + "complexity": 6, + "lineno": 2364, + "col_offset": 4, + "name": "annotate", + "classname": "TriangleAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 2580, + "complexity": 6, + "lineno": 2480, + "col_offset": 4, + "name": "annotate", + "classname": "RoundBoxAnnotator", + "closures": [] + }, + { + "type": "class", + "rank": "B", + "endline": 2787, + "complexity": 6, + "lineno": 2583, + "col_offset": 0, + "name": "PercentageBarAnnotator", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 2620, + "complexity": 2, + "lineno": 2588, + "col_offset": 4, + "name": "__init__", + "classname": "PercentageBarAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 2719, + "complexity": 6, + "lineno": 2624, + "col_offset": 4, + "name": "annotate", + "classname": "PercentageBarAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "C", + "endline": 2748, + "complexity": 11, + "lineno": 2722, + "col_offset": 4, + "name": "calculate_border_coordinates", + "classname": "PercentageBarAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 2775, + "complexity": 7, + "lineno": 2751, + "col_offset": 4, + "name": "_validate_custom_values", + "classname": "PercentageBarAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 2787, + "complexity": 1, + "lineno": 2783, + "col_offset": 4, + "name": "validate_custom_values", + "classname": "PercentageBarAnnotator", + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "B", + "endline": 2719, + "complexity": 6, + "lineno": 2624, + "col_offset": 4, + "name": "annotate", + "classname": "PercentageBarAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 2901, + "complexity": 6, + "lineno": 2823, + "col_offset": 4, + "name": "annotate", + "classname": "CropAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 3029, + "complexity": 6, + "lineno": 2978, + "col_offset": 4, + "name": "annotate", + "classname": "BackgroundOverlayAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 3158, + "complexity": 6, + "lineno": 3081, + "col_offset": 4, + "name": "annotate", + "classname": "ComparisonAnnotator", + "closures": [] + }, + { + "type": "class", + "rank": "A", + "endline": 361, + "complexity": 5, + "lineno": 277, + "col_offset": 0, + "name": "OrientedBoxAnnotator", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 298, + "complexity": 1, + "lineno": 282, + "col_offset": 4, + "name": "__init__", + "classname": "OrientedBoxAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 361, + "complexity": 6, + "lineno": 301, + "col_offset": 4, + "name": "annotate", + "classname": "OrientedBoxAnnotator", + "closures": [] + } + ] + }, + { + "type": "class", + "rank": "A", + "endline": 603, + "complexity": 5, + "lineno": 511, + "col_offset": 0, + "name": "PolygonAnnotator", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 536, + "complexity": 1, + "lineno": 520, + "col_offset": 4, + "name": "__init__", + "classname": "PolygonAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 603, + "complexity": 6, + "lineno": 539, + "col_offset": 4, + "name": "annotate", + "classname": "PolygonAnnotator", + "closures": [] + } + ] + }, + { + "type": "class", + "rank": "A", + "endline": 797, + "complexity": 5, + "lineno": 698, + "col_offset": 0, + "name": "HaloAnnotator", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 727, + "complexity": 1, + "lineno": 707, + "col_offset": 4, + "name": "__init__", + "classname": "HaloAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 797, + "complexity": 6, + "lineno": 730, + "col_offset": 4, + "name": "annotate", + "classname": "HaloAnnotator", + "closures": [] + } + ] + }, + { + "type": "class", + "rank": "A", + "endline": 991, + "complexity": 5, + "lineno": 899, + "col_offset": 0, + "name": "BoxCornerAnnotator", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 923, + "complexity": 1, + "lineno": 904, + "col_offset": 4, + "name": "__init__", + "classname": "BoxCornerAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 991, + "complexity": 7, + "lineno": 926, + "col_offset": 4, + "name": "annotate", + "classname": "BoxCornerAnnotator", + "closures": [] + } + ] + }, + { + "type": "class", + "rank": "A", + "endline": 1194, + "complexity": 5, + "lineno": 1086, + "col_offset": 0, + "name": "DotAnnotator", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 1119, + "complexity": 1, + "lineno": 1092, + "col_offset": 4, + "name": "__init__", + "classname": "DotAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 1194, + "complexity": 6, + "lineno": 1122, + "col_offset": 4, + "name": "annotate", + "classname": "DotAnnotator", + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "endline": 1762, + "complexity": 5, + "lineno": 1701, + "col_offset": 4, + "name": "_draw_labels", + "classname": "RichLabelAnnotator", + "closures": [] + }, + { + "type": "class", + "rank": "A", + "endline": 2228, + "complexity": 5, + "lineno": 2119, + "col_offset": 0, + "name": "HeatMapAnnotator", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 2152, + "complexity": 1, + "lineno": 2126, + "col_offset": 4, + "name": "__init__", + "classname": "HeatMapAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 2228, + "complexity": 6, + "lineno": 2155, + "col_offset": 4, + "name": "annotate", + "classname": "HeatMapAnnotator", + "closures": [] + } + ] + }, + { + "type": "class", + "rank": "A", + "endline": 2444, + "complexity": 5, + "lineno": 2325, + "col_offset": 0, + "name": "TriangleAnnotator", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 2361, + "complexity": 1, + "lineno": 2331, + "col_offset": 4, + "name": "__init__", + "classname": "TriangleAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 2444, + "complexity": 6, + "lineno": 2364, + "col_offset": 4, + "name": "annotate", + "classname": "TriangleAnnotator", + "closures": [] + } + ] + }, + { + "type": "class", + "rank": "A", + "endline": 2580, + "complexity": 5, + "lineno": 2447, + "col_offset": 0, + "name": "RoundBoxAnnotator", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 2477, + "complexity": 2, + "lineno": 2453, + "col_offset": 4, + "name": "__init__", + "classname": "RoundBoxAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 2580, + "complexity": 6, + "lineno": 2480, + "col_offset": 4, + "name": "annotate", + "classname": "RoundBoxAnnotator", + "closures": [] + } + ] + }, + { + "type": "class", + "rank": "A", + "endline": 3029, + "complexity": 5, + "lineno": 2945, + "col_offset": 0, + "name": "BackgroundOverlayAnnotator", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 2975, + "complexity": 1, + "lineno": 2960, + "col_offset": 4, + "name": "__init__", + "classname": "BackgroundOverlayAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 3029, + "complexity": 6, + "lineno": 2978, + "col_offset": 4, + "name": "annotate", + "classname": "BackgroundOverlayAnnotator", + "closures": [] + } + ] + }, + { + "type": "class", + "rank": "A", + "endline": 3294, + "complexity": 5, + "lineno": 3032, + "col_offset": 0, + "name": "ComparisonAnnotator", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 3078, + "complexity": 1, + "lineno": 3043, + "col_offset": 4, + "name": "__init__", + "classname": "ComparisonAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 3158, + "complexity": 6, + "lineno": 3081, + "col_offset": 4, + "name": "annotate", + "classname": "ComparisonAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 3168, + "complexity": 7, + "lineno": 3161, + "col_offset": 4, + "name": "_use_obb", + "classname": "ComparisonAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 3179, + "complexity": 7, + "lineno": 3172, + "col_offset": 4, + "name": "_use_mask", + "classname": "ComparisonAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 3196, + "complexity": 3, + "lineno": 3183, + "col_offset": 4, + "name": "_mask_from_xyxy", + "classname": "ComparisonAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 3211, + "complexity": 3, + "lineno": 3199, + "col_offset": 4, + "name": "_mask_from_obb", + "classname": "ComparisonAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 3224, + "complexity": 4, + "lineno": 3214, + "col_offset": 4, + "name": "_mask_from_mask", + "classname": "ComparisonAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 3294, + "complexity": 3, + "lineno": 3226, + "col_offset": 4, + "name": "_draw_labels", + "classname": "ComparisonAnnotator", + "closures": [] + } + ] + }, + { + "type": "class", + "rank": "A", + "endline": 274, + "complexity": 4, + "lineno": 190, + "col_offset": 0, + "name": "BoxAnnotator", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 211, + "complexity": 1, + "lineno": 195, + "col_offset": 4, + "name": "__init__", + "classname": "BoxAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 274, + "complexity": 4, + "lineno": 214, + "col_offset": 4, + "name": "annotate", + "classname": "BoxAnnotator", + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "endline": 274, + "complexity": 4, + "lineno": 214, + "col_offset": 4, + "name": "annotate", + "classname": "BoxAnnotator", + "closures": [] + }, + { + "type": "class", + "rank": "A", + "endline": 508, + "complexity": 4, + "lineno": 423, + "col_offset": 0, + "name": "MaskAnnotator", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 448, + "complexity": 1, + "lineno": 432, + "col_offset": 4, + "name": "__init__", + "classname": "MaskAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 508, + "complexity": 4, + "lineno": 451, + "col_offset": 4, + "name": "annotate", + "classname": "MaskAnnotator", + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "endline": 508, + "complexity": 4, + "lineno": 451, + "col_offset": 4, + "name": "annotate", + "classname": "MaskAnnotator", + "closures": [] + }, + { + "type": "class", + "rank": "A", + "endline": 695, + "complexity": 4, + "lineno": 606, + "col_offset": 0, + "name": "ColorAnnotator", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 627, + "complexity": 1, + "lineno": 611, + "col_offset": 4, + "name": "__init__", + "classname": "ColorAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 695, + "complexity": 4, + "lineno": 630, + "col_offset": 4, + "name": "annotate", + "classname": "ColorAnnotator", + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "endline": 695, + "complexity": 4, + "lineno": 630, + "col_offset": 4, + "name": "annotate", + "classname": "ColorAnnotator", + "closures": [] + }, + { + "type": "class", + "rank": "A", + "endline": 896, + "complexity": 4, + "lineno": 800, + "col_offset": 0, + "name": "EllipseAnnotator", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 827, + "complexity": 1, + "lineno": 805, + "col_offset": 4, + "name": "__init__", + "classname": "EllipseAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 896, + "complexity": 4, + "lineno": 830, + "col_offset": 4, + "name": "annotate", + "classname": "EllipseAnnotator", + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "endline": 896, + "complexity": 4, + "lineno": 830, + "col_offset": 4, + "name": "annotate", + "classname": "EllipseAnnotator", + "closures": [] + }, + { + "type": "class", + "rank": "A", + "endline": 1083, + "complexity": 4, + "lineno": 994, + "col_offset": 0, + "name": "CircleAnnotator", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 1016, + "complexity": 1, + "lineno": 999, + "col_offset": 4, + "name": "__init__", + "classname": "CircleAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 1083, + "complexity": 4, + "lineno": 1019, + "col_offset": 4, + "name": "annotate", + "classname": "CircleAnnotator", + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "endline": 1083, + "complexity": 4, + "lineno": 1019, + "col_offset": 4, + "name": "annotate", + "classname": "CircleAnnotator", + "closures": [] + }, + { + "type": "class", + "rank": "A", + "endline": 1509, + "complexity": 4, + "lineno": 1197, + "col_offset": 0, + "name": "LabelAnnotator", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 1248, + "complexity": 1, + "lineno": 1202, + "col_offset": 4, + "name": "__init__", + "classname": "LabelAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 1331, + "complexity": 3, + "lineno": 1252, + "col_offset": 4, + "name": "annotate", + "classname": "LabelAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 1385, + "complexity": 4, + "lineno": 1333, + "col_offset": 4, + "name": "_get_label_properties", + "classname": "LabelAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 1467, + "complexity": 6, + "lineno": 1387, + "col_offset": 4, + "name": "_draw_labels", + "classname": "LabelAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 1509, + "complexity": 3, + "lineno": 1470, + "col_offset": 4, + "name": "draw_rounded_rectangle", + "classname": "LabelAnnotator", + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "endline": 1385, + "complexity": 4, + "lineno": 1333, + "col_offset": 4, + "name": "_get_label_properties", + "classname": "LabelAnnotator", + "closures": [] + }, + { + "type": "class", + "rank": "A", + "endline": 1785, + "complexity": 4, + "lineno": 1512, + "col_offset": 0, + "name": "RichLabelAnnotator", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 1565, + "complexity": 1, + "lineno": 1518, + "col_offset": 4, + "name": "__init__", + "classname": "RichLabelAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 1647, + "complexity": 3, + "lineno": 1569, + "col_offset": 4, + "name": "annotate", + "classname": "RichLabelAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 1699, + "complexity": 4, + "lineno": 1649, + "col_offset": 4, + "name": "_get_label_properties", + "classname": "RichLabelAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 1762, + "complexity": 5, + "lineno": 1701, + "col_offset": 4, + "name": "_draw_labels", + "classname": "RichLabelAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 1785, + "complexity": 3, + "lineno": 1765, + "col_offset": 4, + "name": "_load_font", + "classname": "RichLabelAnnotator", + "closures": [ + { + "type": "function", + "rank": "A", + "endline": 1774, + "complexity": 2, + "lineno": 1768, + "col_offset": 8, + "name": "load_default_font", + "closures": [] + } + ] + } + ] + }, + { + "type": "method", + "rank": "A", + "endline": 1699, + "complexity": 4, + "lineno": 1649, + "col_offset": 4, + "name": "_get_label_properties", + "classname": "RichLabelAnnotator", + "closures": [] + }, + { + "type": "class", + "rank": "A", + "endline": 1894, + "complexity": 4, + "lineno": 1788, + "col_offset": 0, + "name": "IconAnnotator", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 1809, + "complexity": 1, + "lineno": 1793, + "col_offset": 4, + "name": "__init__", + "classname": "IconAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 1881, + "complexity": 7, + "lineno": 1812, + "col_offset": 4, + "name": "annotate", + "classname": "IconAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 1894, + "complexity": 2, + "lineno": 1884, + "col_offset": 4, + "name": "_load_icon", + "classname": "IconAnnotator", + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "endline": 3224, + "complexity": 4, + "lineno": 3214, + "col_offset": 4, + "name": "_mask_from_mask", + "classname": "ComparisonAnnotator", + "closures": [] + }, + { + "type": "class", + "rank": "A", + "endline": 187, + "complexity": 3, + "lineno": 83, + "col_offset": 0, + "name": "_BaseLabelAnnotator", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 145, + "complexity": 1, + "lineno": 103, + "col_offset": 4, + "name": "__init__", + "classname": "_BaseLabelAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 187, + "complexity": 2, + "lineno": 147, + "col_offset": 4, + "name": "_adjust_labels_in_frame", + "classname": "_BaseLabelAnnotator", + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "endline": 1331, + "complexity": 3, + "lineno": 1252, + "col_offset": 4, + "name": "annotate", + "classname": "LabelAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 1509, + "complexity": 3, + "lineno": 1470, + "col_offset": 4, + "name": "draw_rounded_rectangle", + "classname": "LabelAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 1647, + "complexity": 3, + "lineno": 1569, + "col_offset": 4, + "name": "annotate", + "classname": "RichLabelAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 1785, + "complexity": 3, + "lineno": 1765, + "col_offset": 4, + "name": "_load_font", + "classname": "RichLabelAnnotator", + "closures": [ + { + "type": "function", + "rank": "A", + "endline": 1774, + "complexity": 2, + "lineno": 1768, + "col_offset": 8, + "name": "load_default_font", + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "endline": 1911, + "complexity": 3, + "lineno": 1902, + "col_offset": 4, + "name": "__init__", + "classname": "BlurAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 2247, + "complexity": 3, + "lineno": 2236, + "col_offset": 4, + "name": "__init__", + "classname": "PixelateAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 3196, + "complexity": 3, + "lineno": 3183, + "col_offset": 4, + "name": "_mask_from_xyxy", + "classname": "ComparisonAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 3211, + "complexity": 3, + "lineno": 3199, + "col_offset": 4, + "name": "_mask_from_obb", + "classname": "ComparisonAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 3294, + "complexity": 3, + "lineno": 3226, + "col_offset": 4, + "name": "_draw_labels", + "classname": "ComparisonAnnotator", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 77, + "complexity": 2, + "lineno": 67, + "col_offset": 0, + "name": "_normalize_color_input", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 187, + "complexity": 2, + "lineno": 147, + "col_offset": 4, + "name": "_adjust_labels_in_frame", + "classname": "_BaseLabelAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 1894, + "complexity": 2, + "lineno": 1884, + "col_offset": 4, + "name": "_load_icon", + "classname": "IconAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 2477, + "complexity": 2, + "lineno": 2453, + "col_offset": 4, + "name": "__init__", + "classname": "RoundBoxAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 2620, + "complexity": 2, + "lineno": 2588, + "col_offset": 4, + "name": "__init__", + "classname": "PercentageBarAnnotator", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 58, + "complexity": 1, + "lineno": 58, + "col_offset": 0, + "name": "_normalize_color_input", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 64, + "complexity": 1, + "lineno": 62, + "col_offset": 0, + "name": "_normalize_color_input", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 145, + "complexity": 1, + "lineno": 103, + "col_offset": 4, + "name": "__init__", + "classname": "_BaseLabelAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 211, + "complexity": 1, + "lineno": 195, + "col_offset": 4, + "name": "__init__", + "classname": "BoxAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 298, + "complexity": 1, + "lineno": 282, + "col_offset": 4, + "name": "__init__", + "classname": "OrientedBoxAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 448, + "complexity": 1, + "lineno": 432, + "col_offset": 4, + "name": "__init__", + "classname": "MaskAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 536, + "complexity": 1, + "lineno": 520, + "col_offset": 4, + "name": "__init__", + "classname": "PolygonAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 627, + "complexity": 1, + "lineno": 611, + "col_offset": 4, + "name": "__init__", + "classname": "ColorAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 727, + "complexity": 1, + "lineno": 707, + "col_offset": 4, + "name": "__init__", + "classname": "HaloAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 827, + "complexity": 1, + "lineno": 805, + "col_offset": 4, + "name": "__init__", + "classname": "EllipseAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 923, + "complexity": 1, + "lineno": 904, + "col_offset": 4, + "name": "__init__", + "classname": "BoxCornerAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 1016, + "complexity": 1, + "lineno": 999, + "col_offset": 4, + "name": "__init__", + "classname": "CircleAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 1119, + "complexity": 1, + "lineno": 1092, + "col_offset": 4, + "name": "__init__", + "classname": "DotAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 1248, + "complexity": 1, + "lineno": 1202, + "col_offset": 4, + "name": "__init__", + "classname": "LabelAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 1565, + "complexity": 1, + "lineno": 1518, + "col_offset": 4, + "name": "__init__", + "classname": "RichLabelAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 1809, + "complexity": 1, + "lineno": 1793, + "col_offset": 4, + "name": "__init__", + "classname": "IconAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 2014, + "complexity": 1, + "lineno": 1985, + "col_offset": 4, + "name": "__init__", + "classname": "TraceAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 2152, + "complexity": 1, + "lineno": 2126, + "col_offset": 4, + "name": "__init__", + "classname": "HeatMapAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 2361, + "complexity": 1, + "lineno": 2331, + "col_offset": 4, + "name": "__init__", + "classname": "TriangleAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 2787, + "complexity": 1, + "lineno": 2783, + "col_offset": 4, + "name": "validate_custom_values", + "classname": "PercentageBarAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 2820, + "complexity": 1, + "lineno": 2795, + "col_offset": 4, + "name": "__init__", + "classname": "CropAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 2975, + "complexity": 1, + "lineno": 2960, + "col_offset": 4, + "name": "__init__", + "classname": "BackgroundOverlayAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 3078, + "complexity": 1, + "lineno": 3043, + "col_offset": 4, + "name": "__init__", + "classname": "ComparisonAnnotator", + "closures": [] + } + ], + "src\\supervision\\annotators\\utils.py": [ + { + "type": "function", + "rank": "C", + "endline": 129, + "complexity": 11, + "lineno": 80, + "col_offset": 0, + "name": "resolve_text_background_xyxy", + "closures": [] + }, + { + "type": "function", + "rank": "B", + "endline": 202, + "complexity": 10, + "lineno": 159, + "col_offset": 0, + "name": "wrap_text", + "closures": [] + }, + { + "type": "function", + "rank": "B", + "endline": 77, + "complexity": 9, + "lineno": 40, + "col_offset": 0, + "name": "resolve_color_idx", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 263, + "complexity": 5, + "lineno": 235, + "col_offset": 0, + "name": "get_labels_text", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 156, + "complexity": 4, + "lineno": 139, + "col_offset": 0, + "name": "resolve_color", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 409, + "complexity": 4, + "lineno": 384, + "col_offset": 0, + "name": "hex_to_rgba", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 427, + "complexity": 4, + "lineno": 412, + "col_offset": 0, + "name": "rgba_to_hex", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 375, + "complexity": 4, + "lineno": 347, + "col_offset": 4, + "name": "put", + "classname": "Trace", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 221, + "complexity": 3, + "lineno": 205, + "col_offset": 0, + "name": "_validate_labels", + "closures": [] + }, + { + "type": "class", + "rank": "A", + "endline": 381, + "complexity": 3, + "lineno": 332, + "col_offset": 0, + "name": "Trace", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 345, + "complexity": 1, + "lineno": 333, + "col_offset": 4, + "name": "__init__", + "classname": "Trace", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 375, + "complexity": 4, + "lineno": 347, + "col_offset": 4, + "name": "put", + "classname": "Trace", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 381, + "complexity": 1, + "lineno": 377, + "col_offset": 4, + "name": "get", + "classname": "Trace", + "closures": [] + } + ] + }, + { + "type": "function", + "rank": "A", + "endline": 136, + "complexity": 2, + "lineno": 133, + "col_offset": 0, + "name": "get_color_by_index", + "closures": [] + }, + { + "type": "class", + "rank": "A", + "endline": 37, + "complexity": 2, + "lineno": 21, + "col_offset": 0, + "name": "ColorLookup", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 37, + "complexity": 1, + "lineno": 36, + "col_offset": 4, + "name": "list", + "classname": "ColorLookup", + "closures": [] + } + ] + }, + { + "type": "function", + "rank": "A", + "endline": 232, + "complexity": 1, + "lineno": 231, + "col_offset": 0, + "name": "validate_labels", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 329, + "complexity": 1, + "lineno": 266, + "col_offset": 0, + "name": "snap_boxes", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 441, + "complexity": 1, + "lineno": 430, + "col_offset": 0, + "name": "is_valid_hex", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 464, + "complexity": 1, + "lineno": 444, + "col_offset": 0, + "name": "calculate_dynamic_kernel_size", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 487, + "complexity": 1, + "lineno": 467, + "col_offset": 0, + "name": "calculate_dynamic_pixel_size", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 37, + "complexity": 1, + "lineno": 36, + "col_offset": 4, + "name": "list", + "classname": "ColorLookup", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 345, + "complexity": 1, + "lineno": 333, + "col_offset": 4, + "name": "__init__", + "classname": "Trace", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 381, + "complexity": 1, + "lineno": 377, + "col_offset": 4, + "name": "get", + "classname": "Trace", + "closures": [] + } + ], + "src\\supervision\\assets\\downloader.py": [ + { + "type": "function", + "rank": "B", + "endline": 95, + "complexity": 6, + "lineno": 41, + "col_offset": 0, + "name": "download_assets", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 38, + "complexity": 2, + "lineno": 17, + "col_offset": 0, + "name": "is_md5_hash_matching", + "closures": [] + } + ], + "src\\supervision\\assets\\list.py": [ + { + "type": "class", + "rank": "A", + "endline": 20, + "complexity": 3, + "lineno": 7, + "col_offset": 0, + "name": "Assets", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 16, + "complexity": 1, + "lineno": 11, + "col_offset": 4, + "name": "__new__", + "classname": "Assets", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 20, + "complexity": 2, + "lineno": 19, + "col_offset": 4, + "name": "list", + "classname": "Assets", + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "endline": 20, + "complexity": 2, + "lineno": 19, + "col_offset": 4, + "name": "list", + "classname": "Assets", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 16, + "complexity": 1, + "lineno": 11, + "col_offset": 4, + "name": "__new__", + "classname": "Assets", + "closures": [] + }, + { + "type": "class", + "rank": "A", + "endline": 54, + "complexity": 1, + "lineno": 23, + "col_offset": 0, + "name": "VideoAssets", + "methods": [] + }, + { + "type": "class", + "rank": "A", + "endline": 70, + "complexity": 1, + "lineno": 57, + "col_offset": 0, + "name": "ImageAssets", + "methods": [] + } + ], + "src\\supervision\\classification\\core.py": [ + { + "type": "function", + "rank": "A", + "endline": 29, + "complexity": 4, + "lineno": 22, + "col_offset": 0, + "name": "_validate_confidence", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 19, + "complexity": 3, + "lineno": 13, + "col_offset": 0, + "name": "_validate_class_ids", + "closures": [] + }, + { + "type": "class", + "rank": "A", + "endline": 200, + "complexity": 2, + "lineno": 33, + "col_offset": 0, + "name": "Classifications", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 44, + "complexity": 1, + "lineno": 37, + "col_offset": 4, + "name": "__post_init__", + "classname": "Classifications", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 50, + "complexity": 1, + "lineno": 46, + "col_offset": 4, + "name": "__len__", + "classname": "Classifications", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 90, + "complexity": 2, + "lineno": 53, + "col_offset": 4, + "name": "from_clip", + "classname": "Classifications", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 118, + "complexity": 1, + "lineno": 93, + "col_offset": 4, + "name": "from_ultralytics", + "classname": "Classifications", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 164, + "complexity": 2, + "lineno": 121, + "col_offset": 4, + "name": "from_timm", + "classname": "Classifications", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 200, + "complexity": 2, + "lineno": 166, + "col_offset": 4, + "name": "get_top_k", + "classname": "Classifications", + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "endline": 90, + "complexity": 2, + "lineno": 53, + "col_offset": 4, + "name": "from_clip", + "classname": "Classifications", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 164, + "complexity": 2, + "lineno": 121, + "col_offset": 4, + "name": "from_timm", + "classname": "Classifications", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 200, + "complexity": 2, + "lineno": 166, + "col_offset": 4, + "name": "get_top_k", + "classname": "Classifications", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 44, + "complexity": 1, + "lineno": 37, + "col_offset": 4, + "name": "__post_init__", + "classname": "Classifications", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 50, + "complexity": 1, + "lineno": 46, + "col_offset": 4, + "name": "__len__", + "classname": "Classifications", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 118, + "complexity": 1, + "lineno": 93, + "col_offset": 4, + "name": "from_ultralytics", + "classname": "Classifications", + "closures": [] + } + ], + "src\\supervision\\dataset\\core.py": [ + { + "type": "method", + "rank": "C", + "endline": 327, + "complexity": 13, + "lineno": 231, + "col_offset": 4, + "name": "merge", + "classname": "DetectionDataset", + "closures": [ + { + "type": "function", + "rank": "A", + "endline": 280, + "complexity": 2, + "lineno": 279, + "col_offset": 8, + "name": "is_in_memory", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 283, + "complexity": 1, + "lineno": 282, + "col_offset": 8, + "name": "is_lazy", + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "B", + "endline": 155, + "complexity": 8, + "lineno": 135, + "col_offset": 4, + "name": "__eq__", + "classname": "DetectionDataset", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 575, + "complexity": 8, + "lineno": 504, + "col_offset": 4, + "name": "as_yolo", + "classname": "DetectionDataset", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 822, + "complexity": 8, + "lineno": 802, + "col_offset": 4, + "name": "__eq__", + "classname": "ClassificationDataset", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 228, + "complexity": 6, + "lineno": 157, + "col_offset": 4, + "name": "split", + "classname": "DetectionDataset", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 895, + "complexity": 6, + "lineno": 824, + "col_offset": 4, + "name": "split", + "classname": "ClassificationDataset", + "closures": [] + }, + { + "type": "class", + "rank": "A", + "endline": 723, + "complexity": 5, + "lineno": 56, + "col_offset": 0, + "name": "DetectionDataset", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 99, + "complexity": 5, + "lineno": 74, + "col_offset": 4, + "name": "__init__", + "classname": "DetectionDataset", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 108, + "complexity": 3, + "lineno": 101, + "col_offset": 4, + "name": "_get_image", + "classname": "DetectionDataset", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 111, + "complexity": 2, + "lineno": 110, + "col_offset": 4, + "name": "__len__", + "classname": "DetectionDataset", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 122, + "complexity": 1, + "lineno": 113, + "col_offset": 4, + "name": "__getitem__", + "classname": "DetectionDataset", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 133, + "complexity": 2, + "lineno": 124, + "col_offset": 4, + "name": "__iter__", + "classname": "DetectionDataset", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 155, + "complexity": 8, + "lineno": 135, + "col_offset": 4, + "name": "__eq__", + "classname": "DetectionDataset", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 228, + "complexity": 6, + "lineno": 157, + "col_offset": 4, + "name": "split", + "classname": "DetectionDataset", + "closures": [] + }, + { + "type": "method", + "rank": "C", + "endline": 327, + "complexity": 13, + "lineno": 231, + "col_offset": 4, + "name": "merge", + "classname": "DetectionDataset", + "closures": [ + { + "type": "function", + "rank": "A", + "endline": 280, + "complexity": 2, + "lineno": 279, + "col_offset": 8, + "name": "is_in_memory", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 283, + "complexity": 1, + "lineno": 282, + "col_offset": 8, + "name": "is_lazy", + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "endline": 385, + "complexity": 4, + "lineno": 330, + "col_offset": 4, + "name": "as_pascal_voc", + "classname": "DetectionDataset", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 438, + "complexity": 1, + "lineno": 388, + "col_offset": 4, + "name": "from_pascal_voc", + "classname": "DetectionDataset", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 501, + "complexity": 1, + "lineno": 442, + "col_offset": 4, + "name": "from_yolo", + "classname": "DetectionDataset", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 575, + "complexity": 8, + "lineno": 504, + "col_offset": 4, + "name": "as_yolo", + "classname": "DetectionDataset", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 624, + "complexity": 1, + "lineno": 578, + "col_offset": 4, + "name": "from_coco", + "classname": "DetectionDataset", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 723, + "complexity": 3, + "lineno": 626, + "col_offset": 4, + "name": "as_coco", + "classname": "DetectionDataset", + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "endline": 99, + "complexity": 5, + "lineno": 74, + "col_offset": 4, + "name": "__init__", + "classname": "DetectionDataset", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 385, + "complexity": 4, + "lineno": 330, + "col_offset": 4, + "name": "as_pascal_voc", + "classname": "DetectionDataset", + "closures": [] + }, + { + "type": "class", + "rank": "A", + "endline": 968, + "complexity": 4, + "lineno": 727, + "col_offset": 0, + "name": "ClassificationDataset", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 761, + "complexity": 3, + "lineno": 740, + "col_offset": 4, + "name": "__init__", + "classname": "ClassificationDataset", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 773, + "complexity": 3, + "lineno": 766, + "col_offset": 4, + "name": "_get_image", + "classname": "ClassificationDataset", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 776, + "complexity": 2, + "lineno": 775, + "col_offset": 4, + "name": "__len__", + "classname": "ClassificationDataset", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 787, + "complexity": 1, + "lineno": 778, + "col_offset": 4, + "name": "__getitem__", + "classname": "ClassificationDataset", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 800, + "complexity": 2, + "lineno": 789, + "col_offset": 4, + "name": "__iter__", + "classname": "ClassificationDataset", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 822, + "complexity": 8, + "lineno": 802, + "col_offset": 4, + "name": "__eq__", + "classname": "ClassificationDataset", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 895, + "complexity": 6, + "lineno": 824, + "col_offset": 4, + "name": "split", + "classname": "ClassificationDataset", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 919, + "complexity": 4, + "lineno": 897, + "col_offset": 4, + "name": "as_folder_structure", + "classname": "ClassificationDataset", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 968, + "complexity": 3, + "lineno": 922, + "col_offset": 4, + "name": "from_folder_structure", + "classname": "ClassificationDataset", + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "endline": 919, + "complexity": 4, + "lineno": 897, + "col_offset": 4, + "name": "as_folder_structure", + "classname": "ClassificationDataset", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 108, + "complexity": 3, + "lineno": 101, + "col_offset": 4, + "name": "_get_image", + "classname": "DetectionDataset", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 723, + "complexity": 3, + "lineno": 626, + "col_offset": 4, + "name": "as_coco", + "classname": "DetectionDataset", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 761, + "complexity": 3, + "lineno": 740, + "col_offset": 4, + "name": "__init__", + "classname": "ClassificationDataset", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 773, + "complexity": 3, + "lineno": 766, + "col_offset": 4, + "name": "_get_image", + "classname": "ClassificationDataset", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 968, + "complexity": 3, + "lineno": 922, + "col_offset": 4, + "name": "from_folder_structure", + "classname": "ClassificationDataset", + "closures": [] + }, + { + "type": "class", + "rank": "A", + "endline": 53, + "complexity": 2, + "lineno": 41, + "col_offset": 0, + "name": "BaseDataset", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 44, + "complexity": 1, + "lineno": 43, + "col_offset": 4, + "name": "__len__", + "classname": "BaseDataset", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 53, + "complexity": 1, + "lineno": 47, + "col_offset": 4, + "name": "split", + "classname": "BaseDataset", + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "endline": 111, + "complexity": 2, + "lineno": 110, + "col_offset": 4, + "name": "__len__", + "classname": "DetectionDataset", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 133, + "complexity": 2, + "lineno": 124, + "col_offset": 4, + "name": "__iter__", + "classname": "DetectionDataset", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 776, + "complexity": 2, + "lineno": 775, + "col_offset": 4, + "name": "__len__", + "classname": "ClassificationDataset", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 800, + "complexity": 2, + "lineno": 789, + "col_offset": 4, + "name": "__iter__", + "classname": "ClassificationDataset", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 44, + "complexity": 1, + "lineno": 43, + "col_offset": 4, + "name": "__len__", + "classname": "BaseDataset", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 53, + "complexity": 1, + "lineno": 47, + "col_offset": 4, + "name": "split", + "classname": "BaseDataset", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 122, + "complexity": 1, + "lineno": 113, + "col_offset": 4, + "name": "__getitem__", + "classname": "DetectionDataset", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 438, + "complexity": 1, + "lineno": 388, + "col_offset": 4, + "name": "from_pascal_voc", + "classname": "DetectionDataset", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 501, + "complexity": 1, + "lineno": 442, + "col_offset": 4, + "name": "from_yolo", + "classname": "DetectionDataset", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 624, + "complexity": 1, + "lineno": 578, + "col_offset": 4, + "name": "from_coco", + "classname": "DetectionDataset", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 787, + "complexity": 1, + "lineno": 778, + "col_offset": 4, + "name": "__getitem__", + "classname": "ClassificationDataset", + "closures": [] + } + ], + "src\\supervision\\dataset\\utils.py": [ + { + "type": "function", + "rank": "A", + "endline": 125, + "complexity": 4, + "lineno": 108, + "col_offset": 0, + "name": "map_detections_class_id", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 76, + "complexity": 3, + "lineno": 52, + "col_offset": 0, + "name": "approximate_mask_with_polygons", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 87, + "complexity": 3, + "lineno": 80, + "col_offset": 0, + "name": "merge_class_lists", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 105, + "complexity": 3, + "lineno": 90, + "col_offset": 0, + "name": "build_class_index_mapping", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 136, + "complexity": 3, + "lineno": 128, + "col_offset": 0, + "name": "save_dataset_images", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 164, + "complexity": 3, + "lineno": 139, + "col_offset": 0, + "name": "train_test_split", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 34, + "complexity": 1, + "lineno": 30, + "col_offset": 0, + "name": "mask_to_rle", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 43, + "complexity": 1, + "lineno": 38, + "col_offset": 0, + "name": "rle_to_mask", + "closures": [] + } + ], + "src\\supervision\\dataset\\formats\\coco.py": [ + { + "type": "function", + "rank": "C", + "endline": 354, + "complexity": 15, + "lineno": 217, + "col_offset": 0, + "name": "detections_to_coco_annotations", + "closures": [] + }, + { + "type": "function", + "rank": "B", + "endline": 213, + "complexity": 9, + "lineno": 145, + "col_offset": 0, + "name": "coco_annotations_to_detections", + "closures": [] + }, + { + "type": "function", + "rank": "B", + "endline": 142, + "complexity": 8, + "lineno": 96, + "col_offset": 0, + "name": "coco_annotations_to_masks", + "closures": [] + }, + { + "type": "function", + "rank": "B", + "endline": 500, + "complexity": 8, + "lineno": 396, + "col_offset": 0, + "name": "load_coco_annotations", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 621, + "complexity": 4, + "lineno": 507, + "col_offset": 0, + "name": "save_coco_annotations", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 44, + "complexity": 3, + "lineno": 36, + "col_offset": 0, + "name": "build_coco_class_index_mapping", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 93, + "complexity": 3, + "lineno": 84, + "col_offset": 0, + "name": "group_coco_annotations_by_image_id", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 32, + "complexity": 2, + "lineno": 29, + "col_offset": 0, + "name": "coco_categories_to_classes", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 80, + "complexity": 2, + "lineno": 48, + "col_offset": 0, + "name": "classes_to_coco_categories", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 393, + "complexity": 2, + "lineno": 357, + "col_offset": 0, + "name": "get_coco_class_index_mapping", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 504, + "complexity": 1, + "lineno": 503, + "col_offset": 0, + "name": "_with_seg_mask", + "closures": [] + } + ], + "src\\supervision\\dataset\\formats\\pascal_voc.py": [ + { + "type": "function", + "rank": "C", + "endline": 332, + "complexity": 12, + "lineno": 235, + "col_offset": 0, + "name": "detections_from_xml_obj", + "closures": [] + }, + { + "type": "function", + "rank": "B", + "endline": 178, + "complexity": 6, + "lineno": 84, + "col_offset": 0, + "name": "detections_to_pascal_voc", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 232, + "complexity": 5, + "lineno": 181, + "col_offset": 0, + "name": "load_pascal_voc_annotations", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 347, + "complexity": 4, + "lineno": 339, + "col_offset": 0, + "name": "parse_polygon_points", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 81, + "complexity": 3, + "lineno": 19, + "col_offset": 0, + "name": "object_to_pascal_voc", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 355, + "complexity": 3, + "lineno": 351, + "col_offset": 0, + "name": "_get_required_text", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 336, + "complexity": 1, + "lineno": 335, + "col_offset": 0, + "name": "_with_poly_mask", + "closures": [] + } + ], + "src\\supervision\\dataset\\formats\\yolo.py": [ + { + "type": "function", + "rank": "C", + "endline": 129, + "complexity": 14, + "lineno": 70, + "col_offset": 0, + "name": "_extract_class_names", + "closures": [ + { + "type": "function", + "rank": "A", + "endline": 109, + "complexity": 4, + "lineno": 100, + "col_offset": 8, + "name": "_is_int_like", + "closures": [] + } + ] + }, + { + "type": "function", + "rank": "C", + "endline": 419, + "complexity": 13, + "lineno": 296, + "col_offset": 0, + "name": "detections_to_yolo_annotations", + "closures": [] + }, + { + "type": "function", + "rank": "C", + "endline": 184, + "complexity": 11, + "lineno": 138, + "col_offset": 0, + "name": "yolo_annotations_to_detections", + "closures": [] + }, + { + "type": "function", + "rank": "B", + "endline": 271, + "complexity": 9, + "lineno": 187, + "col_offset": 0, + "name": "load_yolo_annotations", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 293, + "complexity": 3, + "lineno": 274, + "col_offset": 0, + "name": "object_to_yolo", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 62, + "complexity": 2, + "lineno": 51, + "col_offset": 0, + "name": "_polygons_to_masks", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 67, + "complexity": 2, + "lineno": 66, + "col_offset": 0, + "name": "_with_seg_mask", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 471, + "complexity": 2, + "lineno": 422, + "col_offset": 0, + "name": "save_yolo_annotations", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 37, + "complexity": 1, + "lineno": 28, + "col_offset": 0, + "name": "_parse_box", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 43, + "complexity": 1, + "lineno": 41, + "col_offset": 0, + "name": "_box_to_polygon", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 48, + "complexity": 1, + "lineno": 47, + "col_offset": 0, + "name": "_parse_polygon", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 135, + "complexity": 1, + "lineno": 133, + "col_offset": 0, + "name": "_image_name_to_annotation_name", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 477, + "complexity": 1, + "lineno": 474, + "col_offset": 0, + "name": "save_data_yaml", + "closures": [] + } + ], + "src\\supervision\\detection\\compact_mask.py": [ + { + "type": "function", + "rank": "C", + "endline": 125, + "complexity": 12, + "lineno": 49, + "col_offset": 0, + "name": "_rle_split_cols", + "closures": [] + }, + { + "type": "function", + "rank": "B", + "endline": 330, + "complexity": 9, + "lineno": 249, + "col_offset": 0, + "name": "_rle_resize", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 861, + "complexity": 9, + "lineno": 795, + "col_offset": 4, + "name": "__getitem__", + "classname": "CompactMask", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 1185, + "complexity": 9, + "lineno": 1067, + "col_offset": 4, + "name": "with_offset", + "classname": "CompactMask", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 1306, + "complexity": 9, + "lineno": 1192, + "col_offset": 4, + "name": "resize", + "classname": "CompactMask", + "closures": [] + }, + { + "type": "function", + "rank": "B", + "endline": 246, + "complexity": 7, + "lineno": 193, + "col_offset": 0, + "name": "_rle_join_cols", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 982, + "complexity": 7, + "lineno": 924, + "col_offset": 4, + "name": "merge", + "classname": "CompactMask", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 190, + "complexity": 5, + "lineno": 128, + "col_offset": 0, + "name": "_rle_scale_col", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 549, + "complexity": 5, + "lineno": 476, + "col_offset": 4, + "name": "from_dense", + "classname": "CompactMask", + "closures": [] + }, + { + "type": "class", + "rank": "A", + "endline": 1306, + "complexity": 4, + "lineno": 389, + "col_offset": 0, + "name": "CompactMask", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 469, + "complexity": 1, + "lineno": 459, + "col_offset": 4, + "name": "__init__", + "classname": "CompactMask", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 549, + "complexity": 5, + "lineno": 476, + "col_offset": 4, + "name": "from_dense", + "classname": "CompactMask", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 585, + "complexity": 2, + "lineno": 555, + "col_offset": 4, + "name": "to_dense", + "classname": "CompactMask", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 614, + "complexity": 1, + "lineno": 587, + "col_offset": 4, + "name": "crop", + "classname": "CompactMask", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 638, + "complexity": 1, + "lineno": 620, + "col_offset": 4, + "name": "__len__", + "classname": "CompactMask", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 643, + "complexity": 2, + "lineno": 640, + "col_offset": 4, + "name": "__iter__", + "classname": "CompactMask", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 665, + "complexity": 1, + "lineno": 646, + "col_offset": 4, + "name": "shape", + "classname": "CompactMask", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 687, + "complexity": 1, + "lineno": 668, + "col_offset": 4, + "name": "offsets", + "classname": "CompactMask", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 720, + "complexity": 2, + "lineno": 690, + "col_offset": 4, + "name": "bbox_xyxy", + "classname": "CompactMask", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 741, + "complexity": 1, + "lineno": 723, + "col_offset": 4, + "name": "dtype", + "classname": "CompactMask", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 764, + "complexity": 2, + "lineno": 744, + "col_offset": 4, + "name": "area", + "classname": "CompactMask", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 793, + "complexity": 2, + "lineno": 766, + "col_offset": 4, + "name": "sum", + "classname": "CompactMask", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 861, + "complexity": 9, + "lineno": 795, + "col_offset": 4, + "name": "__getitem__", + "classname": "CompactMask", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 889, + "complexity": 2, + "lineno": 863, + "col_offset": 4, + "name": "__array__", + "classname": "CompactMask", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 917, + "complexity": 3, + "lineno": 891, + "col_offset": 4, + "name": "__eq__", + "classname": "CompactMask", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 982, + "complexity": 7, + "lineno": 924, + "col_offset": 4, + "name": "merge", + "classname": "CompactMask", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 1060, + "complexity": 4, + "lineno": 984, + "col_offset": 4, + "name": "repack", + "classname": "CompactMask", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 1185, + "complexity": 9, + "lineno": 1067, + "col_offset": 4, + "name": "with_offset", + "classname": "CompactMask", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 1306, + "complexity": 9, + "lineno": 1192, + "col_offset": 4, + "name": "resize", + "classname": "CompactMask", + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "endline": 1060, + "complexity": 4, + "lineno": 984, + "col_offset": 4, + "name": "repack", + "classname": "CompactMask", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 386, + "complexity": 3, + "lineno": 341, + "col_offset": 0, + "name": "_resize_crop", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 917, + "complexity": 3, + "lineno": 891, + "col_offset": 4, + "name": "__eq__", + "classname": "CompactMask", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 585, + "complexity": 2, + "lineno": 555, + "col_offset": 4, + "name": "to_dense", + "classname": "CompactMask", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 643, + "complexity": 2, + "lineno": 640, + "col_offset": 4, + "name": "__iter__", + "classname": "CompactMask", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 720, + "complexity": 2, + "lineno": 690, + "col_offset": 4, + "name": "bbox_xyxy", + "classname": "CompactMask", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 764, + "complexity": 2, + "lineno": 744, + "col_offset": 4, + "name": "area", + "classname": "CompactMask", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 793, + "complexity": 2, + "lineno": 766, + "col_offset": 4, + "name": "sum", + "classname": "CompactMask", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 889, + "complexity": 2, + "lineno": 863, + "col_offset": 4, + "name": "__array__", + "classname": "CompactMask", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 46, + "complexity": 1, + "lineno": 27, + "col_offset": 0, + "name": "_rle_area", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 469, + "complexity": 1, + "lineno": 459, + "col_offset": 4, + "name": "__init__", + "classname": "CompactMask", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 614, + "complexity": 1, + "lineno": 587, + "col_offset": 4, + "name": "crop", + "classname": "CompactMask", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 638, + "complexity": 1, + "lineno": 620, + "col_offset": 4, + "name": "__len__", + "classname": "CompactMask", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 665, + "complexity": 1, + "lineno": 646, + "col_offset": 4, + "name": "shape", + "classname": "CompactMask", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 687, + "complexity": 1, + "lineno": 668, + "col_offset": 4, + "name": "offsets", + "classname": "CompactMask", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 741, + "complexity": 1, + "lineno": 723, + "col_offset": 4, + "name": "dtype", + "classname": "CompactMask", + "closures": [] + } + ], + "src\\supervision\\detection\\core.py": [ + { + "type": "method", + "rank": "C", + "endline": 1958, + "complexity": 20, + "lineno": 1461, + "col_offset": 4, + "name": "from_vlm", + "classname": "Detections", + "closures": [] + }, + { + "type": "method", + "rank": "C", + "endline": 839, + "complexity": 17, + "lineno": 718, + "col_offset": 4, + "name": "from_sam3", + "classname": "Detections", + "closures": [] + }, + { + "type": "function", + "rank": "C", + "endline": 2762, + "complexity": 15, + "lineno": 2678, + "col_offset": 0, + "name": "_merge_detection_group", + "closures": [] + }, + { + "type": "function", + "rank": "C", + "endline": 2855, + "complexity": 12, + "lineno": 2767, + "col_offset": 0, + "name": "merge_inner_detection_object_pair", + "closures": [] + }, + { + "type": "method", + "rank": "C", + "endline": 2280, + "complexity": 12, + "lineno": 2217, + "col_offset": 4, + "name": "get_anchors_coordinates", + "classname": "Detections", + "closures": [] + }, + { + "type": "method", + "rank": "C", + "endline": 333, + "complexity": 11, + "lineno": 254, + "col_offset": 4, + "name": "from_ultralytics", + "classname": "Detections", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 926, + "complexity": 10, + "lineno": 843, + "col_offset": 4, + "name": "from_azure_analyze_image", + "classname": "Detections", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 2632, + "complexity": 9, + "lineno": 2540, + "col_offset": 4, + "name": "with_nmm", + "classname": "Detections", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 2214, + "complexity": 8, + "lineno": 2111, + "col_offset": 4, + "name": "merge", + "classname": "Detections", + "closures": [ + { + "type": "function", + "rank": "C", + "endline": 2195, + "complexity": 11, + "lineno": 2182, + "col_offset": 8, + "name": "stack_or_none", + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "B", + "endline": 2328, + "complexity": 8, + "lineno": 2282, + "col_offset": 4, + "name": "__getitem__", + "classname": "Detections", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 2002, + "complexity": 7, + "lineno": 1961, + "col_offset": 4, + "name": "from_easyocr", + "classname": "Detections", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 2538, + "complexity": 7, + "lineno": 2463, + "col_offset": 4, + "name": "with_nms", + "classname": "Detections", + "closures": [] + }, + { + "type": "class", + "rank": "B", + "endline": 2632, + "complexity": 6, + "lineno": 68, + "col_offset": 0, + "name": "Detections", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 171, + "complexity": 1, + "lineno": 164, + "col_offset": 4, + "name": "__post_init__", + "classname": "Detections", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 178, + "complexity": 1, + "lineno": 174, + "col_offset": 4, + "name": "__len__", + "classname": "Detections", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 203, + "complexity": 6, + "lineno": 180, + "col_offset": 4, + "name": "__iter__", + "classname": "Detections", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 217, + "complexity": 2, + "lineno": 206, + "col_offset": 4, + "name": "__eq__", + "classname": "Detections", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 250, + "complexity": 1, + "lineno": 222, + "col_offset": 4, + "name": "from_yolov5", + "classname": "Detections", + "closures": [] + }, + { + "type": "method", + "rank": "C", + "endline": 333, + "complexity": 11, + "lineno": 254, + "col_offset": 4, + "name": "from_ultralytics", + "classname": "Detections", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 369, + "complexity": 2, + "lineno": 336, + "col_offset": 4, + "name": "from_yolo_nas", + "classname": "Detections", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 414, + "complexity": 1, + "lineno": 373, + "col_offset": 4, + "name": "from_tensorflow", + "classname": "Detections", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 450, + "complexity": 2, + "lineno": 418, + "col_offset": 4, + "name": "from_deepsparse", + "classname": "Detections", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 487, + "complexity": 2, + "lineno": 454, + "col_offset": 4, + "name": "from_mmdetection", + "classname": "Detections", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 567, + "complexity": 6, + "lineno": 492, + "col_offset": 4, + "name": "from_transformers", + "classname": "Detections", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 616, + "complexity": 2, + "lineno": 573, + "col_offset": 4, + "name": "from_detectron2", + "classname": "Detections", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 672, + "complexity": 4, + "lineno": 620, + "col_offset": 4, + "name": "from_inference", + "classname": "Detections", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 715, + "complexity": 4, + "lineno": 676, + "col_offset": 4, + "name": "from_sam", + "classname": "Detections", + "closures": [] + }, + { + "type": "method", + "rank": "C", + "endline": 839, + "complexity": 17, + "lineno": 718, + "col_offset": 4, + "name": "from_sam3", + "classname": "Detections", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 926, + "complexity": 10, + "lineno": 843, + "col_offset": 4, + "name": "from_azure_analyze_image", + "classname": "Detections", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 968, + "complexity": 2, + "lineno": 930, + "col_offset": 4, + "name": "from_paddledet", + "classname": "Detections", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 1458, + "complexity": 5, + "lineno": 972, + "col_offset": 4, + "name": "from_lmm", + "classname": "Detections", + "closures": [] + }, + { + "type": "method", + "rank": "C", + "endline": 1958, + "complexity": 20, + "lineno": 1461, + "col_offset": 4, + "name": "from_vlm", + "classname": "Detections", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 2002, + "complexity": 7, + "lineno": 1961, + "col_offset": 4, + "name": "from_easyocr", + "classname": "Detections", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 2061, + "complexity": 3, + "lineno": 2007, + "col_offset": 4, + "name": "from_ncnn", + "classname": "Detections", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 2083, + "complexity": 1, + "lineno": 2065, + "col_offset": 4, + "name": "empty", + "classname": "Detections", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 2108, + "complexity": 1, + "lineno": 2086, + "col_offset": 4, + "name": "is_empty", + "classname": "Detections", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 2214, + "complexity": 8, + "lineno": 2111, + "col_offset": 4, + "name": "merge", + "classname": "Detections", + "closures": [ + { + "type": "function", + "rank": "C", + "endline": 2195, + "complexity": 11, + "lineno": 2182, + "col_offset": 8, + "name": "stack_or_none", + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "C", + "endline": 2280, + "complexity": 12, + "lineno": 2217, + "col_offset": 4, + "name": "get_anchors_coordinates", + "classname": "Detections", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 2328, + "complexity": 8, + "lineno": 2282, + "col_offset": 4, + "name": "__getitem__", + "classname": "Detections", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 2364, + "complexity": 3, + "lineno": 2331, + "col_offset": 4, + "name": "__setitem__", + "classname": "Detections", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 2412, + "complexity": 5, + "lineno": 2367, + "col_offset": 4, + "name": "area", + "classname": "Detections", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 2424, + "complexity": 1, + "lineno": 2415, + "col_offset": 4, + "name": "box_area", + "classname": "Detections", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 2461, + "complexity": 1, + "lineno": 2427, + "col_offset": 4, + "name": "box_aspect_ratio", + "classname": "Detections", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 2538, + "complexity": 7, + "lineno": 2463, + "col_offset": 4, + "name": "with_nms", + "classname": "Detections", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 2632, + "complexity": 9, + "lineno": 2540, + "col_offset": 4, + "name": "with_nmm", + "classname": "Detections", + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "B", + "endline": 203, + "complexity": 6, + "lineno": 180, + "col_offset": 4, + "name": "__iter__", + "classname": "Detections", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 567, + "complexity": 6, + "lineno": 492, + "col_offset": 4, + "name": "from_transformers", + "classname": "Detections", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 2884, + "complexity": 5, + "lineno": 2860, + "col_offset": 0, + "name": "merge_inner_detections_objects", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 1458, + "complexity": 5, + "lineno": 972, + "col_offset": 4, + "name": "from_lmm", + "classname": "Detections", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 2412, + "complexity": 5, + "lineno": 2367, + "col_offset": 4, + "name": "area", + "classname": "Detections", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 672, + "complexity": 4, + "lineno": 620, + "col_offset": 4, + "name": "from_inference", + "classname": "Detections", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 715, + "complexity": 4, + "lineno": 676, + "col_offset": 4, + "name": "from_sam", + "classname": "Detections", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 2921, + "complexity": 3, + "lineno": 2902, + "col_offset": 0, + "name": "_validate_fields_both_defined_or_none", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 2061, + "complexity": 3, + "lineno": 2007, + "col_offset": 4, + "name": "from_ncnn", + "classname": "Detections", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 2364, + "complexity": 3, + "lineno": 2331, + "col_offset": 4, + "name": "__setitem__", + "classname": "Detections", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 217, + "complexity": 2, + "lineno": 206, + "col_offset": 4, + "name": "__eq__", + "classname": "Detections", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 369, + "complexity": 2, + "lineno": 336, + "col_offset": 4, + "name": "from_yolo_nas", + "classname": "Detections", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 450, + "complexity": 2, + "lineno": 418, + "col_offset": 4, + "name": "from_deepsparse", + "classname": "Detections", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 487, + "complexity": 2, + "lineno": 454, + "col_offset": 4, + "name": "from_mmdetection", + "classname": "Detections", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 616, + "complexity": 2, + "lineno": 573, + "col_offset": 4, + "name": "from_detectron2", + "classname": "Detections", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 968, + "complexity": 2, + "lineno": 930, + "col_offset": 4, + "name": "from_paddledet", + "classname": "Detections", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 2675, + "complexity": 1, + "lineno": 2635, + "col_offset": 0, + "name": "_merge_obb_corners", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 2899, + "complexity": 1, + "lineno": 2888, + "col_offset": 0, + "name": "merge_inner_detections_objects_without_iou", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 2934, + "complexity": 1, + "lineno": 2931, + "col_offset": 0, + "name": "validate_fields_both_defined_or_none", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 171, + "complexity": 1, + "lineno": 164, + "col_offset": 4, + "name": "__post_init__", + "classname": "Detections", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 178, + "complexity": 1, + "lineno": 174, + "col_offset": 4, + "name": "__len__", + "classname": "Detections", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 250, + "complexity": 1, + "lineno": 222, + "col_offset": 4, + "name": "from_yolov5", + "classname": "Detections", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 414, + "complexity": 1, + "lineno": 373, + "col_offset": 4, + "name": "from_tensorflow", + "classname": "Detections", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 2083, + "complexity": 1, + "lineno": 2065, + "col_offset": 4, + "name": "empty", + "classname": "Detections", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 2108, + "complexity": 1, + "lineno": 2086, + "col_offset": 4, + "name": "is_empty", + "classname": "Detections", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 2424, + "complexity": 1, + "lineno": 2415, + "col_offset": 4, + "name": "box_area", + "classname": "Detections", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 2461, + "complexity": 1, + "lineno": 2427, + "col_offset": 4, + "name": "box_aspect_ratio", + "classname": "Detections", + "closures": [] + } + ], + "src\\supervision\\detection\\line_zone.py": [ + { + "type": "method", + "rank": "C", + "endline": 873, + "complexity": 12, + "lineno": 769, + "col_offset": 4, + "name": "annotate", + "classname": "LineZoneAnnotatorMulticlass", + "closures": [] + }, + { + "type": "method", + "rank": "C", + "endline": 214, + "complexity": 11, + "lineno": 145, + "col_offset": 4, + "name": "trigger", + "classname": "LineZone", + "closures": [] + }, + { + "type": "class", + "rank": "B", + "endline": 873, + "complexity": 8, + "lineno": 713, + "col_offset": 0, + "name": "LineZoneAnnotatorMulticlass", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 767, + "complexity": 2, + "lineno": 714, + "col_offset": 4, + "name": "__init__", + "classname": "LineZoneAnnotatorMulticlass", + "closures": [] + }, + { + "type": "method", + "rank": "C", + "endline": 873, + "complexity": 12, + "lineno": 769, + "col_offset": 4, + "name": "annotate", + "classname": "LineZoneAnnotatorMulticlass", + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "B", + "endline": 327, + "complexity": 6, + "lineno": 307, + "col_offset": 4, + "name": "_update_class_id_to_name", + "classname": "LineZone", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 454, + "complexity": 5, + "lineno": 386, + "col_offset": 4, + "name": "annotate", + "classname": "LineZoneAnnotator", + "closures": [] + }, + { + "type": "class", + "rank": "A", + "endline": 327, + "complexity": 4, + "lineno": 26, + "col_offset": 0, + "name": "LineZone", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 127, + "complexity": 2, + "lineno": 91, + "col_offset": 4, + "name": "__init__", + "classname": "LineZone", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 131, + "complexity": 1, + "lineno": 130, + "col_offset": 4, + "name": "in_count", + "classname": "LineZone", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 135, + "complexity": 1, + "lineno": 134, + "col_offset": 4, + "name": "out_count", + "classname": "LineZone", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 139, + "complexity": 1, + "lineno": 138, + "col_offset": 4, + "name": "in_count_per_class", + "classname": "LineZone", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 143, + "complexity": 1, + "lineno": 142, + "col_offset": 4, + "name": "out_count_per_class", + "classname": "LineZone", + "closures": [] + }, + { + "type": "method", + "rank": "C", + "endline": 214, + "complexity": 11, + "lineno": 145, + "col_offset": 4, + "name": "trigger", + "classname": "LineZone", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 246, + "complexity": 2, + "lineno": 217, + "col_offset": 4, + "name": "_calculate_region_of_interest_limits", + "classname": "LineZone", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 305, + "complexity": 4, + "lineno": 248, + "col_offset": 4, + "name": "_compute_anchor_sides", + "classname": "LineZone", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 327, + "complexity": 6, + "lineno": 307, + "col_offset": 4, + "name": "_update_class_id_to_name", + "classname": "LineZone", + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "endline": 305, + "complexity": 4, + "lineno": 248, + "col_offset": 4, + "name": "_compute_anchor_sides", + "classname": "LineZone", + "closures": [] + }, + { + "type": "class", + "rank": "A", + "endline": 710, + "complexity": 4, + "lineno": 330, + "col_offset": 0, + "name": "LineZoneAnnotator", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 384, + "complexity": 3, + "lineno": 331, + "col_offset": 4, + "name": "__init__", + "classname": "LineZoneAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 454, + "complexity": 5, + "lineno": 386, + "col_offset": 4, + "name": "annotate", + "classname": "LineZoneAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 479, + "complexity": 4, + "lineno": 456, + "col_offset": 4, + "name": "_get_line_angle", + "classname": "LineZoneAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 543, + "complexity": 3, + "lineno": 481, + "col_offset": 4, + "name": "_calculate_anchor_in_frame", + "classname": "LineZoneAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 586, + "complexity": 3, + "lineno": 545, + "col_offset": 4, + "name": "_draw_basic_label", + "classname": "LineZoneAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 637, + "complexity": 2, + "lineno": 588, + "col_offset": 4, + "name": "_draw_oriented_label", + "classname": "LineZoneAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 710, + "complexity": 4, + "lineno": 641, + "col_offset": 4, + "name": "_make_label_image", + "classname": "LineZoneAnnotator", + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "endline": 479, + "complexity": 4, + "lineno": 456, + "col_offset": 4, + "name": "_get_line_angle", + "classname": "LineZoneAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 710, + "complexity": 4, + "lineno": 641, + "col_offset": 4, + "name": "_make_label_image", + "classname": "LineZoneAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 384, + "complexity": 3, + "lineno": 331, + "col_offset": 4, + "name": "__init__", + "classname": "LineZoneAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 543, + "complexity": 3, + "lineno": 481, + "col_offset": 4, + "name": "_calculate_anchor_in_frame", + "classname": "LineZoneAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 586, + "complexity": 3, + "lineno": 545, + "col_offset": 4, + "name": "_draw_basic_label", + "classname": "LineZoneAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 127, + "complexity": 2, + "lineno": 91, + "col_offset": 4, + "name": "__init__", + "classname": "LineZone", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 246, + "complexity": 2, + "lineno": 217, + "col_offset": 4, + "name": "_calculate_region_of_interest_limits", + "classname": "LineZone", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 637, + "complexity": 2, + "lineno": 588, + "col_offset": 4, + "name": "_draw_oriented_label", + "classname": "LineZoneAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 767, + "complexity": 2, + "lineno": 714, + "col_offset": 4, + "name": "__init__", + "classname": "LineZoneAnnotatorMulticlass", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 131, + "complexity": 1, + "lineno": 130, + "col_offset": 4, + "name": "in_count", + "classname": "LineZone", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 135, + "complexity": 1, + "lineno": 134, + "col_offset": 4, + "name": "out_count", + "classname": "LineZone", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 139, + "complexity": 1, + "lineno": 138, + "col_offset": 4, + "name": "in_count_per_class", + "classname": "LineZone", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 143, + "complexity": 1, + "lineno": 142, + "col_offset": 4, + "name": "out_count_per_class", + "classname": "LineZone", + "closures": [] + } + ], + "src\\supervision\\detection\\vlm.py": [ + { + "type": "function", + "rank": "E", + "endline": 851, + "complexity": 33, + "lineno": 678, + "col_offset": 0, + "name": "from_google_gemini_2_5", + "closures": [] + }, + { + "type": "function", + "rank": "C", + "endline": 394, + "complexity": 16, + "lineno": 305, + "col_offset": 0, + "name": "from_qwen_2_5_vl", + "closures": [] + }, + { + "type": "function", + "rank": "C", + "endline": 588, + "complexity": 15, + "lineno": 495, + "col_offset": 0, + "name": "from_florence_2", + "closures": [] + }, + { + "type": "function", + "rank": "C", + "endline": 675, + "complexity": 13, + "lineno": 591, + "col_offset": 0, + "name": "from_google_gemini_2_0", + "closures": [] + }, + { + "type": "function", + "rank": "B", + "endline": 203, + "complexity": 9, + "lineno": 163, + "col_offset": 0, + "name": "_validate_vlm_parameters", + "closures": [] + }, + { + "type": "function", + "rank": "B", + "endline": 492, + "complexity": 9, + "lineno": 424, + "col_offset": 0, + "name": "from_deepseek_vl_2", + "closures": [] + }, + { + "type": "function", + "rank": "B", + "endline": 916, + "complexity": 9, + "lineno": 855, + "col_offset": 0, + "name": "from_moondream", + "closures": [] + }, + { + "type": "function", + "rank": "B", + "endline": 257, + "complexity": 6, + "lineno": 215, + "col_offset": 0, + "name": "from_paligemma", + "closures": [] + }, + { + "type": "function", + "rank": "B", + "endline": 302, + "complexity": 6, + "lineno": 260, + "col_offset": 0, + "name": "recover_truncated_qwen_2_5_vl_response", + "closures": [] + }, + { + "type": "class", + "rank": "A", + "endline": 69, + "complexity": 4, + "lineno": 22, + "col_offset": 0, + "name": "LMM", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 51, + "complexity": 2, + "lineno": 50, + "col_offset": 4, + "name": "list", + "classname": "LMM", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 69, + "complexity": 4, + "lineno": 54, + "col_offset": 4, + "name": "from_value", + "classname": "LMM", + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "endline": 69, + "complexity": 4, + "lineno": 54, + "col_offset": 4, + "name": "from_value", + "classname": "LMM", + "closures": [] + }, + { + "type": "class", + "rank": "A", + "endline": 112, + "complexity": 4, + "lineno": 73, + "col_offset": 0, + "name": "VLM", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 98, + "complexity": 2, + "lineno": 97, + "col_offset": 4, + "name": "list", + "classname": "VLM", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 112, + "complexity": 4, + "lineno": 101, + "col_offset": 4, + "name": "from_value", + "classname": "VLM", + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "endline": 112, + "complexity": 4, + "lineno": 101, + "col_offset": 4, + "name": "from_value", + "classname": "VLM", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 51, + "complexity": 2, + "lineno": 50, + "col_offset": 4, + "name": "list", + "classname": "LMM", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 98, + "complexity": 2, + "lineno": 97, + "col_offset": 4, + "name": "list", + "classname": "VLM", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 212, + "complexity": 1, + "lineno": 211, + "col_offset": 0, + "name": "validate_vlm_parameters", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 420, + "complexity": 1, + "lineno": 397, + "col_offset": 0, + "name": "from_qwen_3_vl", + "closures": [] + } + ], + "src\\supervision\\detection\\tools\\csv_sink.py": [ + { + "type": "method", + "rank": "B", + "endline": 194, + "complexity": 9, + "lineno": 145, + "col_offset": 4, + "name": "parse_detection_data", + "classname": "CSVSink", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 230, + "complexity": 6, + "lineno": 196, + "col_offset": 4, + "name": "append", + "classname": "CSVSink", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 142, + "complexity": 5, + "lineno": 119, + "col_offset": 4, + "name": "_slice_value", + "classname": "CSVSink", + "closures": [] + }, + { + "type": "class", + "rank": "A", + "endline": 241, + "complexity": 4, + "lineno": 31, + "col_offset": 0, + "name": "CSVSink", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 86, + "complexity": 1, + "lineno": 75, + "col_offset": 4, + "name": "__init__", + "classname": "CSVSink", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 90, + "complexity": 1, + "lineno": 88, + "col_offset": 4, + "name": "__enter__", + "classname": "CSVSink", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 98, + "complexity": 1, + "lineno": 92, + "col_offset": 4, + "name": "__exit__", + "classname": "CSVSink", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 109, + "complexity": 3, + "lineno": 100, + "col_offset": 4, + "name": "open", + "classname": "CSVSink", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 116, + "complexity": 2, + "lineno": 111, + "col_offset": 4, + "name": "close", + "classname": "CSVSink", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 142, + "complexity": 5, + "lineno": 119, + "col_offset": 4, + "name": "_slice_value", + "classname": "CSVSink", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 194, + "complexity": 9, + "lineno": 145, + "col_offset": 4, + "name": "parse_detection_data", + "classname": "CSVSink", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 230, + "complexity": 6, + "lineno": 196, + "col_offset": 4, + "name": "append", + "classname": "CSVSink", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 241, + "complexity": 2, + "lineno": 234, + "col_offset": 4, + "name": "parse_field_names", + "classname": "CSVSink", + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "endline": 109, + "complexity": 3, + "lineno": 100, + "col_offset": 4, + "name": "open", + "classname": "CSVSink", + "closures": [] + }, + { + "type": "class", + "rank": "A", + "endline": 28, + "complexity": 2, + "lineno": 27, + "col_offset": 0, + "name": "WriterProtocol", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 28, + "complexity": 1, + "lineno": 28, + "col_offset": 4, + "name": "writerow", + "classname": "WriterProtocol", + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "endline": 116, + "complexity": 2, + "lineno": 111, + "col_offset": 4, + "name": "close", + "classname": "CSVSink", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 241, + "complexity": 2, + "lineno": 234, + "col_offset": 4, + "name": "parse_field_names", + "classname": "CSVSink", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 28, + "complexity": 1, + "lineno": 28, + "col_offset": 4, + "name": "writerow", + "classname": "WriterProtocol", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 86, + "complexity": 1, + "lineno": 75, + "col_offset": 4, + "name": "__init__", + "classname": "CSVSink", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 90, + "complexity": 1, + "lineno": 88, + "col_offset": 4, + "name": "__enter__", + "classname": "CSVSink", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 98, + "complexity": 1, + "lineno": 92, + "col_offset": 4, + "name": "__exit__", + "classname": "CSVSink", + "closures": [] + } + ], + "src\\supervision\\detection\\tools\\inference_slicer.py": [ + { + "type": "method", + "rank": "C", + "endline": 273, + "complexity": 17, + "lineno": 178, + "col_offset": 4, + "name": "__call__", + "classname": "InferenceSlicer", + "closures": [] + }, + { + "type": "method", + "rank": "C", + "endline": 335, + "complexity": 12, + "lineno": 275, + "col_offset": 4, + "name": "_run_callback", + "classname": "InferenceSlicer", + "closures": [] + }, + { + "type": "class", + "rank": "B", + "endline": 470, + "complexity": 8, + "lineno": 64, + "col_offset": 0, + "name": "InferenceSlicer", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 176, + "complexity": 2, + "lineno": 143, + "col_offset": 4, + "name": "__init__", + "classname": "InferenceSlicer", + "closures": [] + }, + { + "type": "method", + "rank": "C", + "endline": 273, + "complexity": 17, + "lineno": 178, + "col_offset": 4, + "name": "__call__", + "classname": "InferenceSlicer", + "closures": [] + }, + { + "type": "method", + "rank": "C", + "endline": 335, + "complexity": 12, + "lineno": 275, + "col_offset": 4, + "name": "_run_callback", + "classname": "InferenceSlicer", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 359, + "complexity": 7, + "lineno": 338, + "col_offset": 4, + "name": "_normalize_slice_wh", + "classname": "InferenceSlicer", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 385, + "complexity": 7, + "lineno": 363, + "col_offset": 4, + "name": "_normalize_overlap_wh", + "classname": "InferenceSlicer", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 450, + "complexity": 1, + "lineno": 389, + "col_offset": 4, + "name": "_generate_offset", + "classname": "InferenceSlicer", + "closures": [ + { + "type": "function", + "rank": "A", + "endline": 428, + "complexity": 5, + "lineno": 413, + "col_offset": 8, + "name": "_compute_axis_starts", + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "endline": 470, + "complexity": 5, + "lineno": 453, + "col_offset": 4, + "name": "_validate_overlap", + "classname": "InferenceSlicer", + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "B", + "endline": 359, + "complexity": 7, + "lineno": 338, + "col_offset": 4, + "name": "_normalize_slice_wh", + "classname": "InferenceSlicer", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 385, + "complexity": 7, + "lineno": 363, + "col_offset": 4, + "name": "_normalize_overlap_wh", + "classname": "InferenceSlicer", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 61, + "complexity": 5, + "lineno": 23, + "col_offset": 0, + "name": "move_detections", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 470, + "complexity": 5, + "lineno": 453, + "col_offset": 4, + "name": "_validate_overlap", + "classname": "InferenceSlicer", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 176, + "complexity": 2, + "lineno": 143, + "col_offset": 4, + "name": "__init__", + "classname": "InferenceSlicer", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 450, + "complexity": 1, + "lineno": 389, + "col_offset": 4, + "name": "_generate_offset", + "classname": "InferenceSlicer", + "closures": [ + { + "type": "function", + "rank": "A", + "endline": 428, + "complexity": 5, + "lineno": 413, + "col_offset": 8, + "name": "_compute_axis_starts", + "closures": [] + } + ] + } + ], + "src\\supervision\\detection\\tools\\json_sink.py": [ + { + "type": "method", + "rank": "B", + "endline": 198, + "complexity": 10, + "lineno": 148, + "col_offset": 4, + "name": "parse_detection_data", + "classname": "JSONSink", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 145, + "complexity": 5, + "lineno": 122, + "col_offset": 4, + "name": "_slice_value", + "classname": "JSONSink", + "closures": [] + }, + { + "type": "class", + "rank": "A", + "endline": 215, + "complexity": 4, + "lineno": 13, + "col_offset": 0, + "name": "JSONSink", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 60, + "complexity": 1, + "lineno": 51, + "col_offset": 4, + "name": "__init__", + "classname": "JSONSink", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 64, + "complexity": 1, + "lineno": 62, + "col_offset": 4, + "name": "__enter__", + "classname": "JSONSink", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 72, + "complexity": 1, + "lineno": 66, + "col_offset": 4, + "name": "__exit__", + "classname": "JSONSink", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 82, + "complexity": 3, + "lineno": 74, + "col_offset": 4, + "name": "open", + "classname": "JSONSink", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 106, + "complexity": 3, + "lineno": 85, + "col_offset": 4, + "name": "_json_default", + "classname": "JSONSink", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 119, + "complexity": 2, + "lineno": 109, + "col_offset": 4, + "name": "write_and_close", + "classname": "JSONSink", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 145, + "complexity": 5, + "lineno": 122, + "col_offset": 4, + "name": "_slice_value", + "classname": "JSONSink", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 198, + "complexity": 10, + "lineno": 148, + "col_offset": 4, + "name": "parse_detection_data", + "classname": "JSONSink", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 215, + "complexity": 1, + "lineno": 200, + "col_offset": 4, + "name": "append", + "classname": "JSONSink", + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "endline": 82, + "complexity": 3, + "lineno": 74, + "col_offset": 4, + "name": "open", + "classname": "JSONSink", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 106, + "complexity": 3, + "lineno": 85, + "col_offset": 4, + "name": "_json_default", + "classname": "JSONSink", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 119, + "complexity": 2, + "lineno": 109, + "col_offset": 4, + "name": "write_and_close", + "classname": "JSONSink", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 60, + "complexity": 1, + "lineno": 51, + "col_offset": 4, + "name": "__init__", + "classname": "JSONSink", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 64, + "complexity": 1, + "lineno": 62, + "col_offset": 4, + "name": "__enter__", + "classname": "JSONSink", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 72, + "complexity": 1, + "lineno": 66, + "col_offset": 4, + "name": "__exit__", + "classname": "JSONSink", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 215, + "complexity": 1, + "lineno": 200, + "col_offset": 4, + "name": "append", + "classname": "JSONSink", + "closures": [] + } + ], + "src\\supervision\\detection\\tools\\polygon_zone.py": [ + { + "type": "class", + "rank": "A", + "endline": 108, + "complexity": 4, + "lineno": 18, + "col_offset": 0, + "name": "PolygonZone", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 70, + "complexity": 2, + "lineno": 56, + "col_offset": 4, + "name": "__init__", + "classname": "PolygonZone", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 108, + "complexity": 3, + "lineno": 73, + "col_offset": 4, + "name": "trigger", + "classname": "PolygonZone", + "closures": [] + } + ] + }, + { + "type": "class", + "rank": "A", + "endline": 203, + "complexity": 4, + "lineno": 111, + "col_offset": 0, + "name": "PolygonZoneAnnotator", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 153, + "complexity": 1, + "lineno": 131, + "col_offset": 4, + "name": "__init__", + "classname": "PolygonZoneAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 203, + "complexity": 4, + "lineno": 155, + "col_offset": 4, + "name": "annotate", + "classname": "PolygonZoneAnnotator", + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "endline": 203, + "complexity": 4, + "lineno": 155, + "col_offset": 4, + "name": "annotate", + "classname": "PolygonZoneAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 108, + "complexity": 3, + "lineno": 73, + "col_offset": 4, + "name": "trigger", + "classname": "PolygonZone", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 70, + "complexity": 2, + "lineno": 56, + "col_offset": 4, + "name": "__init__", + "classname": "PolygonZone", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 153, + "complexity": 1, + "lineno": 131, + "col_offset": 4, + "name": "__init__", + "classname": "PolygonZoneAnnotator", + "closures": [] + } + ], + "src\\supervision\\detection\\tools\\smoother.py": [ + { + "type": "method", + "rank": "B", + "endline": 164, + "complexity": 9, + "lineno": 133, + "col_offset": 4, + "name": "get_track", + "classname": "DetectionsSmoother", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 131, + "complexity": 8, + "lineno": 100, + "col_offset": 4, + "name": "update_with_detections", + "classname": "DetectionsSmoother", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 184, + "complexity": 8, + "lineno": 166, + "col_offset": 4, + "name": "get_smoothed_detections", + "classname": "DetectionsSmoother", + "closures": [] + }, + { + "type": "class", + "rank": "B", + "endline": 184, + "complexity": 7, + "lineno": 14, + "col_offset": 0, + "name": "DetectionsSmoother", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 97, + "complexity": 1, + "lineno": 90, + "col_offset": 4, + "name": "__init__", + "classname": "DetectionsSmoother", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 131, + "complexity": 8, + "lineno": 100, + "col_offset": 4, + "name": "update_with_detections", + "classname": "DetectionsSmoother", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 164, + "complexity": 9, + "lineno": 133, + "col_offset": 4, + "name": "get_track", + "classname": "DetectionsSmoother", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 184, + "complexity": 8, + "lineno": 166, + "col_offset": 4, + "name": "get_smoothed_detections", + "classname": "DetectionsSmoother", + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "endline": 97, + "complexity": 1, + "lineno": 90, + "col_offset": 4, + "name": "__init__", + "classname": "DetectionsSmoother", + "closures": [] + } + ], + "src\\supervision\\detection\\tools\\transformers.py": [ + { + "type": "function", + "rank": "A", + "endline": 78, + "complexity": 5, + "lineno": 43, + "col_offset": 0, + "name": "process_transformers_v4_segmentation_result", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 144, + "complexity": 4, + "lineno": 112, + "col_offset": 0, + "name": "process_transformers_v5_semantic_or_instance_segmentation_result", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 250, + "complexity": 4, + "lineno": 224, + "col_offset": 0, + "name": "append_class_names_to_data", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 178, + "complexity": 3, + "lineno": 148, + "col_offset": 0, + "name": "process_transformers_v4_panoptic_segmentation_result", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 108, + "complexity": 2, + "lineno": 82, + "col_offset": 0, + "name": "process_transformers_v5_segmentation_result", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 204, + "complexity": 2, + "lineno": 182, + "col_offset": 0, + "name": "process_transformers_v5_panoptic_segmentation_result", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 39, + "complexity": 1, + "lineno": 14, + "col_offset": 0, + "name": "process_transformers_detection_result", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 221, + "complexity": 1, + "lineno": 207, + "col_offset": 0, + "name": "png_string_to_segmentation_array", + "closures": [] + } + ], + "src\\supervision\\detection\\utils\\boxes.py": [ + { + "type": "function", + "rank": "A", + "endline": 417, + "complexity": 4, + "lineno": 347, + "col_offset": 0, + "name": "spread_out_boxes", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 269, + "complexity": 3, + "lineno": 244, + "col_offset": 0, + "name": "obb_polygon_area", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 309, + "complexity": 3, + "lineno": 272, + "col_offset": 0, + "name": "xyxyxyxy_to_xyxy", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 96, + "complexity": 2, + "lineno": 52, + "col_offset": 0, + "name": "pad_boxes", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 49, + "complexity": 1, + "lineno": 10, + "col_offset": 0, + "name": "clip_boxes", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 161, + "complexity": 1, + "lineno": 105, + "col_offset": 0, + "name": "denormalize_boxes", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 192, + "complexity": 1, + "lineno": 164, + "col_offset": 0, + "name": "move_boxes", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 241, + "complexity": 1, + "lineno": 195, + "col_offset": 0, + "name": "move_oriented_boxes", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 344, + "complexity": 1, + "lineno": 312, + "col_offset": 0, + "name": "scale_boxes", + "closures": [] + } + ], + "src\\supervision\\detection\\utils\\converters.py": [ + { + "type": "function", + "rank": "B", + "endline": 379, + "complexity": 6, + "lineno": 332, + "col_offset": 0, + "name": "_base48_decode", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 415, + "complexity": 5, + "lineno": 382, + "col_offset": 0, + "name": "_base48_encode", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 646, + "complexity": 5, + "lineno": 575, + "col_offset": 0, + "name": "rle_to_mask", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 304, + "complexity": 4, + "lineno": 248, + "col_offset": 0, + "name": "xyxy_to_mask", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 721, + "complexity": 4, + "lineno": 649, + "col_offset": 0, + "name": "mask_to_rle", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 328, + "complexity": 3, + "lineno": 307, + "col_offset": 0, + "name": "mask_to_polygons", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 535, + "complexity": 3, + "lineno": 497, + "col_offset": 0, + "name": "_mask_to_rle_counts", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 199, + "complexity": 2, + "lineno": 155, + "col_offset": 0, + "name": "xyxy_to_xcycarh", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 245, + "complexity": 2, + "lineno": 202, + "col_offset": 0, + "name": "mask_to_xyxy", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 442, + "complexity": 2, + "lineno": 418, + "col_offset": 0, + "name": "_delta_decode", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 468, + "complexity": 2, + "lineno": 445, + "col_offset": 0, + "name": "_delta_encode", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 571, + "complexity": 2, + "lineno": 538, + "col_offset": 0, + "name": "_rle_counts_to_mask", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 28, + "complexity": 1, + "lineno": 12, + "col_offset": 0, + "name": "xyxy_to_polygons", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 49, + "complexity": 1, + "lineno": 31, + "col_offset": 0, + "name": "polygon_to_mask", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 82, + "complexity": 1, + "lineno": 52, + "col_offset": 0, + "name": "xywh_to_xyxy", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 116, + "complexity": 1, + "lineno": 85, + "col_offset": 0, + "name": "xyxy_to_xywh", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 152, + "complexity": 1, + "lineno": 119, + "col_offset": 0, + "name": "xcycwh_to_xyxy", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 494, + "complexity": 1, + "lineno": 471, + "col_offset": 0, + "name": "is_compressed_rle", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 738, + "complexity": 1, + "lineno": 724, + "col_offset": 0, + "name": "polygon_to_xyxy", + "closures": [] + } + ], + "src\\supervision\\detection\\utils\\internal.py": [ + { + "type": "function", + "rank": "D", + "endline": 198, + "complexity": 22, + "lineno": 54, + "col_offset": 0, + "name": "process_roboflow_result", + "closures": [] + }, + { + "type": "function", + "rank": "C", + "endline": 299, + "complexity": 18, + "lineno": 241, + "col_offset": 0, + "name": "merge_data", + "closures": [] + }, + { + "type": "function", + "rank": "C", + "endline": 353, + "complexity": 14, + "lineno": 302, + "col_offset": 0, + "name": "merge_metadata", + "closures": [] + }, + { + "type": "function", + "rank": "C", + "endline": 393, + "complexity": 13, + "lineno": 356, + "col_offset": 0, + "name": "get_data_item", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 51, + "complexity": 5, + "lineno": 18, + "col_offset": 0, + "name": "extract_ultralytics_masks", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 237, + "complexity": 5, + "lineno": 220, + "col_offset": 0, + "name": "is_metadata_equal", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 216, + "complexity": 3, + "lineno": 202, + "col_offset": 0, + "name": "is_data_equal", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 416, + "complexity": 1, + "lineno": 396, + "col_offset": 0, + "name": "cross_product", + "closures": [] + } + ], + "src\\supervision\\detection\\utils\\iou_and_nms.py": [ + { + "type": "function", + "rank": "C", + "endline": 566, + "complexity": 20, + "lineno": 426, + "col_offset": 0, + "name": "oriented_box_iou_batch", + "closures": [] + }, + { + "type": "function", + "rank": "C", + "endline": 829, + "complexity": 14, + "lineno": 736, + "col_offset": 0, + "name": "mask_iou_batch", + "closures": [] + }, + { + "type": "function", + "rank": "C", + "endline": 1330, + "complexity": 12, + "lineno": 1238, + "col_offset": 0, + "name": "oriented_box_non_max_suppression", + "closures": [] + }, + { + "type": "function", + "rank": "C", + "endline": 1453, + "complexity": 12, + "lineno": 1358, + "col_offset": 0, + "name": "oriented_box_non_max_merge", + "closures": [ + { + "type": "function", + "rank": "A", + "endline": 1450, + "complexity": 1, + "lineno": 1445, + "col_offset": 4, + "name": "group_within", + "closures": [] + } + ] + }, + { + "type": "function", + "rank": "B", + "endline": 669, + "complexity": 10, + "lineno": 569, + "col_offset": 0, + "name": "compact_mask_iou_batch", + "closures": [] + }, + { + "type": "function", + "rank": "B", + "endline": 1102, + "complexity": 7, + "lineno": 1030, + "col_offset": 0, + "name": "mask_non_max_merge", + "closures": [] + }, + { + "type": "function", + "rank": "B", + "endline": 1166, + "complexity": 7, + "lineno": 1136, + "col_offset": 0, + "name": "_non_max_merge_per_category", + "closures": [] + }, + { + "type": "function", + "rank": "B", + "endline": 360, + "complexity": 6, + "lineno": 304, + "col_offset": 0, + "name": "box_iou_batch_with_jaccard", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 261, + "complexity": 5, + "lineno": 162, + "col_offset": 0, + "name": "box_iou_batch", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 896, + "complexity": 5, + "lineno": 832, + "col_offset": 0, + "name": "mask_non_max_suppression", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 1027, + "complexity": 5, + "lineno": 973, + "col_offset": 0, + "name": "_group_overlapping_masks", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 159, + "complexity": 4, + "lineno": 90, + "col_offset": 0, + "name": "box_iou", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 733, + "complexity": 4, + "lineno": 672, + "col_offset": 0, + "name": "_mask_iou_batch_split", + "closures": [] + }, + { + "type": "class", + "rank": "A", + "endline": 50, + "complexity": 4, + "lineno": 16, + "col_offset": 0, + "name": "OverlapFilter", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 36, + "complexity": 1, + "lineno": 35, + "col_offset": 4, + "name": "list", + "classname": "OverlapFilter", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 50, + "complexity": 4, + "lineno": 39, + "col_offset": 4, + "name": "from_value", + "classname": "OverlapFilter", + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "endline": 50, + "complexity": 4, + "lineno": 39, + "col_offset": 4, + "name": "from_value", + "classname": "OverlapFilter", + "closures": [] + }, + { + "type": "class", + "rank": "A", + "endline": 86, + "complexity": 4, + "lineno": 54, + "col_offset": 0, + "name": "OverlapMetric", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 72, + "complexity": 1, + "lineno": 71, + "col_offset": 4, + "name": "list", + "classname": "OverlapMetric", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 86, + "complexity": 4, + "lineno": 75, + "col_offset": 4, + "name": "from_value", + "classname": "OverlapMetric", + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "endline": 86, + "complexity": 4, + "lineno": 75, + "col_offset": 4, + "name": "from_value", + "classname": "OverlapMetric", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 935, + "complexity": 3, + "lineno": 916, + "col_offset": 0, + "name": "_nms_loop_from_iou_matrix", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 1133, + "complexity": 3, + "lineno": 1105, + "col_offset": 0, + "name": "_greedy_nmm_via_iou_callback", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 301, + "complexity": 2, + "lineno": 264, + "col_offset": 0, + "name": "_jaccard", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 913, + "complexity": 2, + "lineno": 899, + "col_offset": 0, + "name": "_prepare_predictions_for_nms", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 970, + "complexity": 2, + "lineno": 938, + "col_offset": 0, + "name": "box_non_max_suppression", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 375, + "complexity": 1, + "lineno": 363, + "col_offset": 0, + "name": "_polygon_areas", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 390, + "complexity": 1, + "lineno": 378, + "col_offset": 0, + "name": "_aabb_envelopes", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 423, + "complexity": 1, + "lineno": 394, + "col_offset": 0, + "name": "_overlapping_envelope_pairs", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 1202, + "complexity": 1, + "lineno": 1169, + "col_offset": 0, + "name": "_group_overlapping_boxes", + "closures": [ + { + "type": "function", + "rank": "A", + "endline": 1198, + "complexity": 1, + "lineno": 1192, + "col_offset": 4, + "name": "iou_against_candidate", + "closures": [] + } + ] + }, + { + "type": "function", + "rank": "A", + "endline": 1235, + "complexity": 1, + "lineno": 1206, + "col_offset": 0, + "name": "box_non_max_merge", + "closures": [ + { + "type": "function", + "rank": "A", + "endline": 1232, + "complexity": 1, + "lineno": 1230, + "col_offset": 4, + "name": "group_within", + "closures": [] + } + ] + }, + { + "type": "function", + "rank": "A", + "endline": 1354, + "complexity": 1, + "lineno": 1333, + "col_offset": 0, + "name": "_group_overlapping_oriented_boxes", + "closures": [ + { + "type": "function", + "rank": "A", + "endline": 1350, + "complexity": 1, + "lineno": 1344, + "col_offset": 4, + "name": "iou_against_candidate", + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "endline": 36, + "complexity": 1, + "lineno": 35, + "col_offset": 4, + "name": "list", + "classname": "OverlapFilter", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 72, + "complexity": 1, + "lineno": 71, + "col_offset": 4, + "name": "list", + "classname": "OverlapMetric", + "closures": [] + } + ], + "src\\supervision\\detection\\utils\\masks.py": [ + { + "type": "function", + "rank": "C", + "endline": 426, + "complexity": 12, + "lineno": 291, + "col_offset": 0, + "name": "filter_segments_by_distance", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 87, + "complexity": 5, + "lineno": 12, + "col_offset": 0, + "name": "move_masks", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 147, + "complexity": 5, + "lineno": 90, + "col_offset": 0, + "name": "calculate_masks_centroids", + "closures": [ + { + "type": "function", + "rank": "A", + "endline": 140, + "complexity": 1, + "lineno": 137, + "col_offset": 4, + "name": "sum_over_mask", + "closures": [] + } + ] + }, + { + "type": "function", + "rank": "A", + "endline": 198, + "complexity": 4, + "lineno": 151, + "col_offset": 0, + "name": "contains_holes", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 260, + "complexity": 3, + "lineno": 201, + "col_offset": 0, + "name": "contains_multiple_segments", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 288, + "complexity": 1, + "lineno": 263, + "col_offset": 0, + "name": "resize_masks", + "closures": [] + } + ], + "src\\supervision\\detection\\utils\\polygons.py": [ + { + "type": "function", + "rank": "B", + "endline": 40, + "complexity": 9, + "lineno": 8, + "col_offset": 0, + "name": "filter_polygons_by_area", + "closures": [] + }, + { + "type": "function", + "rank": "B", + "endline": 116, + "complexity": 7, + "lineno": 44, + "col_offset": 0, + "name": "approximate_polygon", + "closures": [] + } + ], + "src\\supervision\\detection\\utils\\vlms.py": [ + { + "type": "function", + "rank": "B", + "endline": 62, + "complexity": 6, + "lineno": 4, + "col_offset": 0, + "name": "edit_distance", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 100, + "complexity": 3, + "lineno": 65, + "col_offset": 0, + "name": "fuzzy_match_index", + "closures": [] + } + ], + "src\\supervision\\draw\\color.py": [ + { + "type": "method", + "rank": "B", + "endline": 146, + "complexity": 8, + "lineno": 106, + "col_offset": 4, + "name": "from_hex", + "classname": "Color", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 232, + "complexity": 5, + "lineno": 205, + "col_offset": 4, + "name": "from_rgba_tuple", + "classname": "Color", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 262, + "complexity": 5, + "lineno": 235, + "col_offset": 4, + "name": "from_bgra_tuple", + "classname": "Color", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 401, + "complexity": 5, + "lineno": 395, + "col_offset": 4, + "name": "__eq__", + "classname": "Color", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 62, + "complexity": 4, + "lineno": 57, + "col_offset": 0, + "name": "_validate_color_hex", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 174, + "complexity": 4, + "lineno": 149, + "col_offset": 4, + "name": "from_rgb_tuple", + "classname": "Color", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 202, + "complexity": 4, + "lineno": 177, + "col_offset": 4, + "name": "from_bgr_tuple", + "classname": "Color", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 509, + "complexity": 4, + "lineno": 479, + "col_offset": 4, + "name": "from_matplotlib", + "classname": "ColorPalette", + "closures": [] + }, + { + "type": "class", + "rank": "A", + "endline": 401, + "complexity": 3, + "lineno": 66, + "col_offset": 0, + "name": "Color", + "methods": [ + { + "type": "method", + "rank": "B", + "endline": 146, + "complexity": 8, + "lineno": 106, + "col_offset": 4, + "name": "from_hex", + "classname": "Color", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 174, + "complexity": 4, + "lineno": 149, + "col_offset": 4, + "name": "from_rgb_tuple", + "classname": "Color", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 202, + "complexity": 4, + "lineno": 177, + "col_offset": 4, + "name": "from_bgr_tuple", + "classname": "Color", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 232, + "complexity": 5, + "lineno": 205, + "col_offset": 4, + "name": "from_rgba_tuple", + "classname": "Color", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 262, + "complexity": 5, + "lineno": 235, + "col_offset": 4, + "name": "from_bgra_tuple", + "classname": "Color", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 285, + "complexity": 2, + "lineno": 264, + "col_offset": 4, + "name": "as_hex", + "classname": "Color", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 302, + "complexity": 1, + "lineno": 287, + "col_offset": 4, + "name": "as_rgb", + "classname": "Color", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 319, + "complexity": 1, + "lineno": 304, + "col_offset": 4, + "name": "as_bgr", + "classname": "Color", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 336, + "complexity": 1, + "lineno": 321, + "col_offset": 4, + "name": "as_rgba", + "classname": "Color", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 353, + "complexity": 1, + "lineno": 338, + "col_offset": 4, + "name": "as_bgra", + "classname": "Color", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 357, + "complexity": 1, + "lineno": 356, + "col_offset": 4, + "name": "WHITE", + "classname": "Color", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 361, + "complexity": 1, + "lineno": 360, + "col_offset": 4, + "name": "BLACK", + "classname": "Color", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 365, + "complexity": 1, + "lineno": 364, + "col_offset": 4, + "name": "GREY", + "classname": "Color", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 369, + "complexity": 1, + "lineno": 368, + "col_offset": 4, + "name": "RED", + "classname": "Color", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 373, + "complexity": 1, + "lineno": 372, + "col_offset": 4, + "name": "GREEN", + "classname": "Color", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 377, + "complexity": 1, + "lineno": 376, + "col_offset": 4, + "name": "BLUE", + "classname": "Color", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 381, + "complexity": 1, + "lineno": 380, + "col_offset": 4, + "name": "YELLOW", + "classname": "Color", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 385, + "complexity": 1, + "lineno": 384, + "col_offset": 4, + "name": "ROBOFLOW", + "classname": "Color", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 388, + "complexity": 1, + "lineno": 387, + "col_offset": 4, + "name": "__hash__", + "classname": "Color", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 393, + "complexity": 2, + "lineno": 390, + "col_offset": 4, + "name": "__repr__", + "classname": "Color", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 401, + "complexity": 5, + "lineno": 395, + "col_offset": 4, + "name": "__eq__", + "classname": "Color", + "closures": [] + } + ] + }, + { + "type": "function", + "rank": "A", + "endline": 572, + "complexity": 2, + "lineno": 547, + "col_offset": 0, + "name": "unify_to_bgr", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 285, + "complexity": 2, + "lineno": 264, + "col_offset": 4, + "name": "as_hex", + "classname": "Color", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 393, + "complexity": 2, + "lineno": 390, + "col_offset": 4, + "name": "__repr__", + "classname": "Color", + "closures": [] + }, + { + "type": "class", + "rank": "A", + "endline": 544, + "complexity": 2, + "lineno": 406, + "col_offset": 0, + "name": "ColorPalette", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 428, + "complexity": 1, + "lineno": 410, + "col_offset": 4, + "name": "DEFAULT", + "classname": "ColorPalette", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 449, + "complexity": 1, + "lineno": 431, + "col_offset": 4, + "name": "ROBOFLOW", + "classname": "ColorPalette", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 453, + "complexity": 1, + "lineno": 452, + "col_offset": 4, + "name": "LEGACY", + "classname": "ColorPalette", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 476, + "complexity": 2, + "lineno": 456, + "col_offset": 4, + "name": "from_hex", + "classname": "ColorPalette", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 509, + "complexity": 4, + "lineno": 479, + "col_offset": 4, + "name": "from_matplotlib", + "classname": "ColorPalette", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 535, + "complexity": 2, + "lineno": 512, + "col_offset": 4, + "name": "by_idx", + "classname": "ColorPalette", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 544, + "complexity": 1, + "lineno": 537, + "col_offset": 4, + "name": "__len__", + "classname": "ColorPalette", + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "endline": 476, + "complexity": 2, + "lineno": 456, + "col_offset": 4, + "name": "from_hex", + "classname": "ColorPalette", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 535, + "complexity": 2, + "lineno": 512, + "col_offset": 4, + "name": "by_idx", + "classname": "ColorPalette", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 302, + "complexity": 1, + "lineno": 287, + "col_offset": 4, + "name": "as_rgb", + "classname": "Color", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 319, + "complexity": 1, + "lineno": 304, + "col_offset": 4, + "name": "as_bgr", + "classname": "Color", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 336, + "complexity": 1, + "lineno": 321, + "col_offset": 4, + "name": "as_rgba", + "classname": "Color", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 353, + "complexity": 1, + "lineno": 338, + "col_offset": 4, + "name": "as_bgra", + "classname": "Color", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 357, + "complexity": 1, + "lineno": 356, + "col_offset": 4, + "name": "WHITE", + "classname": "Color", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 361, + "complexity": 1, + "lineno": 360, + "col_offset": 4, + "name": "BLACK", + "classname": "Color", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 365, + "complexity": 1, + "lineno": 364, + "col_offset": 4, + "name": "GREY", + "classname": "Color", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 369, + "complexity": 1, + "lineno": 368, + "col_offset": 4, + "name": "RED", + "classname": "Color", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 373, + "complexity": 1, + "lineno": 372, + "col_offset": 4, + "name": "GREEN", + "classname": "Color", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 377, + "complexity": 1, + "lineno": 376, + "col_offset": 4, + "name": "BLUE", + "classname": "Color", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 381, + "complexity": 1, + "lineno": 380, + "col_offset": 4, + "name": "YELLOW", + "classname": "Color", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 385, + "complexity": 1, + "lineno": 384, + "col_offset": 4, + "name": "ROBOFLOW", + "classname": "Color", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 388, + "complexity": 1, + "lineno": 387, + "col_offset": 4, + "name": "__hash__", + "classname": "Color", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 428, + "complexity": 1, + "lineno": 410, + "col_offset": 4, + "name": "DEFAULT", + "classname": "ColorPalette", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 449, + "complexity": 1, + "lineno": 431, + "col_offset": 4, + "name": "ROBOFLOW", + "classname": "ColorPalette", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 453, + "complexity": 1, + "lineno": 452, + "col_offset": 4, + "name": "LEGACY", + "classname": "ColorPalette", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 544, + "complexity": 1, + "lineno": 537, + "col_offset": 4, + "name": "__len__", + "classname": "ColorPalette", + "closures": [] + } + ], + "src\\supervision\\draw\\utils.py": [ + { + "type": "function", + "rank": "B", + "endline": 368, + "complexity": 9, + "lineno": 301, + "col_offset": 0, + "name": "draw_image", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 163, + "complexity": 3, + "lineno": 114, + "col_offset": 0, + "name": "draw_rounded_rectangle", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 111, + "complexity": 2, + "lineno": 72, + "col_offset": 0, + "name": "draw_filled_rectangle", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 215, + "complexity": 2, + "lineno": 189, + "col_offset": 0, + "name": "draw_filled_polygon", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 298, + "complexity": 2, + "lineno": 218, + "col_offset": 0, + "name": "draw_text", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 420, + "complexity": 2, + "lineno": 396, + "col_offset": 0, + "name": "calculate_optimal_line_thickness", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 41, + "complexity": 1, + "lineno": 14, + "col_offset": 0, + "name": "draw_line", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 69, + "complexity": 1, + "lineno": 44, + "col_offset": 0, + "name": "draw_rectangle", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 186, + "complexity": 1, + "lineno": 166, + "col_offset": 0, + "name": "draw_polygon", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 393, + "complexity": 1, + "lineno": 371, + "col_offset": 0, + "name": "calculate_optimal_text_scale", + "closures": [] + } + ], + "src\\supervision\\geometry\\core.py": [ + { + "type": "class", + "rank": "A", + "endline": 26, + "complexity": 2, + "lineno": 8, + "col_offset": 0, + "name": "Position", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 26, + "complexity": 1, + "lineno": 25, + "col_offset": 4, + "name": "list", + "classname": "Position", + "closures": [] + } + ] + }, + { + "type": "class", + "rank": "A", + "endline": 69, + "complexity": 2, + "lineno": 30, + "col_offset": 0, + "name": "Point", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 60, + "complexity": 1, + "lineno": 53, + "col_offset": 4, + "name": "as_xy_int_tuple", + "classname": "Point", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 69, + "complexity": 1, + "lineno": 62, + "col_offset": 4, + "name": "as_xy_float_tuple", + "classname": "Point", + "closures": [] + } + ] + }, + { + "type": "class", + "rank": "A", + "endline": 142, + "complexity": 2, + "lineno": 73, + "col_offset": 0, + "name": "Vector", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 108, + "complexity": 1, + "lineno": 99, + "col_offset": 4, + "name": "magnitude", + "classname": "Vector", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 120, + "complexity": 1, + "lineno": 111, + "col_offset": 4, + "name": "center", + "classname": "Vector", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 142, + "complexity": 1, + "lineno": 123, + "col_offset": 4, + "name": "cross_product", + "classname": "Vector", + "closures": [] + } + ] + }, + { + "type": "class", + "rank": "A", + "endline": 201, + "complexity": 2, + "lineno": 146, + "col_offset": 0, + "name": "Rect", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 178, + "complexity": 1, + "lineno": 176, + "col_offset": 4, + "name": "from_xyxy", + "classname": "Rect", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 182, + "complexity": 1, + "lineno": 181, + "col_offset": 4, + "name": "top_left", + "classname": "Rect", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 186, + "complexity": 1, + "lineno": 185, + "col_offset": 4, + "name": "bottom_right", + "classname": "Rect", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 193, + "complexity": 1, + "lineno": 188, + "col_offset": 4, + "name": "pad", + "classname": "Rect", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 201, + "complexity": 1, + "lineno": 196, + "col_offset": 4, + "name": "as_xyxy_int_tuple", + "classname": "Rect", + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "endline": 26, + "complexity": 1, + "lineno": 25, + "col_offset": 4, + "name": "list", + "classname": "Position", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 60, + "complexity": 1, + "lineno": 53, + "col_offset": 4, + "name": "as_xy_int_tuple", + "classname": "Point", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 69, + "complexity": 1, + "lineno": 62, + "col_offset": 4, + "name": "as_xy_float_tuple", + "classname": "Point", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 108, + "complexity": 1, + "lineno": 99, + "col_offset": 4, + "name": "magnitude", + "classname": "Vector", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 120, + "complexity": 1, + "lineno": 111, + "col_offset": 4, + "name": "center", + "classname": "Vector", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 142, + "complexity": 1, + "lineno": 123, + "col_offset": 4, + "name": "cross_product", + "classname": "Vector", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 178, + "complexity": 1, + "lineno": 176, + "col_offset": 4, + "name": "from_xyxy", + "classname": "Rect", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 182, + "complexity": 1, + "lineno": 181, + "col_offset": 4, + "name": "top_left", + "classname": "Rect", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 186, + "complexity": 1, + "lineno": 185, + "col_offset": 4, + "name": "bottom_right", + "classname": "Rect", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 193, + "complexity": 1, + "lineno": 188, + "col_offset": 4, + "name": "pad", + "classname": "Rect", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 201, + "complexity": 1, + "lineno": 196, + "col_offset": 4, + "name": "as_xyxy_int_tuple", + "classname": "Rect", + "closures": [] + } + ], + "src\\supervision\\geometry\\utils.py": [ + { + "type": "function", + "rank": "A", + "endline": 51, + "complexity": 3, + "lineno": 7, + "col_offset": 0, + "name": "get_polygon_center", + "closures": [] + } + ], + "src\\supervision\\key_points\\annotators.py": [ + { + "type": "method", + "rank": "C", + "endline": 258, + "complexity": 16, + "lineno": 141, + "col_offset": 4, + "name": "annotate", + "classname": "EdgeAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "C", + "endline": 905, + "complexity": 13, + "lineno": 740, + "col_offset": 4, + "name": "annotate", + "classname": "VertexLabelAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "C", + "endline": 296, + "complexity": 11, + "lineno": 268, + "col_offset": 4, + "name": "__init__", + "classname": "_BaseVertexEllipseAnnotator", + "closures": [] + }, + { + "type": "class", + "rank": "B", + "endline": 258, + "complexity": 10, + "lineno": 111, + "col_offset": 0, + "name": "EdgeAnnotator", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 138, + "complexity": 1, + "lineno": 117, + "col_offset": 4, + "name": "__init__", + "classname": "EdgeAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "C", + "endline": 258, + "complexity": 16, + "lineno": 141, + "col_offset": 4, + "name": "annotate", + "classname": "EdgeAnnotator", + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "B", + "endline": 367, + "complexity": 10, + "lineno": 330, + "col_offset": 4, + "name": "_iter_ellipse_params", + "classname": "_BaseVertexEllipseAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 697, + "complexity": 9, + "lineno": 606, + "col_offset": 4, + "name": "annotate", + "classname": "VertexEllipseHaloAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 108, + "complexity": 8, + "lineno": 51, + "col_offset": 4, + "name": "annotate", + "classname": "VertexAnnotator", + "closures": [] + }, + { + "type": "class", + "rank": "B", + "endline": 367, + "complexity": 8, + "lineno": 261, + "col_offset": 0, + "name": "_BaseVertexEllipseAnnotator", + "methods": [ + { + "type": "method", + "rank": "C", + "endline": 296, + "complexity": 11, + "lineno": 268, + "col_offset": 4, + "name": "__init__", + "classname": "_BaseVertexEllipseAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 313, + "complexity": 3, + "lineno": 298, + "col_offset": 4, + "name": "_get_covariances", + "classname": "_BaseVertexEllipseAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 328, + "complexity": 5, + "lineno": 315, + "col_offset": 4, + "name": "_decompose_covariance", + "classname": "_BaseVertexEllipseAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 367, + "complexity": 10, + "lineno": 330, + "col_offset": 4, + "name": "_iter_ellipse_params", + "classname": "_BaseVertexEllipseAnnotator", + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "B", + "endline": 957, + "complexity": 7, + "lineno": 930, + "col_offset": 4, + "name": "_resolve_labels", + "classname": "VertexLabelAnnotator", + "closures": [] + }, + { + "type": "class", + "rank": "B", + "endline": 108, + "complexity": 6, + "lineno": 30, + "col_offset": 0, + "name": "VertexAnnotator", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 48, + "complexity": 1, + "lineno": 37, + "col_offset": 4, + "name": "__init__", + "classname": "VertexAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 108, + "complexity": 8, + "lineno": 51, + "col_offset": 4, + "name": "annotate", + "classname": "VertexAnnotator", + "closures": [] + } + ] + }, + { + "type": "class", + "rank": "B", + "endline": 697, + "complexity": 6, + "lineno": 568, + "col_offset": 0, + "name": "VertexEllipseHaloAnnotator", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 603, + "complexity": 1, + "lineno": 583, + "col_offset": 4, + "name": "__init__", + "classname": "VertexEllipseHaloAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 697, + "complexity": 9, + "lineno": 606, + "col_offset": 4, + "name": "annotate", + "classname": "VertexEllipseHaloAnnotator", + "closures": [] + } + ] + }, + { + "type": "class", + "rank": "B", + "endline": 972, + "complexity": 6, + "lineno": 703, + "col_offset": 0, + "name": "VertexLabelAnnotator", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 738, + "complexity": 1, + "lineno": 709, + "col_offset": 4, + "name": "__init__", + "classname": "VertexLabelAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "C", + "endline": 905, + "complexity": 13, + "lineno": 740, + "col_offset": 4, + "name": "annotate", + "classname": "VertexLabelAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 926, + "complexity": 1, + "lineno": 908, + "col_offset": 4, + "name": "get_text_bounding_box", + "classname": "VertexLabelAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 957, + "complexity": 7, + "lineno": 930, + "col_offset": 4, + "name": "_resolve_labels", + "classname": "VertexLabelAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 972, + "complexity": 3, + "lineno": 960, + "col_offset": 4, + "name": "_resolve_color_list", + "classname": "VertexLabelAnnotator", + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "endline": 328, + "complexity": 5, + "lineno": 315, + "col_offset": 4, + "name": "_decompose_covariance", + "classname": "_BaseVertexEllipseAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 468, + "complexity": 5, + "lineno": 406, + "col_offset": 4, + "name": "annotate", + "classname": "VertexEllipseAreaAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 565, + "complexity": 5, + "lineno": 504, + "col_offset": 4, + "name": "annotate", + "classname": "VertexEllipseOutlineAnnotator", + "closures": [] + }, + { + "type": "class", + "rank": "A", + "endline": 468, + "complexity": 4, + "lineno": 370, + "col_offset": 0, + "name": "VertexEllipseAreaAnnotator", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 403, + "complexity": 1, + "lineno": 383, + "col_offset": 4, + "name": "__init__", + "classname": "VertexEllipseAreaAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 468, + "complexity": 5, + "lineno": 406, + "col_offset": 4, + "name": "annotate", + "classname": "VertexEllipseAreaAnnotator", + "closures": [] + } + ] + }, + { + "type": "class", + "rank": "A", + "endline": 565, + "complexity": 4, + "lineno": 471, + "col_offset": 0, + "name": "VertexEllipseOutlineAnnotator", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 501, + "complexity": 1, + "lineno": 482, + "col_offset": 4, + "name": "__init__", + "classname": "VertexEllipseOutlineAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 565, + "complexity": 5, + "lineno": 504, + "col_offset": 4, + "name": "annotate", + "classname": "VertexEllipseOutlineAnnotator", + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "endline": 313, + "complexity": 3, + "lineno": 298, + "col_offset": 4, + "name": "_get_covariances", + "classname": "_BaseVertexEllipseAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 972, + "complexity": 3, + "lineno": 960, + "col_offset": 4, + "name": "_resolve_color_list", + "classname": "VertexLabelAnnotator", + "closures": [] + }, + { + "type": "class", + "rank": "A", + "endline": 27, + "complexity": 2, + "lineno": 24, + "col_offset": 0, + "name": "BaseKeyPointAnnotator", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 27, + "complexity": 1, + "lineno": 26, + "col_offset": 4, + "name": "annotate", + "classname": "BaseKeyPointAnnotator", + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "endline": 27, + "complexity": 1, + "lineno": 26, + "col_offset": 4, + "name": "annotate", + "classname": "BaseKeyPointAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 48, + "complexity": 1, + "lineno": 37, + "col_offset": 4, + "name": "__init__", + "classname": "VertexAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 138, + "complexity": 1, + "lineno": 117, + "col_offset": 4, + "name": "__init__", + "classname": "EdgeAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 403, + "complexity": 1, + "lineno": 383, + "col_offset": 4, + "name": "__init__", + "classname": "VertexEllipseAreaAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 501, + "complexity": 1, + "lineno": 482, + "col_offset": 4, + "name": "__init__", + "classname": "VertexEllipseOutlineAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 603, + "complexity": 1, + "lineno": 583, + "col_offset": 4, + "name": "__init__", + "classname": "VertexEllipseHaloAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 738, + "complexity": 1, + "lineno": 709, + "col_offset": 4, + "name": "__init__", + "classname": "VertexLabelAnnotator", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 926, + "complexity": 1, + "lineno": 908, + "col_offset": 4, + "name": "get_text_bounding_box", + "classname": "VertexLabelAnnotator", + "closures": [] + } + ], + "src\\supervision\\key_points\\core.py": [ + { + "type": "method", + "rank": "E", + "endline": 1059, + "complexity": 39, + "lineno": 925, + "col_offset": 4, + "name": "__getitem__", + "classname": "KeyPoints", + "closures": [] + }, + { + "type": "method", + "rank": "C", + "endline": 922, + "complexity": 15, + "lineno": 830, + "col_offset": 4, + "name": "_get_by_2d_bool_mask", + "classname": "KeyPoints", + "closures": [] + }, + { + "type": "method", + "rank": "C", + "endline": 594, + "complexity": 12, + "lineno": 472, + "col_offset": 4, + "name": "from_mediapipe", + "classname": "KeyPoints", + "closures": [] + }, + { + "type": "function", + "rank": "B", + "endline": 71, + "complexity": 10, + "lineno": 51, + "col_offset": 0, + "name": "_normalize_row_index", + "closures": [] + }, + { + "type": "class", + "rank": "B", + "endline": 1294, + "complexity": 7, + "lineno": 75, + "col_offset": 0, + "name": "KeyPoints", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 296, + "complexity": 4, + "lineno": 245, + "col_offset": 4, + "name": "__init__", + "classname": "KeyPoints", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 305, + "complexity": 1, + "lineno": 298, + "col_offset": 4, + "name": "__post_init__", + "classname": "KeyPoints", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 315, + "complexity": 1, + "lineno": 309, + "col_offset": 4, + "name": "confidence", + "classname": "KeyPoints", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 323, + "complexity": 1, + "lineno": 318, + "col_offset": 4, + "name": "confidence", + "classname": "KeyPoints", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 343, + "complexity": 1, + "lineno": 325, + "col_offset": 4, + "name": "__len__", + "classname": "KeyPoints", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 366, + "complexity": 4, + "lineno": 345, + "col_offset": 4, + "name": "__iter__", + "classname": "KeyPoints", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 383, + "complexity": 2, + "lineno": 369, + "col_offset": 4, + "name": "__eq__", + "classname": "KeyPoints", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 468, + "complexity": 7, + "lineno": 388, + "col_offset": 4, + "name": "from_inference", + "classname": "KeyPoints", + "closures": [] + }, + { + "type": "method", + "rank": "C", + "endline": 594, + "complexity": 12, + "lineno": 472, + "col_offset": 4, + "name": "from_mediapipe", + "classname": "KeyPoints", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 634, + "complexity": 3, + "lineno": 598, + "col_offset": 4, + "name": "from_ultralytics", + "classname": "KeyPoints", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 691, + "complexity": 6, + "lineno": 637, + "col_offset": 4, + "name": "from_yolo_nas", + "classname": "KeyPoints", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 743, + "complexity": 3, + "lineno": 695, + "col_offset": 4, + "name": "from_detectron2", + "classname": "KeyPoints", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 828, + "complexity": 4, + "lineno": 746, + "col_offset": 4, + "name": "from_transformers", + "classname": "KeyPoints", + "closures": [] + }, + { + "type": "method", + "rank": "C", + "endline": 922, + "complexity": 15, + "lineno": 830, + "col_offset": 4, + "name": "_get_by_2d_bool_mask", + "classname": "KeyPoints", + "closures": [] + }, + { + "type": "method", + "rank": "E", + "endline": 1059, + "complexity": 39, + "lineno": 925, + "col_offset": 4, + "name": "__getitem__", + "classname": "KeyPoints", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 1095, + "complexity": 3, + "lineno": 1062, + "col_offset": 4, + "name": "__setitem__", + "classname": "KeyPoints", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 1114, + "complexity": 1, + "lineno": 1098, + "col_offset": 4, + "name": "empty", + "classname": "KeyPoints", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 1134, + "complexity": 1, + "lineno": 1116, + "col_offset": 4, + "name": "is_empty", + "classname": "KeyPoints", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 1222, + "complexity": 7, + "lineno": 1136, + "col_offset": 4, + "name": "with_nms", + "classname": "KeyPoints", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 1294, + "complexity": 6, + "lineno": 1224, + "col_offset": 4, + "name": "as_detections", + "classname": "KeyPoints", + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "B", + "endline": 468, + "complexity": 7, + "lineno": 388, + "col_offset": 4, + "name": "from_inference", + "classname": "KeyPoints", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 1222, + "complexity": 7, + "lineno": 1136, + "col_offset": 4, + "name": "with_nms", + "classname": "KeyPoints", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 691, + "complexity": 6, + "lineno": 637, + "col_offset": 4, + "name": "from_yolo_nas", + "classname": "KeyPoints", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 1294, + "complexity": 6, + "lineno": 1224, + "col_offset": 4, + "name": "as_detections", + "classname": "KeyPoints", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 48, + "complexity": 4, + "lineno": 42, + "col_offset": 0, + "name": "_optional_array_equal", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 296, + "complexity": 4, + "lineno": 245, + "col_offset": 4, + "name": "__init__", + "classname": "KeyPoints", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 366, + "complexity": 4, + "lineno": 345, + "col_offset": 4, + "name": "__iter__", + "classname": "KeyPoints", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 828, + "complexity": 4, + "lineno": 746, + "col_offset": 4, + "name": "from_transformers", + "classname": "KeyPoints", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 634, + "complexity": 3, + "lineno": 598, + "col_offset": 4, + "name": "from_ultralytics", + "classname": "KeyPoints", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 743, + "complexity": 3, + "lineno": 695, + "col_offset": 4, + "name": "from_detectron2", + "classname": "KeyPoints", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 1095, + "complexity": 3, + "lineno": 1062, + "col_offset": 4, + "name": "__setitem__", + "classname": "KeyPoints", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 383, + "complexity": 2, + "lineno": 369, + "col_offset": 4, + "name": "__eq__", + "classname": "KeyPoints", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 305, + "complexity": 1, + "lineno": 298, + "col_offset": 4, + "name": "__post_init__", + "classname": "KeyPoints", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 315, + "complexity": 1, + "lineno": 309, + "col_offset": 4, + "name": "confidence", + "classname": "KeyPoints", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 323, + "complexity": 1, + "lineno": 318, + "col_offset": 4, + "name": "confidence", + "classname": "KeyPoints", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 343, + "complexity": 1, + "lineno": 325, + "col_offset": 4, + "name": "__len__", + "classname": "KeyPoints", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 1114, + "complexity": 1, + "lineno": 1098, + "col_offset": 4, + "name": "empty", + "classname": "KeyPoints", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 1134, + "complexity": 1, + "lineno": 1116, + "col_offset": 4, + "name": "is_empty", + "classname": "KeyPoints", + "closures": [] + } + ], + "src\\supervision\\key_points\\skeletons.py": [ + { + "type": "class", + "rank": "A", + "endline": 2635, + "complexity": 1, + "lineno": 6, + "col_offset": 0, + "name": "Skeleton", + "methods": [] + } + ], + "src\\supervision\\metrics\\core.py": [ + { + "type": "class", + "rank": "A", + "endline": 33, + "complexity": 2, + "lineno": 8, + "col_offset": 0, + "name": "Metric", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 19, + "complexity": 1, + "lineno": 14, + "col_offset": 4, + "name": "update", + "classname": "Metric", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 26, + "complexity": 1, + "lineno": 22, + "col_offset": 4, + "name": "reset", + "classname": "Metric", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 33, + "complexity": 1, + "lineno": 29, + "col_offset": 4, + "name": "compute", + "classname": "Metric", + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "endline": 19, + "complexity": 1, + "lineno": 14, + "col_offset": 4, + "name": "update", + "classname": "Metric", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 26, + "complexity": 1, + "lineno": 22, + "col_offset": 4, + "name": "reset", + "classname": "Metric", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 33, + "complexity": 1, + "lineno": 29, + "col_offset": 4, + "name": "compute", + "classname": "Metric", + "closures": [] + }, + { + "type": "class", + "rank": "A", + "endline": 48, + "complexity": 1, + "lineno": 36, + "col_offset": 0, + "name": "MetricTarget", + "methods": [] + }, + { + "type": "class", + "rank": "A", + "endline": 72, + "complexity": 1, + "lineno": 51, + "col_offset": 0, + "name": "AveragingMethod", + "methods": [] + } + ], + "src\\supervision\\metrics\\detection.py": [ + { + "type": "method", + "rank": "D", + "endline": 574, + "complexity": 22, + "lineno": 414, + "col_offset": 4, + "name": "evaluate_detection_batch", + "classname": "ConfusionMatrix", + "closures": [] + }, + { + "type": "method", + "rank": "C", + "endline": 747, + "complexity": 15, + "lineno": 660, + "col_offset": 4, + "name": "plot", + "classname": "ConfusionMatrix", + "closures": [] + }, + { + "type": "function", + "rank": "B", + "endline": 143, + "complexity": 10, + "lineno": 29, + "col_offset": 0, + "name": "detections_to_tensor", + "closures": [] + }, + { + "type": "function", + "rank": "B", + "endline": 183, + "complexity": 9, + "lineno": 146, + "col_offset": 0, + "name": "_validate_input_tensors", + "closures": [] + }, + { + "type": "class", + "rank": "B", + "endline": 747, + "complexity": 8, + "lineno": 200, + "col_offset": 0, + "name": "ConfusionMatrix", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 232, + "complexity": 5, + "lineno": 225, + "col_offset": 4, + "name": "__eq__", + "classname": "ConfusionMatrix", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 318, + "complexity": 2, + "lineno": 238, + "col_offset": 4, + "name": "from_detections", + "classname": "ConfusionMatrix", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 410, + "complexity": 2, + "lineno": 322, + "col_offset": 4, + "name": "from_tensors", + "classname": "ConfusionMatrix", + "closures": [] + }, + { + "type": "method", + "rank": "D", + "endline": 574, + "complexity": 22, + "lineno": 414, + "col_offset": 4, + "name": "evaluate_detection_batch", + "classname": "ConfusionMatrix", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 590, + "complexity": 2, + "lineno": 577, + "col_offset": 4, + "name": "_drop_extra_matches", + "classname": "ConfusionMatrix", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 657, + "complexity": 2, + "lineno": 593, + "col_offset": 4, + "name": "benchmark", + "classname": "ConfusionMatrix", + "closures": [] + }, + { + "type": "method", + "rank": "C", + "endline": 747, + "complexity": 15, + "lineno": 660, + "col_offset": 4, + "name": "plot", + "classname": "ConfusionMatrix", + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "B", + "endline": 980, + "complexity": 7, + "lineno": 887, + "col_offset": 4, + "name": "from_tensors", + "classname": "MeanAveragePrecision", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 232, + "complexity": 5, + "lineno": 225, + "col_offset": 4, + "name": "__eq__", + "classname": "ConfusionMatrix", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 1120, + "complexity": 5, + "lineno": 1067, + "col_offset": 4, + "name": "_average_precisions_per_class", + "classname": "MeanAveragePrecision", + "closures": [] + }, + { + "type": "class", + "rank": "A", + "endline": 1120, + "complexity": 4, + "lineno": 756, + "col_offset": 0, + "name": "MeanAveragePrecision", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 836, + "complexity": 2, + "lineno": 787, + "col_offset": 4, + "name": "from_detections", + "classname": "MeanAveragePrecision", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 883, + "complexity": 2, + "lineno": 840, + "col_offset": 4, + "name": "benchmark", + "classname": "MeanAveragePrecision", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 980, + "complexity": 7, + "lineno": 887, + "col_offset": 4, + "name": "from_tensors", + "classname": "MeanAveragePrecision", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 1019, + "complexity": 2, + "lineno": 984, + "col_offset": 4, + "name": "compute_average_precision", + "classname": "MeanAveragePrecision", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 1064, + "complexity": 4, + "lineno": 1022, + "col_offset": 4, + "name": "_match_detection_batch", + "classname": "MeanAveragePrecision", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 1120, + "complexity": 5, + "lineno": 1067, + "col_offset": 4, + "name": "_average_precisions_per_class", + "classname": "MeanAveragePrecision", + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "endline": 1064, + "complexity": 4, + "lineno": 1022, + "col_offset": 4, + "name": "_match_detection_batch", + "classname": "MeanAveragePrecision", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 25, + "complexity": 2, + "lineno": 22, + "col_offset": 0, + "name": "_assert_supported_target", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 318, + "complexity": 2, + "lineno": 238, + "col_offset": 4, + "name": "from_detections", + "classname": "ConfusionMatrix", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 410, + "complexity": 2, + "lineno": 322, + "col_offset": 4, + "name": "from_tensors", + "classname": "ConfusionMatrix", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 590, + "complexity": 2, + "lineno": 577, + "col_offset": 4, + "name": "_drop_extra_matches", + "classname": "ConfusionMatrix", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 657, + "complexity": 2, + "lineno": 593, + "col_offset": 4, + "name": "benchmark", + "classname": "ConfusionMatrix", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 836, + "complexity": 2, + "lineno": 787, + "col_offset": 4, + "name": "from_detections", + "classname": "MeanAveragePrecision", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 883, + "complexity": 2, + "lineno": 840, + "col_offset": 4, + "name": "benchmark", + "classname": "MeanAveragePrecision", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 1019, + "complexity": 2, + "lineno": 984, + "col_offset": 4, + "name": "compute_average_precision", + "classname": "MeanAveragePrecision", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 196, + "complexity": 1, + "lineno": 192, + "col_offset": 0, + "name": "validate_input_tensors", + "closures": [] + } + ], + "src\\supervision\\metrics\\f1_score.py": [ + { + "type": "method", + "rank": "C", + "endline": 256, + "complexity": 15, + "lineno": 152, + "col_offset": 4, + "name": "_compute", + "classname": "F1Score", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 488, + "complexity": 9, + "lineno": 464, + "col_offset": 4, + "name": "_filter_detections_by_size", + "classname": "F1Score", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 450, + "complexity": 7, + "lineno": 434, + "col_offset": 4, + "name": "_detections_content", + "classname": "F1Score", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 658, + "complexity": 7, + "lineno": 630, + "col_offset": 4, + "name": "to_pandas", + "classname": "F1ScoreResult", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 628, + "complexity": 6, + "lineno": 562, + "col_offset": 4, + "name": "__str__", + "classname": "F1ScoreResult", + "closures": [] + }, + { + "type": "class", + "rank": "A", + "endline": 508, + "complexity": 5, + "lineno": 30, + "col_offset": 0, + "name": "F1Score", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 83, + "complexity": 1, + "lineno": 66, + "col_offset": 4, + "name": "__init__", + "classname": "F1Score", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 90, + "complexity": 1, + "lineno": 85, + "col_offset": 4, + "name": "reset", + "classname": "F1Score", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 121, + "complexity": 4, + "lineno": 92, + "col_offset": 4, + "name": "update", + "classname": "F1Score", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 150, + "complexity": 1, + "lineno": 123, + "col_offset": 4, + "name": "compute", + "classname": "F1Score", + "closures": [] + }, + { + "type": "method", + "rank": "C", + "endline": 256, + "complexity": 15, + "lineno": 152, + "col_offset": 4, + "name": "_compute", + "classname": "F1Score", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 312, + "complexity": 5, + "lineno": 259, + "col_offset": 4, + "name": "_compute_f1_for_classes", + "classname": "F1Score", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 344, + "complexity": 4, + "lineno": 315, + "col_offset": 4, + "name": "_match_detection_batch", + "classname": "F1Score", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 402, + "complexity": 4, + "lineno": 347, + "col_offset": 4, + "name": "_compute_confusion_matrix", + "classname": "F1Score", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 432, + "complexity": 2, + "lineno": 405, + "col_offset": 4, + "name": "_compute_f1", + "classname": "F1Score", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 450, + "complexity": 7, + "lineno": 434, + "col_offset": 4, + "name": "_detections_content", + "classname": "F1Score", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 462, + "complexity": 4, + "lineno": 452, + "col_offset": 4, + "name": "_make_empty_content", + "classname": "F1Score", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 488, + "complexity": 9, + "lineno": 464, + "col_offset": 4, + "name": "_filter_detections_by_size", + "classname": "F1Score", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 508, + "complexity": 2, + "lineno": 490, + "col_offset": 4, + "name": "_filter_predictions_and_targets_by_size", + "classname": "F1Score", + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "endline": 312, + "complexity": 5, + "lineno": 259, + "col_offset": 4, + "name": "_compute_f1_for_classes", + "classname": "F1Score", + "closures": [] + }, + { + "type": "class", + "rank": "A", + "endline": 722, + "complexity": 5, + "lineno": 512, + "col_offset": 0, + "name": "F1ScoreResult", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 547, + "complexity": 1, + "lineno": 546, + "col_offset": 4, + "name": "f1_50", + "classname": "F1ScoreResult", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 551, + "complexity": 1, + "lineno": 550, + "col_offset": 4, + "name": "f1_75", + "classname": "F1ScoreResult", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 628, + "complexity": 6, + "lineno": 562, + "col_offset": 4, + "name": "__str__", + "classname": "F1ScoreResult", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 658, + "complexity": 7, + "lineno": 630, + "col_offset": 4, + "name": "to_pandas", + "classname": "F1ScoreResult", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 722, + "complexity": 5, + "lineno": 660, + "col_offset": 4, + "name": "plot", + "classname": "F1ScoreResult", + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "endline": 722, + "complexity": 5, + "lineno": 660, + "col_offset": 4, + "name": "plot", + "classname": "F1ScoreResult", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 121, + "complexity": 4, + "lineno": 92, + "col_offset": 4, + "name": "update", + "classname": "F1Score", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 344, + "complexity": 4, + "lineno": 315, + "col_offset": 4, + "name": "_match_detection_batch", + "classname": "F1Score", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 402, + "complexity": 4, + "lineno": 347, + "col_offset": 4, + "name": "_compute_confusion_matrix", + "classname": "F1Score", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 462, + "complexity": 4, + "lineno": 452, + "col_offset": 4, + "name": "_make_empty_content", + "classname": "F1Score", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 432, + "complexity": 2, + "lineno": 405, + "col_offset": 4, + "name": "_compute_f1", + "classname": "F1Score", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 508, + "complexity": 2, + "lineno": 490, + "col_offset": 4, + "name": "_filter_predictions_and_targets_by_size", + "classname": "F1Score", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 83, + "complexity": 1, + "lineno": 66, + "col_offset": 4, + "name": "__init__", + "classname": "F1Score", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 90, + "complexity": 1, + "lineno": 85, + "col_offset": 4, + "name": "reset", + "classname": "F1Score", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 150, + "complexity": 1, + "lineno": 123, + "col_offset": 4, + "name": "compute", + "classname": "F1Score", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 547, + "complexity": 1, + "lineno": 546, + "col_offset": 4, + "name": "f1_50", + "classname": "F1ScoreResult", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 551, + "complexity": 1, + "lineno": 550, + "col_offset": 4, + "name": "f1_75", + "classname": "F1ScoreResult", + "closures": [] + } + ], + "src\\supervision\\metrics\\mean_average_precision.py": [ + { + "type": "method", + "rank": "D", + "endline": 1094, + "complexity": 29, + "lineno": 825, + "col_offset": 4, + "name": "_accumulate", + "classname": "COCOEvaluator", + "closures": [ + { + "type": "function", + "rank": "A", + "endline": 1032, + "complexity": 1, + "lineno": 1010, + "col_offset": 8, + "name": "compute_average_precision", + "closures": [ + { + "type": "function", + "rank": "A", + "endline": 1028, + "complexity": 1, + "lineno": 1017, + "col_offset": 12, + "name": "mean_with_mask", + "closures": [] + } + ] + } + ] + }, + { + "type": "method", + "rank": "D", + "endline": 822, + "complexity": 28, + "lineno": 700, + "col_offset": 4, + "name": "_evaluate_image", + "classname": "COCOEvaluator", + "closures": [] + }, + { + "type": "method", + "rank": "C", + "endline": 366, + "complexity": 17, + "lineno": 314, + "col_offset": 4, + "name": "get_annotation_ids", + "classname": "EvaluationDataset", + "closures": [] + }, + { + "type": "method", + "rank": "C", + "endline": 1396, + "complexity": 17, + "lineno": 1337, + "col_offset": 4, + "name": "_prepare_targets", + "classname": "MeanAveragePrecision", + "closures": [] + }, + { + "type": "method", + "rank": "C", + "endline": 412, + "complexity": 14, + "lineno": 368, + "col_offset": 4, + "name": "get_category_ids", + "classname": "EvaluationDataset", + "closures": [] + }, + { + "type": "method", + "rank": "C", + "endline": 523, + "complexity": 14, + "lineno": 459, + "col_offset": 4, + "name": "load_predictions", + "classname": "EvaluationDataset", + "closures": [] + }, + { + "type": "class", + "rank": "C", + "endline": 1223, + "complexity": 13, + "lineno": 584, + "col_offset": 0, + "name": "COCOEvaluator", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 623, + "complexity": 3, + "lineno": 589, + "col_offset": 4, + "name": "__init__", + "classname": "COCOEvaluator", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 657, + "complexity": 6, + "lineno": 625, + "col_offset": 4, + "name": "_prepare_targets_and_predictions", + "classname": "COCOEvaluator", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 698, + "complexity": 9, + "lineno": 659, + "col_offset": 4, + "name": "_compute_iou", + "classname": "COCOEvaluator", + "closures": [] + }, + { + "type": "method", + "rank": "D", + "endline": 822, + "complexity": 28, + "lineno": 700, + "col_offset": 4, + "name": "_evaluate_image", + "classname": "COCOEvaluator", + "closures": [] + }, + { + "type": "method", + "rank": "D", + "endline": 1094, + "complexity": 29, + "lineno": 825, + "col_offset": 4, + "name": "_accumulate", + "classname": "COCOEvaluator", + "closures": [ + { + "type": "function", + "rank": "A", + "endline": 1032, + "complexity": 1, + "lineno": 1010, + "col_offset": 8, + "name": "compute_average_precision", + "closures": [ + { + "type": "function", + "rank": "A", + "endline": 1028, + "complexity": 1, + "lineno": 1017, + "col_offset": 12, + "name": "mean_with_mask", + "closures": [] + } + ] + } + ] + }, + { + "type": "method", + "rank": "A", + "endline": 1190, + "complexity": 2, + "lineno": 1097, + "col_offset": 4, + "name": "_pycocotools_summarize", + "classname": "COCOEvaluator", + "closures": [ + { + "type": "function", + "rank": "B", + "endline": 1143, + "complexity": 8, + "lineno": 1102, + "col_offset": 8, + "name": "_summarize", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 1187, + "complexity": 1, + "lineno": 1145, + "col_offset": 8, + "name": "_summarize_predictions", + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "B", + "endline": 1223, + "complexity": 6, + "lineno": 1192, + "col_offset": 4, + "name": "evaluate", + "classname": "COCOEvaluator", + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "C", + "endline": 1448, + "complexity": 11, + "lineno": 1399, + "col_offset": 4, + "name": "_prepare_predictions", + "classname": "MeanAveragePrecision", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 312, + "complexity": 10, + "lineno": 284, + "col_offset": 4, + "name": "create_class_members", + "classname": "EvaluationDataset", + "closures": [] + }, + { + "type": "class", + "rank": "B", + "endline": 523, + "complexity": 9, + "lineno": 249, + "col_offset": 0, + "name": "EvaluationDataset", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 278, + "complexity": 2, + "lineno": 255, + "col_offset": 4, + "name": "__init__", + "classname": "EvaluationDataset", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 282, + "complexity": 1, + "lineno": 281, + "col_offset": 4, + "name": "empty", + "classname": "EvaluationDataset", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 312, + "complexity": 10, + "lineno": 284, + "col_offset": 4, + "name": "create_class_members", + "classname": "EvaluationDataset", + "closures": [] + }, + { + "type": "method", + "rank": "C", + "endline": 366, + "complexity": 17, + "lineno": 314, + "col_offset": 4, + "name": "get_annotation_ids", + "classname": "EvaluationDataset", + "closures": [] + }, + { + "type": "method", + "rank": "C", + "endline": 412, + "complexity": 14, + "lineno": 368, + "col_offset": 4, + "name": "get_category_ids", + "classname": "EvaluationDataset", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 443, + "complexity": 8, + "lineno": 414, + "col_offset": 4, + "name": "get_image_ids", + "classname": "EvaluationDataset", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 457, + "complexity": 3, + "lineno": 445, + "col_offset": 4, + "name": "get_annotations", + "classname": "EvaluationDataset", + "closures": [] + }, + { + "type": "method", + "rank": "C", + "endline": 523, + "complexity": 14, + "lineno": 459, + "col_offset": 4, + "name": "load_predictions", + "classname": "EvaluationDataset", + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "B", + "endline": 698, + "complexity": 9, + "lineno": 659, + "col_offset": 4, + "name": "_compute_iou", + "classname": "COCOEvaluator", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 1335, + "complexity": 9, + "lineno": 1295, + "col_offset": 4, + "name": "update", + "classname": "MeanAveragePrecision", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 443, + "complexity": 8, + "lineno": 414, + "col_offset": 4, + "name": "get_image_ids", + "classname": "EvaluationDataset", + "closures": [] + }, + { + "type": "class", + "rank": "B", + "endline": 1520, + "complexity": 8, + "lineno": 1226, + "col_offset": 0, + "name": "MeanAveragePrecision", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 1286, + "complexity": 1, + "lineno": 1264, + "col_offset": 4, + "name": "__init__", + "classname": "MeanAveragePrecision", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 1293, + "complexity": 1, + "lineno": 1288, + "col_offset": 4, + "name": "reset", + "classname": "MeanAveragePrecision", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 1335, + "complexity": 9, + "lineno": 1295, + "col_offset": 4, + "name": "update", + "classname": "MeanAveragePrecision", + "closures": [] + }, + { + "type": "method", + "rank": "C", + "endline": 1396, + "complexity": 17, + "lineno": 1337, + "col_offset": 4, + "name": "_prepare_targets", + "classname": "MeanAveragePrecision", + "closures": [] + }, + { + "type": "method", + "rank": "C", + "endline": 1448, + "complexity": 11, + "lineno": 1399, + "col_offset": 4, + "name": "_prepare_predictions", + "classname": "MeanAveragePrecision", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 1520, + "complexity": 2, + "lineno": 1450, + "col_offset": 4, + "name": "compute", + "classname": "MeanAveragePrecision", + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "B", + "endline": 177, + "complexity": 7, + "lineno": 145, + "col_offset": 4, + "name": "to_pandas", + "classname": "MeanAveragePrecisionResult", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 657, + "complexity": 6, + "lineno": 625, + "col_offset": 4, + "name": "_prepare_targets_and_predictions", + "classname": "COCOEvaluator", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 1223, + "complexity": 6, + "lineno": 1192, + "col_offset": 4, + "name": "evaluate", + "classname": "COCOEvaluator", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 246, + "complexity": 5, + "lineno": 180, + "col_offset": 4, + "name": "plot", + "classname": "MeanAveragePrecisionResult", + "closures": [] + }, + { + "type": "class", + "rank": "A", + "endline": 246, + "complexity": 4, + "lineno": 30, + "col_offset": 0, + "name": "MeanAveragePrecisionResult", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 66, + "complexity": 2, + "lineno": 60, + "col_offset": 4, + "name": "map50_95", + "classname": "MeanAveragePrecisionResult", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 71, + "complexity": 1, + "lineno": 69, + "col_offset": 4, + "name": "map50", + "classname": "MeanAveragePrecisionResult", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 76, + "complexity": 1, + "lineno": 74, + "col_offset": 4, + "name": "map75", + "classname": "MeanAveragePrecisionResult", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 142, + "complexity": 4, + "lineno": 86, + "col_offset": 4, + "name": "__str__", + "classname": "MeanAveragePrecisionResult", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 177, + "complexity": 7, + "lineno": 145, + "col_offset": 4, + "name": "to_pandas", + "classname": "MeanAveragePrecisionResult", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 246, + "complexity": 5, + "lineno": 180, + "col_offset": 4, + "name": "plot", + "classname": "MeanAveragePrecisionResult", + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "endline": 142, + "complexity": 4, + "lineno": 86, + "col_offset": 4, + "name": "__str__", + "classname": "MeanAveragePrecisionResult", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 457, + "complexity": 3, + "lineno": 445, + "col_offset": 4, + "name": "get_annotations", + "classname": "EvaluationDataset", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 623, + "complexity": 3, + "lineno": 589, + "col_offset": 4, + "name": "__init__", + "classname": "COCOEvaluator", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 66, + "complexity": 2, + "lineno": 60, + "col_offset": 4, + "name": "map50_95", + "classname": "MeanAveragePrecisionResult", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 278, + "complexity": 2, + "lineno": 255, + "col_offset": 4, + "name": "__init__", + "classname": "EvaluationDataset", + "closures": [] + }, + { + "type": "class", + "rank": "A", + "endline": 580, + "complexity": 2, + "lineno": 546, + "col_offset": 0, + "name": "COCOEvaluatorParameters", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 580, + "complexity": 1, + "lineno": 551, + "col_offset": 4, + "name": "__init__", + "classname": "COCOEvaluatorParameters", + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "endline": 1190, + "complexity": 2, + "lineno": 1097, + "col_offset": 4, + "name": "_pycocotools_summarize", + "classname": "COCOEvaluator", + "closures": [ + { + "type": "function", + "rank": "B", + "endline": 1143, + "complexity": 8, + "lineno": 1102, + "col_offset": 8, + "name": "_summarize", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 1187, + "complexity": 1, + "lineno": 1145, + "col_offset": 8, + "name": "_summarize_predictions", + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "endline": 1520, + "complexity": 2, + "lineno": 1450, + "col_offset": 4, + "name": "compute", + "classname": "MeanAveragePrecision", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 71, + "complexity": 1, + "lineno": 69, + "col_offset": 4, + "name": "map50", + "classname": "MeanAveragePrecisionResult", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 76, + "complexity": 1, + "lineno": 74, + "col_offset": 4, + "name": "map75", + "classname": "MeanAveragePrecisionResult", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 282, + "complexity": 1, + "lineno": 281, + "col_offset": 4, + "name": "empty", + "classname": "EvaluationDataset", + "closures": [] + }, + { + "type": "class", + "rank": "A", + "endline": 543, + "complexity": 1, + "lineno": 535, + "col_offset": 0, + "name": "ObjectSize", + "methods": [] + }, + { + "type": "method", + "rank": "A", + "endline": 580, + "complexity": 1, + "lineno": 551, + "col_offset": 4, + "name": "__init__", + "classname": "COCOEvaluatorParameters", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 1286, + "complexity": 1, + "lineno": 1264, + "col_offset": 4, + "name": "__init__", + "classname": "MeanAveragePrecision", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 1293, + "complexity": 1, + "lineno": 1288, + "col_offset": 4, + "name": "reset", + "classname": "MeanAveragePrecision", + "closures": [] + } + ], + "src\\supervision\\metrics\\mean_average_recall.py": [ + { + "type": "method", + "rank": "C", + "endline": 468, + "complexity": 11, + "lineno": 381, + "col_offset": 4, + "name": "_compute", + "classname": "MeanAverageRecall", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 686, + "complexity": 9, + "lineno": 662, + "col_offset": 4, + "name": "_filter_detections_by_size", + "classname": "MeanAverageRecall", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 183, + "complexity": 7, + "lineno": 154, + "col_offset": 4, + "name": "to_pandas", + "classname": "MeanAverageRecallResult", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 645, + "complexity": 7, + "lineno": 629, + "col_offset": 4, + "name": "_detections_content", + "classname": "MeanAverageRecall", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 152, + "complexity": 6, + "lineno": 85, + "col_offset": 4, + "name": "__str__", + "classname": "MeanAverageRecallResult", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 256, + "complexity": 5, + "lineno": 185, + "col_offset": 4, + "name": "plot", + "classname": "MeanAverageRecallResult", + "closures": [] + }, + { + "type": "class", + "rank": "A", + "endline": 706, + "complexity": 5, + "lineno": 259, + "col_offset": 0, + "name": "MeanAverageRecall", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 312, + "complexity": 1, + "lineno": 297, + "col_offset": 4, + "name": "__init__", + "classname": "MeanAverageRecall", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 319, + "complexity": 1, + "lineno": 314, + "col_offset": 4, + "name": "reset", + "classname": "MeanAverageRecall", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 350, + "complexity": 4, + "lineno": 321, + "col_offset": 4, + "name": "update", + "classname": "MeanAverageRecall", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 379, + "complexity": 1, + "lineno": 352, + "col_offset": 4, + "name": "compute", + "classname": "MeanAverageRecall", + "closures": [] + }, + { + "type": "method", + "rank": "C", + "endline": 468, + "complexity": 11, + "lineno": 381, + "col_offset": 4, + "name": "_compute", + "classname": "MeanAverageRecall", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 505, + "complexity": 2, + "lineno": 471, + "col_offset": 4, + "name": "_compute_average_recall_for_classes", + "classname": "MeanAverageRecall", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 536, + "complexity": 4, + "lineno": 508, + "col_offset": 4, + "name": "_match_detection_batch", + "classname": "MeanAverageRecall", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 599, + "complexity": 4, + "lineno": 539, + "col_offset": 4, + "name": "_compute_confusion_matrix", + "classname": "MeanAverageRecall", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 627, + "complexity": 2, + "lineno": 602, + "col_offset": 4, + "name": "_compute_recall", + "classname": "MeanAverageRecall", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 645, + "complexity": 7, + "lineno": 629, + "col_offset": 4, + "name": "_detections_content", + "classname": "MeanAverageRecall", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 660, + "complexity": 4, + "lineno": 647, + "col_offset": 4, + "name": "_make_empty_content", + "classname": "MeanAverageRecall", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 686, + "complexity": 9, + "lineno": 662, + "col_offset": 4, + "name": "_filter_detections_by_size", + "classname": "MeanAverageRecall", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 706, + "complexity": 2, + "lineno": 688, + "col_offset": 4, + "name": "_filter_predictions_and_targets_by_size", + "classname": "MeanAverageRecall", + "closures": [] + } + ] + }, + { + "type": "class", + "rank": "A", + "endline": 256, + "complexity": 4, + "lineno": 31, + "col_offset": 0, + "name": "MeanAverageRecallResult", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 65, + "complexity": 1, + "lineno": 64, + "col_offset": 4, + "name": "mAR_at_1", + "classname": "MeanAverageRecallResult", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 69, + "complexity": 1, + "lineno": 68, + "col_offset": 4, + "name": "mAR_at_10", + "classname": "MeanAverageRecallResult", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 73, + "complexity": 1, + "lineno": 72, + "col_offset": 4, + "name": "mAR_at_100", + "classname": "MeanAverageRecallResult", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 152, + "complexity": 6, + "lineno": 85, + "col_offset": 4, + "name": "__str__", + "classname": "MeanAverageRecallResult", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 183, + "complexity": 7, + "lineno": 154, + "col_offset": 4, + "name": "to_pandas", + "classname": "MeanAverageRecallResult", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 256, + "complexity": 5, + "lineno": 185, + "col_offset": 4, + "name": "plot", + "classname": "MeanAverageRecallResult", + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "endline": 350, + "complexity": 4, + "lineno": 321, + "col_offset": 4, + "name": "update", + "classname": "MeanAverageRecall", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 536, + "complexity": 4, + "lineno": 508, + "col_offset": 4, + "name": "_match_detection_batch", + "classname": "MeanAverageRecall", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 599, + "complexity": 4, + "lineno": 539, + "col_offset": 4, + "name": "_compute_confusion_matrix", + "classname": "MeanAverageRecall", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 660, + "complexity": 4, + "lineno": 647, + "col_offset": 4, + "name": "_make_empty_content", + "classname": "MeanAverageRecall", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 505, + "complexity": 2, + "lineno": 471, + "col_offset": 4, + "name": "_compute_average_recall_for_classes", + "classname": "MeanAverageRecall", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 627, + "complexity": 2, + "lineno": 602, + "col_offset": 4, + "name": "_compute_recall", + "classname": "MeanAverageRecall", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 706, + "complexity": 2, + "lineno": 688, + "col_offset": 4, + "name": "_filter_predictions_and_targets_by_size", + "classname": "MeanAverageRecall", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 65, + "complexity": 1, + "lineno": 64, + "col_offset": 4, + "name": "mAR_at_1", + "classname": "MeanAverageRecallResult", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 69, + "complexity": 1, + "lineno": 68, + "col_offset": 4, + "name": "mAR_at_10", + "classname": "MeanAverageRecallResult", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 73, + "complexity": 1, + "lineno": 72, + "col_offset": 4, + "name": "mAR_at_100", + "classname": "MeanAverageRecallResult", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 312, + "complexity": 1, + "lineno": 297, + "col_offset": 4, + "name": "__init__", + "classname": "MeanAverageRecall", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 319, + "complexity": 1, + "lineno": 314, + "col_offset": 4, + "name": "reset", + "classname": "MeanAverageRecall", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 379, + "complexity": 1, + "lineno": 352, + "col_offset": 4, + "name": "compute", + "classname": "MeanAverageRecall", + "closures": [] + } + ], + "src\\supervision\\metrics\\precision.py": [ + { + "type": "method", + "rank": "C", + "endline": 259, + "complexity": 15, + "lineno": 155, + "col_offset": 4, + "name": "_compute", + "classname": "Precision", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 497, + "complexity": 9, + "lineno": 473, + "col_offset": 4, + "name": "_filter_detections_by_size", + "classname": "Precision", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 456, + "complexity": 7, + "lineno": 440, + "col_offset": 4, + "name": "_detections_content", + "classname": "Precision", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 671, + "complexity": 7, + "lineno": 643, + "col_offset": 4, + "name": "to_pandas", + "classname": "PrecisionResult", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 641, + "complexity": 6, + "lineno": 571, + "col_offset": 4, + "name": "__str__", + "classname": "PrecisionResult", + "closures": [] + }, + { + "type": "class", + "rank": "A", + "endline": 517, + "complexity": 5, + "lineno": 30, + "col_offset": 0, + "name": "Precision", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 86, + "complexity": 1, + "lineno": 69, + "col_offset": 4, + "name": "__init__", + "classname": "Precision", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 93, + "complexity": 1, + "lineno": 88, + "col_offset": 4, + "name": "reset", + "classname": "Precision", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 124, + "complexity": 4, + "lineno": 95, + "col_offset": 4, + "name": "update", + "classname": "Precision", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 153, + "complexity": 1, + "lineno": 126, + "col_offset": 4, + "name": "compute", + "classname": "Precision", + "closures": [] + }, + { + "type": "method", + "rank": "C", + "endline": 259, + "complexity": 15, + "lineno": 155, + "col_offset": 4, + "name": "_compute", + "classname": "Precision", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 317, + "complexity": 5, + "lineno": 262, + "col_offset": 4, + "name": "_compute_precision_for_classes", + "classname": "Precision", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 348, + "complexity": 4, + "lineno": 320, + "col_offset": 4, + "name": "_match_detection_batch", + "classname": "Precision", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 405, + "complexity": 4, + "lineno": 351, + "col_offset": 4, + "name": "_compute_confusion_matrix", + "classname": "Precision", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 438, + "complexity": 2, + "lineno": 408, + "col_offset": 4, + "name": "_compute_precision", + "classname": "Precision", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 456, + "complexity": 7, + "lineno": 440, + "col_offset": 4, + "name": "_detections_content", + "classname": "Precision", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 471, + "complexity": 4, + "lineno": 458, + "col_offset": 4, + "name": "_make_empty_content", + "classname": "Precision", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 497, + "complexity": 9, + "lineno": 473, + "col_offset": 4, + "name": "_filter_detections_by_size", + "classname": "Precision", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 517, + "complexity": 2, + "lineno": 499, + "col_offset": 4, + "name": "_filter_predictions_and_targets_by_size", + "classname": "Precision", + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "endline": 317, + "complexity": 5, + "lineno": 262, + "col_offset": 4, + "name": "_compute_precision_for_classes", + "classname": "Precision", + "closures": [] + }, + { + "type": "class", + "rank": "A", + "endline": 735, + "complexity": 5, + "lineno": 521, + "col_offset": 0, + "name": "PrecisionResult", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 556, + "complexity": 1, + "lineno": 555, + "col_offset": 4, + "name": "precision_at_50", + "classname": "PrecisionResult", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 560, + "complexity": 1, + "lineno": 559, + "col_offset": 4, + "name": "precision_at_75", + "classname": "PrecisionResult", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 641, + "complexity": 6, + "lineno": 571, + "col_offset": 4, + "name": "__str__", + "classname": "PrecisionResult", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 671, + "complexity": 7, + "lineno": 643, + "col_offset": 4, + "name": "to_pandas", + "classname": "PrecisionResult", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 735, + "complexity": 5, + "lineno": 673, + "col_offset": 4, + "name": "plot", + "classname": "PrecisionResult", + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "endline": 735, + "complexity": 5, + "lineno": 673, + "col_offset": 4, + "name": "plot", + "classname": "PrecisionResult", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 124, + "complexity": 4, + "lineno": 95, + "col_offset": 4, + "name": "update", + "classname": "Precision", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 348, + "complexity": 4, + "lineno": 320, + "col_offset": 4, + "name": "_match_detection_batch", + "classname": "Precision", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 405, + "complexity": 4, + "lineno": 351, + "col_offset": 4, + "name": "_compute_confusion_matrix", + "classname": "Precision", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 471, + "complexity": 4, + "lineno": 458, + "col_offset": 4, + "name": "_make_empty_content", + "classname": "Precision", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 438, + "complexity": 2, + "lineno": 408, + "col_offset": 4, + "name": "_compute_precision", + "classname": "Precision", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 517, + "complexity": 2, + "lineno": 499, + "col_offset": 4, + "name": "_filter_predictions_and_targets_by_size", + "classname": "Precision", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 86, + "complexity": 1, + "lineno": 69, + "col_offset": 4, + "name": "__init__", + "classname": "Precision", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 93, + "complexity": 1, + "lineno": 88, + "col_offset": 4, + "name": "reset", + "classname": "Precision", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 153, + "complexity": 1, + "lineno": 126, + "col_offset": 4, + "name": "compute", + "classname": "Precision", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 556, + "complexity": 1, + "lineno": 555, + "col_offset": 4, + "name": "precision_at_50", + "classname": "PrecisionResult", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 560, + "complexity": 1, + "lineno": 559, + "col_offset": 4, + "name": "precision_at_75", + "classname": "PrecisionResult", + "closures": [] + } + ], + "src\\supervision\\metrics\\recall.py": [ + { + "type": "method", + "rank": "C", + "endline": 236, + "complexity": 11, + "lineno": 155, + "col_offset": 4, + "name": "_compute", + "classname": "Recall", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 455, + "complexity": 9, + "lineno": 431, + "col_offset": 4, + "name": "_filter_detections_by_size", + "classname": "Recall", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 412, + "complexity": 7, + "lineno": 396, + "col_offset": 4, + "name": "_detections_content", + "classname": "Recall", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 625, + "complexity": 7, + "lineno": 597, + "col_offset": 4, + "name": "to_pandas", + "classname": "RecallResult", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 595, + "complexity": 6, + "lineno": 527, + "col_offset": 4, + "name": "__str__", + "classname": "RecallResult", + "closures": [] + }, + { + "type": "class", + "rank": "A", + "endline": 475, + "complexity": 5, + "lineno": 30, + "col_offset": 0, + "name": "Recall", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 86, + "complexity": 1, + "lineno": 69, + "col_offset": 4, + "name": "__init__", + "classname": "Recall", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 93, + "complexity": 1, + "lineno": 88, + "col_offset": 4, + "name": "reset", + "classname": "Recall", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 124, + "complexity": 4, + "lineno": 95, + "col_offset": 4, + "name": "update", + "classname": "Recall", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 153, + "complexity": 1, + "lineno": 126, + "col_offset": 4, + "name": "compute", + "classname": "Recall", + "closures": [] + }, + { + "type": "method", + "rank": "C", + "endline": 236, + "complexity": 11, + "lineno": 155, + "col_offset": 4, + "name": "_compute", + "classname": "Recall", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 273, + "complexity": 4, + "lineno": 239, + "col_offset": 4, + "name": "_compute_recall_for_classes", + "classname": "Recall", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 304, + "complexity": 4, + "lineno": 276, + "col_offset": 4, + "name": "_match_detection_batch", + "classname": "Recall", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 361, + "complexity": 4, + "lineno": 307, + "col_offset": 4, + "name": "_compute_confusion_matrix", + "classname": "Recall", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 394, + "complexity": 2, + "lineno": 364, + "col_offset": 4, + "name": "_compute_recall", + "classname": "Recall", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 412, + "complexity": 7, + "lineno": 396, + "col_offset": 4, + "name": "_detections_content", + "classname": "Recall", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 429, + "complexity": 4, + "lineno": 414, + "col_offset": 4, + "name": "_make_empty_content", + "classname": "Recall", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 455, + "complexity": 9, + "lineno": 431, + "col_offset": 4, + "name": "_filter_detections_by_size", + "classname": "Recall", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 475, + "complexity": 2, + "lineno": 457, + "col_offset": 4, + "name": "_filter_predictions_and_targets_by_size", + "classname": "Recall", + "closures": [] + } + ] + }, + { + "type": "class", + "rank": "A", + "endline": 689, + "complexity": 5, + "lineno": 479, + "col_offset": 0, + "name": "RecallResult", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 512, + "complexity": 1, + "lineno": 511, + "col_offset": 4, + "name": "recall_at_50", + "classname": "RecallResult", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 516, + "complexity": 1, + "lineno": 515, + "col_offset": 4, + "name": "recall_at_75", + "classname": "RecallResult", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 595, + "complexity": 6, + "lineno": 527, + "col_offset": 4, + "name": "__str__", + "classname": "RecallResult", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 625, + "complexity": 7, + "lineno": 597, + "col_offset": 4, + "name": "to_pandas", + "classname": "RecallResult", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 689, + "complexity": 5, + "lineno": 627, + "col_offset": 4, + "name": "plot", + "classname": "RecallResult", + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "endline": 689, + "complexity": 5, + "lineno": 627, + "col_offset": 4, + "name": "plot", + "classname": "RecallResult", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 124, + "complexity": 4, + "lineno": 95, + "col_offset": 4, + "name": "update", + "classname": "Recall", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 273, + "complexity": 4, + "lineno": 239, + "col_offset": 4, + "name": "_compute_recall_for_classes", + "classname": "Recall", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 304, + "complexity": 4, + "lineno": 276, + "col_offset": 4, + "name": "_match_detection_batch", + "classname": "Recall", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 361, + "complexity": 4, + "lineno": 307, + "col_offset": 4, + "name": "_compute_confusion_matrix", + "classname": "Recall", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 429, + "complexity": 4, + "lineno": 414, + "col_offset": 4, + "name": "_make_empty_content", + "classname": "Recall", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 394, + "complexity": 2, + "lineno": 364, + "col_offset": 4, + "name": "_compute_recall", + "classname": "Recall", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 475, + "complexity": 2, + "lineno": 457, + "col_offset": 4, + "name": "_filter_predictions_and_targets_by_size", + "classname": "Recall", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 86, + "complexity": 1, + "lineno": 69, + "col_offset": 4, + "name": "__init__", + "classname": "Recall", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 93, + "complexity": 1, + "lineno": 88, + "col_offset": 4, + "name": "reset", + "classname": "Recall", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 153, + "complexity": 1, + "lineno": 126, + "col_offset": 4, + "name": "compute", + "classname": "Recall", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 512, + "complexity": 1, + "lineno": 511, + "col_offset": 4, + "name": "recall_at_50", + "classname": "RecallResult", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 516, + "complexity": 1, + "lineno": 515, + "col_offset": 4, + "name": "recall_at_75", + "classname": "RecallResult", + "closures": [] + } + ], + "src\\supervision\\metrics\\utils\\object_size.py": [ + { + "type": "function", + "rank": "B", + "endline": 241, + "complexity": 6, + "lineno": 214, + "col_offset": 0, + "name": "get_detection_size_category", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 82, + "complexity": 4, + "lineno": 46, + "col_offset": 0, + "name": "get_object_size_category", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 211, + "complexity": 4, + "lineno": 168, + "col_offset": 0, + "name": "get_obb_size_category", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 123, + "complexity": 3, + "lineno": 85, + "col_offset": 0, + "name": "get_bbox_size_category", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 165, + "complexity": 3, + "lineno": 126, + "col_offset": 0, + "name": "get_mask_size_category", + "closures": [] + }, + { + "type": "class", + "rank": "A", + "endline": 43, + "complexity": 1, + "lineno": 19, + "col_offset": 0, + "name": "ObjectSizeCategory", + "methods": [] + } + ], + "src\\supervision\\metrics\\utils\\utils.py": [ + { + "type": "function", + "rank": "A", + "endline": 6, + "complexity": 2, + "lineno": 1, + "col_offset": 0, + "name": "ensure_pandas_installed", + "closures": [] + } + ], + "src\\supervision\\tracker\\byte_tracker\\core.py": [ + { + "type": "method", + "rank": "D", + "endline": 334, + "complexity": 26, + "lineno": 173, + "col_offset": 4, + "name": "update_with_tensors", + "classname": "ByteTrack", + "closures": [] + }, + { + "type": "class", + "rank": "B", + "endline": 334, + "complexity": 9, + "lineno": 22, + "col_offset": 0, + "name": "ByteTrack", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 81, + "complexity": 1, + "lineno": 56, + "col_offset": 4, + "name": "__init__", + "classname": "ByteTrack", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 155, + "complexity": 6, + "lineno": 83, + "col_offset": 4, + "name": "update_with_detections", + "classname": "ByteTrack", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 171, + "complexity": 1, + "lineno": 157, + "col_offset": 4, + "name": "reset", + "classname": "ByteTrack", + "closures": [] + }, + { + "type": "method", + "rank": "D", + "endline": 334, + "complexity": 26, + "lineno": 173, + "col_offset": 4, + "name": "update_with_tensors", + "classname": "ByteTrack", + "closures": [] + } + ] + }, + { + "type": "function", + "rank": "B", + "endline": 405, + "complexity": 7, + "lineno": 383, + "col_offset": 0, + "name": "remove_duplicate_tracks", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 155, + "complexity": 6, + "lineno": 83, + "col_offset": 4, + "name": "update_with_detections", + "classname": "ByteTrack", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 380, + "complexity": 4, + "lineno": 363, + "col_offset": 0, + "name": "sub_tracks", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 360, + "complexity": 3, + "lineno": 337, + "col_offset": 0, + "name": "joint_tracks", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 81, + "complexity": 1, + "lineno": 56, + "col_offset": 4, + "name": "__init__", + "classname": "ByteTrack", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 171, + "complexity": 1, + "lineno": 157, + "col_offset": 4, + "name": "reset", + "classname": "ByteTrack", + "closures": [] + } + ], + "src\\supervision\\tracker\\byte_tracker\\kalman_filter.py": [ + { + "type": "class", + "rank": "A", + "endline": 193, + "complexity": 2, + "lineno": 8, + "col_offset": 0, + "name": "KalmanFilter", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 30, + "complexity": 2, + "lineno": 21, + "col_offset": 4, + "name": "__init__", + "classname": "KalmanFilter", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 59, + "complexity": 1, + "lineno": 32, + "col_offset": 4, + "name": "initiate", + "classname": "KalmanFilter", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 94, + "complexity": 1, + "lineno": 61, + "col_offset": 4, + "name": "predict", + "classname": "KalmanFilter", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 121, + "complexity": 1, + "lineno": 96, + "col_offset": 4, + "name": "project", + "classname": "KalmanFilter", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 158, + "complexity": 2, + "lineno": 123, + "col_offset": 4, + "name": "multi_predict", + "classname": "KalmanFilter", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 193, + "complexity": 1, + "lineno": 160, + "col_offset": 4, + "name": "update", + "classname": "KalmanFilter", + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "endline": 30, + "complexity": 2, + "lineno": 21, + "col_offset": 4, + "name": "__init__", + "classname": "KalmanFilter", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 158, + "complexity": 2, + "lineno": 123, + "col_offset": 4, + "name": "multi_predict", + "classname": "KalmanFilter", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 59, + "complexity": 1, + "lineno": 32, + "col_offset": 4, + "name": "initiate", + "classname": "KalmanFilter", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 94, + "complexity": 1, + "lineno": 61, + "col_offset": 4, + "name": "predict", + "classname": "KalmanFilter", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 121, + "complexity": 1, + "lineno": 96, + "col_offset": 4, + "name": "project", + "classname": "KalmanFilter", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 193, + "complexity": 1, + "lineno": 160, + "col_offset": 4, + "name": "update", + "classname": "KalmanFilter", + "closures": [] + } + ], + "src\\supervision\\tracker\\byte_tracker\\matching.py": [ + { + "type": "function", + "rank": "B", + "endline": 62, + "complexity": 8, + "lineno": 44, + "col_offset": 0, + "name": "iou_distance", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 75, + "complexity": 3, + "lineno": 65, + "col_offset": 0, + "name": "fuse_score", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 41, + "complexity": 2, + "lineno": 27, + "col_offset": 0, + "name": "linear_assignment", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 24, + "complexity": 1, + "lineno": 15, + "col_offset": 0, + "name": "indices_to_matches", + "closures": [] + } + ], + "src\\supervision\\tracker\\byte_tracker\\single_object_track.py": [ + { + "type": "method", + "rank": "B", + "endline": 80, + "complexity": 7, + "lineno": 63, + "col_offset": 4, + "name": "multi_predict", + "classname": "STrack", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 137, + "complexity": 6, + "lineno": 113, + "col_offset": 4, + "name": "update", + "classname": "STrack", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 59, + "complexity": 5, + "lineno": 51, + "col_offset": 4, + "name": "predict", + "classname": "STrack", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 111, + "complexity": 4, + "lineno": 100, + "col_offset": 4, + "name": "re_activate", + "classname": "STrack", + "closures": [] + }, + { + "type": "class", + "rank": "A", + "endline": 186, + "complexity": 3, + "lineno": 19, + "col_offset": 0, + "name": "STrack", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 49, + "complexity": 1, + "lineno": 20, + "col_offset": 4, + "name": "__init__", + "classname": "STrack", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 59, + "complexity": 5, + "lineno": 51, + "col_offset": 4, + "name": "predict", + "classname": "STrack", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 80, + "complexity": 7, + "lineno": 63, + "col_offset": 4, + "name": "multi_predict", + "classname": "STrack", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 98, + "complexity": 3, + "lineno": 82, + "col_offset": 4, + "name": "activate", + "classname": "STrack", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 111, + "complexity": 4, + "lineno": 100, + "col_offset": 4, + "name": "re_activate", + "classname": "STrack", + "closures": [] + }, + { + "type": "method", + "rank": "B", + "endline": 137, + "complexity": 6, + "lineno": 113, + "col_offset": 4, + "name": "update", + "classname": "STrack", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 149, + "complexity": 2, + "lineno": 140, + "col_offset": 4, + "name": "tlwh", + "classname": "STrack", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 158, + "complexity": 1, + "lineno": 152, + "col_offset": 4, + "name": "tlbr", + "classname": "STrack", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 168, + "complexity": 1, + "lineno": 161, + "col_offset": 4, + "name": "tlwh_to_xyah", + "classname": "STrack", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 171, + "complexity": 1, + "lineno": 170, + "col_offset": 4, + "name": "to_xyah", + "classname": "STrack", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 177, + "complexity": 1, + "lineno": 174, + "col_offset": 4, + "name": "tlbr_to_tlwh", + "classname": "STrack", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 183, + "complexity": 1, + "lineno": 180, + "col_offset": 4, + "name": "tlwh_to_tlbr", + "classname": "STrack", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 186, + "complexity": 1, + "lineno": 185, + "col_offset": 4, + "name": "__repr__", + "classname": "STrack", + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "endline": 98, + "complexity": 3, + "lineno": 82, + "col_offset": 4, + "name": "activate", + "classname": "STrack", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 149, + "complexity": 2, + "lineno": 140, + "col_offset": 4, + "name": "tlwh", + "classname": "STrack", + "closures": [] + }, + { + "type": "class", + "rank": "A", + "endline": 16, + "complexity": 1, + "lineno": 12, + "col_offset": 0, + "name": "TrackState", + "methods": [] + }, + { + "type": "method", + "rank": "A", + "endline": 49, + "complexity": 1, + "lineno": 20, + "col_offset": 4, + "name": "__init__", + "classname": "STrack", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 158, + "complexity": 1, + "lineno": 152, + "col_offset": 4, + "name": "tlbr", + "classname": "STrack", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 168, + "complexity": 1, + "lineno": 161, + "col_offset": 4, + "name": "tlwh_to_xyah", + "classname": "STrack", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 171, + "complexity": 1, + "lineno": 170, + "col_offset": 4, + "name": "to_xyah", + "classname": "STrack", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 177, + "complexity": 1, + "lineno": 174, + "col_offset": 4, + "name": "tlbr_to_tlwh", + "classname": "STrack", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 183, + "complexity": 1, + "lineno": 180, + "col_offset": 4, + "name": "tlwh_to_tlbr", + "classname": "STrack", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 186, + "complexity": 1, + "lineno": 185, + "col_offset": 4, + "name": "__repr__", + "classname": "STrack", + "closures": [] + } + ], + "src\\supervision\\tracker\\byte_tracker\\utils.py": [ + { + "type": "class", + "rank": "A", + "endline": 37, + "complexity": 2, + "lineno": 4, + "col_offset": 0, + "name": "IdCounter", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 18, + "complexity": 2, + "lineno": 5, + "col_offset": 4, + "name": "__init__", + "classname": "IdCounter", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 22, + "complexity": 1, + "lineno": 20, + "col_offset": 4, + "name": "reset", + "classname": "IdCounter", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 33, + "complexity": 1, + "lineno": 24, + "col_offset": 4, + "name": "new_id", + "classname": "IdCounter", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 37, + "complexity": 1, + "lineno": 36, + "col_offset": 4, + "name": "NO_ID", + "classname": "IdCounter", + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "endline": 18, + "complexity": 2, + "lineno": 5, + "col_offset": 4, + "name": "__init__", + "classname": "IdCounter", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 22, + "complexity": 1, + "lineno": 20, + "col_offset": 4, + "name": "reset", + "classname": "IdCounter", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 33, + "complexity": 1, + "lineno": 24, + "col_offset": 4, + "name": "new_id", + "classname": "IdCounter", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 37, + "complexity": 1, + "lineno": 36, + "col_offset": 4, + "name": "NO_ID", + "classname": "IdCounter", + "closures": [] + } + ], + "src\\supervision\\utils\\conversion.py": [ + { + "type": "function", + "rank": "A", + "endline": 145, + "complexity": 3, + "lineno": 127, + "col_offset": 0, + "name": "images_to_cv2", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 40, + "complexity": 1, + "lineno": 16, + "col_offset": 0, + "name": "ensure_cv2_image_for_class_method", + "closures": [ + { + "type": "function", + "rank": "A", + "endline": 38, + "complexity": 3, + "lineno": 28, + "col_offset": 4, + "name": "wrapper", + "closures": [] + } + ] + }, + { + "type": "function", + "rank": "A", + "endline": 51, + "complexity": 1, + "lineno": 48, + "col_offset": 0, + "name": "ensure_cv2_image_for_annotation", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 76, + "complexity": 1, + "lineno": 54, + "col_offset": 0, + "name": "ensure_cv2_image_for_standalone_function", + "closures": [ + { + "type": "function", + "rank": "A", + "endline": 74, + "complexity": 3, + "lineno": 65, + "col_offset": 4, + "name": "wrapper", + "closures": [] + } + ] + }, + { + "type": "function", + "rank": "A", + "endline": 102, + "complexity": 1, + "lineno": 79, + "col_offset": 0, + "name": "ensure_pil_image_for_class_method", + "closures": [ + { + "type": "function", + "rank": "A", + "endline": 100, + "complexity": 3, + "lineno": 90, + "col_offset": 4, + "name": "wrapper", + "closures": [] + } + ] + }, + { + "type": "function", + "rank": "A", + "endline": 113, + "complexity": 1, + "lineno": 110, + "col_offset": 0, + "name": "ensure_pil_image_for_annotation", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 124, + "complexity": 1, + "lineno": 121, + "col_offset": 0, + "name": "ensure_cv2_image_for_processing", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 163, + "complexity": 1, + "lineno": 148, + "col_offset": 0, + "name": "pillow_to_cv2", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 178, + "complexity": 1, + "lineno": 166, + "col_offset": 0, + "name": "cv2_to_pillow", + "closures": [] + } + ], + "src\\supervision\\utils\\file.py": [ + { + "type": "function", + "rank": "C", + "endline": 89, + "complexity": 12, + "lineno": 22, + "col_offset": 0, + "name": "list_files_with_extensions", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 126, + "complexity": 5, + "lineno": 92, + "col_offset": 0, + "name": "read_txt_file", + "closures": [] + }, + { + "type": "class", + "rank": "A", + "endline": 19, + "complexity": 5, + "lineno": 11, + "col_offset": 0, + "name": "NumpyJsonEncoder", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 19, + "complexity": 4, + "lineno": 12, + "col_offset": 4, + "name": "default", + "classname": "NumpyJsonEncoder", + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "endline": 19, + "complexity": 4, + "lineno": 12, + "col_offset": 4, + "name": "default", + "classname": "NumpyJsonEncoder", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 139, + "complexity": 2, + "lineno": 129, + "col_offset": 0, + "name": "save_text_file", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 168, + "complexity": 1, + "lineno": 142, + "col_offset": 0, + "name": "read_json_file", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 183, + "complexity": 1, + "lineno": 171, + "col_offset": 0, + "name": "save_json_file", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 198, + "complexity": 1, + "lineno": 186, + "col_offset": 0, + "name": "read_yaml_file", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 211, + "complexity": 1, + "lineno": 201, + "col_offset": 0, + "name": "save_yaml_file", + "closures": [] + } + ], + "src\\supervision\\utils\\image.py": [ + { + "type": "function", + "rank": "B", + "endline": 703, + "complexity": 9, + "lineno": 565, + "col_offset": 0, + "name": "create_tiles", + "closures": [] + }, + { + "type": "function", + "rank": "B", + "endline": 753, + "complexity": 8, + "lineno": 739, + "col_offset": 0, + "name": "_establish_grid_size", + "closures": [] + }, + { + "type": "function", + "rank": "B", + "endline": 352, + "complexity": 6, + "lineno": 283, + "col_offset": 0, + "name": "overlay_image", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 857, + "complexity": 5, + "lineno": 816, + "col_offset": 0, + "name": "_draw_texts", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 90, + "complexity": 4, + "lineno": 34, + "col_offset": 0, + "name": "crop_image", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 206, + "complexity": 4, + "lineno": 146, + "col_offset": 0, + "name": "resize_image", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 477, + "complexity": 4, + "lineno": 434, + "col_offset": 0, + "name": "get_image_resolution_wh", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 876, + "complexity": 4, + "lineno": 860, + "col_offset": 0, + "name": "_prepare_default_titles_anchors", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 142, + "complexity": 3, + "lineno": 95, + "col_offset": 0, + "name": "scale_image", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 400, + "complexity": 3, + "lineno": 356, + "col_offset": 0, + "name": "tint_image", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 710, + "complexity": 3, + "lineno": 706, + "col_offset": 0, + "name": "_negotiate_tiles_format", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 718, + "complexity": 3, + "lineno": 713, + "col_offset": 0, + "name": "_calculate_aggregated_images_shape", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 764, + "complexity": 3, + "lineno": 756, + "col_offset": 0, + "name": "_negotiate_grid_size", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 812, + "complexity": 3, + "lineno": 767, + "col_offset": 0, + "name": "_generate_tiles", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 914, + "complexity": 3, + "lineno": 879, + "col_offset": 0, + "name": "_merge_tiles_elements", + "closures": [] + }, + { + "type": "class", + "rank": "A", + "endline": 557, + "complexity": 3, + "lineno": 481, + "col_offset": 0, + "name": "ImageSink", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 519, + "complexity": 1, + "lineno": 482, + "col_offset": 4, + "name": "__init__", + "classname": "ImageSink", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 529, + "complexity": 3, + "lineno": 521, + "col_offset": 4, + "name": "__enter__", + "classname": "ImageSink", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 549, + "complexity": 2, + "lineno": 531, + "col_offset": 4, + "name": "save_image", + "classname": "ImageSink", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 557, + "complexity": 1, + "lineno": 551, + "col_offset": 4, + "name": "__exit__", + "classname": "ImageSink", + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "endline": 529, + "complexity": 3, + "lineno": 521, + "col_offset": 4, + "name": "__enter__", + "classname": "ImageSink", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 275, + "complexity": 2, + "lineno": 210, + "col_offset": 0, + "name": "letterbox_image", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 736, + "complexity": 2, + "lineno": 728, + "col_offset": 0, + "name": "_aggregate_images_shape", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 549, + "complexity": 2, + "lineno": 531, + "col_offset": 4, + "name": "save_image", + "classname": "ImageSink", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 431, + "complexity": 1, + "lineno": 404, + "col_offset": 0, + "name": "grayscale_image", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 923, + "complexity": 1, + "lineno": 918, + "col_offset": 0, + "name": "_generate_color_image", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 519, + "complexity": 1, + "lineno": 482, + "col_offset": 4, + "name": "__init__", + "classname": "ImageSink", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 557, + "complexity": 1, + "lineno": 551, + "col_offset": 4, + "name": "__exit__", + "classname": "ImageSink", + "closures": [] + } + ], + "src\\supervision\\utils\\internal.py": [ + { + "type": "function", + "rank": "B", + "endline": 208, + "complexity": 8, + "lineno": 169, + "col_offset": 0, + "name": "get_instance_variables", + "closures": [] + }, + { + "type": "class", + "rank": "A", + "endline": 166, + "complexity": 3, + "lineno": 133, + "col_offset": 0, + "name": "classproperty", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 150, + "complexity": 1, + "lineno": 145, + "col_offset": 4, + "name": "__init__", + "classname": "classproperty", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 166, + "complexity": 2, + "lineno": 152, + "col_offset": 4, + "name": "__get__", + "classname": "classproperty", + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "endline": 166, + "complexity": 2, + "lineno": 152, + "col_offset": 4, + "name": "__get__", + "classname": "classproperty", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 32, + "complexity": 1, + "lineno": 21, + "col_offset": 0, + "name": "format_warning", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 50, + "complexity": 1, + "lineno": 43, + "col_offset": 0, + "name": "warn_deprecated", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 127, + "complexity": 1, + "lineno": 53, + "col_offset": 0, + "name": "deprecated_parameter", + "closures": [ + { + "type": "function", + "rank": "A", + "endline": 125, + "complexity": 1, + "lineno": 102, + "col_offset": 4, + "name": "decorator", + "closures": [ + { + "type": "function", + "rank": "A", + "endline": 123, + "complexity": 4, + "lineno": 104, + "col_offset": 8, + "name": "wrapper", + "closures": [] + } + ] + } + ] + }, + { + "type": "class", + "rank": "A", + "endline": 18, + "complexity": 1, + "lineno": 11, + "col_offset": 0, + "name": "SupervisionWarnings", + "methods": [] + }, + { + "type": "method", + "rank": "A", + "endline": 150, + "complexity": 1, + "lineno": 145, + "col_offset": 4, + "name": "__init__", + "classname": "classproperty", + "closures": [] + } + ], + "src\\supervision\\utils\\iterables.py": [ + { + "type": "function", + "rank": "A", + "endline": 42, + "complexity": 4, + "lineno": 7, + "col_offset": 0, + "name": "create_batches", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 103, + "complexity": 3, + "lineno": 76, + "col_offset": 0, + "name": "find_duplicates", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 73, + "complexity": 1, + "lineno": 45, + "col_offset": 0, + "name": "fill", + "closures": [] + } + ], + "src\\supervision\\utils\\logger.py": [ + { + "type": "function", + "rank": "A", + "endline": 63, + "complexity": 3, + "lineno": 8, + "col_offset": 0, + "name": "_get_logger", + "closures": [] + } + ], + "src\\supervision\\utils\\notebook.py": [ + { + "type": "function", + "rank": "B", + "endline": 117, + "complexity": 9, + "lineno": 50, + "col_offset": 0, + "name": "plot_images_grid", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 47, + "complexity": 3, + "lineno": 11, + "col_offset": 0, + "name": "plot_image", + "closures": [] + } + ], + "src\\supervision\\utils\\video.py": [ + { + "type": "function", + "rank": "C", + "endline": 456, + "complexity": 16, + "lineno": 283, + "col_offset": 0, + "name": "process_video", + "closures": [ + { + "type": "function", + "rank": "A", + "endline": 376, + "complexity": 2, + "lineno": 369, + "col_offset": 4, + "name": "reader_thread", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 383, + "complexity": 3, + "lineno": 378, + "col_offset": 4, + "name": "writer_thread", + "closures": [] + } + ] + }, + { + "type": "function", + "rank": "B", + "endline": 228, + "complexity": 9, + "lineno": 207, + "col_offset": 0, + "name": "_validate_and_setup_video", + "closures": [] + }, + { + "type": "function", + "rank": "B", + "endline": 204, + "complexity": 7, + "lineno": 140, + "col_offset": 0, + "name": "_mux_audio", + "closures": [] + }, + { + "type": "function", + "rank": "B", + "endline": 280, + "complexity": 7, + "lineno": 231, + "col_offset": 0, + "name": "get_video_frames_generator", + "closures": [] + }, + { + "type": "class", + "rank": "A", + "endline": 73, + "complexity": 3, + "lineno": 26, + "col_offset": 0, + "name": "VideoInfo", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 69, + "complexity": 2, + "lineno": 59, + "col_offset": 4, + "name": "from_video_path", + "classname": "VideoInfo", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 73, + "complexity": 1, + "lineno": 72, + "col_offset": 4, + "name": "resolution_wh", + "classname": "VideoInfo", + "closures": [] + } + ] + }, + { + "type": "class", + "rank": "A", + "endline": 137, + "complexity": 3, + "lineno": 76, + "col_offset": 0, + "name": "VideoSink", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 103, + "complexity": 1, + "lineno": 99, + "col_offset": 4, + "name": "__init__", + "classname": "VideoSink", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 117, + "complexity": 2, + "lineno": 105, + "col_offset": 4, + "name": "__enter__", + "classname": "VideoSink", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 128, + "complexity": 2, + "lineno": 119, + "col_offset": 4, + "name": "write_frame", + "classname": "VideoSink", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 137, + "complexity": 2, + "lineno": 130, + "col_offset": 4, + "name": "__exit__", + "classname": "VideoSink", + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "endline": 497, + "complexity": 3, + "lineno": 487, + "col_offset": 4, + "name": "fps", + "classname": "FPSMonitor", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 69, + "complexity": 2, + "lineno": 59, + "col_offset": 4, + "name": "from_video_path", + "classname": "VideoInfo", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 117, + "complexity": 2, + "lineno": 105, + "col_offset": 4, + "name": "__enter__", + "classname": "VideoSink", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 128, + "complexity": 2, + "lineno": 119, + "col_offset": 4, + "name": "write_frame", + "classname": "VideoSink", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 137, + "complexity": 2, + "lineno": 130, + "col_offset": 4, + "name": "__exit__", + "classname": "VideoSink", + "closures": [] + }, + { + "type": "class", + "rank": "A", + "endline": 509, + "complexity": 2, + "lineno": 459, + "col_offset": 0, + "name": "FPSMonitor", + "methods": [ + { + "type": "method", + "rank": "A", + "endline": 484, + "complexity": 1, + "lineno": 464, + "col_offset": 4, + "name": "__init__", + "classname": "FPSMonitor", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 497, + "complexity": 3, + "lineno": 487, + "col_offset": 4, + "name": "fps", + "classname": "FPSMonitor", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 503, + "complexity": 1, + "lineno": 499, + "col_offset": 4, + "name": "tick", + "classname": "FPSMonitor", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 509, + "complexity": 1, + "lineno": 505, + "col_offset": 4, + "name": "reset", + "classname": "FPSMonitor", + "closures": [] + } + ] + }, + { + "type": "method", + "rank": "A", + "endline": 73, + "complexity": 1, + "lineno": 72, + "col_offset": 4, + "name": "resolution_wh", + "classname": "VideoInfo", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 103, + "complexity": 1, + "lineno": 99, + "col_offset": 4, + "name": "__init__", + "classname": "VideoSink", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 484, + "complexity": 1, + "lineno": 464, + "col_offset": 4, + "name": "__init__", + "classname": "FPSMonitor", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 503, + "complexity": 1, + "lineno": 499, + "col_offset": 4, + "name": "tick", + "classname": "FPSMonitor", + "closures": [] + }, + { + "type": "method", + "rank": "A", + "endline": 509, + "complexity": 1, + "lineno": 505, + "col_offset": 4, + "name": "reset", + "classname": "FPSMonitor", + "closures": [] + } + ], + "src\\supervision\\validators\\__init__.py": [ + { + "type": "function", + "rank": "B", + "endline": 204, + "complexity": 9, + "lineno": 191, + "col_offset": 0, + "name": "_validate_data", + "closures": [] + }, + { + "type": "function", + "rank": "B", + "endline": 62, + "complexity": 8, + "lineno": 37, + "col_offset": 0, + "name": "_validate_mask", + "closures": [] + }, + { + "type": "function", + "rank": "B", + "endline": 147, + "complexity": 7, + "lineno": 129, + "col_offset": 0, + "name": "_validate_keypoint_confidence", + "closures": [] + }, + { + "type": "function", + "rank": "B", + "endline": 255, + "complexity": 7, + "lineno": 236, + "col_offset": 0, + "name": "_validate_visible", + "closures": [] + }, + { + "type": "function", + "rank": "B", + "endline": 354, + "complexity": 7, + "lineno": 334, + "col_offset": 0, + "name": "_validate_resolution", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 24, + "complexity": 4, + "lineno": 10, + "col_offset": 0, + "name": "_validate_xyxy", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 93, + "complexity": 4, + "lineno": 84, + "col_offset": 0, + "name": "_validate_class_id", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 116, + "complexity": 4, + "lineno": 106, + "col_offset": 0, + "name": "_validate_confidence", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 178, + "complexity": 4, + "lineno": 169, + "col_offset": 0, + "name": "_validate_tracker_id", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 223, + "complexity": 4, + "lineno": 216, + "col_offset": 0, + "name": "_validate_xy", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 309, + "complexity": 4, + "lineno": 292, + "col_offset": 0, + "name": "_validate_keypoints_fields", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 34, + "complexity": 1, + "lineno": 33, + "col_offset": 0, + "name": "validate_xyxy", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 81, + "complexity": 1, + "lineno": 80, + "col_offset": 0, + "name": "validate_mask", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 103, + "complexity": 1, + "lineno": 102, + "col_offset": 0, + "name": "validate_class_id", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 126, + "complexity": 1, + "lineno": 125, + "col_offset": 0, + "name": "validate_confidence", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 157, + "complexity": 1, + "lineno": 156, + "col_offset": 0, + "name": "validate_key_point_confidence", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 166, + "complexity": 1, + "lineno": 165, + "col_offset": 0, + "name": "validate_keypoint_confidence", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 188, + "complexity": 1, + "lineno": 187, + "col_offset": 0, + "name": "validate_tracker_id", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 213, + "complexity": 1, + "lineno": 212, + "col_offset": 0, + "name": "validate_data", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 233, + "complexity": 1, + "lineno": 232, + "col_offset": 0, + "name": "validate_xy", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 273, + "complexity": 1, + "lineno": 259, + "col_offset": 0, + "name": "_validate_detections_fields", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 289, + "complexity": 1, + "lineno": 281, + "col_offset": 0, + "name": "validate_detections_fields", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 320, + "complexity": 1, + "lineno": 317, + "col_offset": 0, + "name": "validate_key_points_fields", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 331, + "complexity": 1, + "lineno": 328, + "col_offset": 0, + "name": "validate_keypoints_fields", + "closures": [] + }, + { + "type": "function", + "rank": "A", + "endline": 363, + "complexity": 1, + "lineno": 362, + "col_offset": 0, + "name": "validate_resolution", + "closures": [] + } + ] +} \ No newline at end of file diff --git a/metrics-before-radon/cc_por_arquivo_antes.csv b/metrics-before-radon/cc_por_arquivo_antes.csv new file mode 100644 index 0000000000..29123782d4 --- /dev/null +++ b/metrics-before-radon/cc_por_arquivo_antes.csv @@ -0,0 +1,59 @@ +arquivo,funcoes,cc_media,cc_max,cc_soma,pior_rank,pior_classe,pior_funcao,pior_linha_ini +src/supervision/annotators/base.py,1,1.0,1,1,A,BaseAnnotator,annotate,9 +src/supervision/geometry/core.py,11,1.0,1,11,A,Position,list,25 +src/supervision/metrics/core.py,3,1.0,1,3,A,Metric,update,14 +src/supervision/tracker/byte_tracker/utils.py,4,1.25,2,5,A,IdCounter,__init__,5 +src/supervision/tracker/byte_tracker/kalman_filter.py,6,1.33,2,8,A,KalmanFilter,__init__,21 +src/supervision/assets/list.py,2,1.5,2,3,A,Assets,list,19 +src/supervision/utils/conversion.py,12,1.67,3,20,A,,images_to_cv2,127 +src/supervision/detection/utils/boxes.py,9,1.89,4,17,A,,spread_out_boxes,347 +src/supervision/classification/core.py,8,2.0,4,16,A,,_validate_confidence,22 +src/supervision/metrics/utils/utils.py,1,2.0,2,2,A,,ensure_pandas_installed,1 +src/supervision/draw/color.py,30,2.2,8,66,B,Color,from_hex,106 +src/supervision/utils/internal.py,8,2.38,8,19,B,,get_instance_variables,169 +src/supervision/draw/utils.py,10,2.4,9,24,B,,draw_image,301 +src/supervision/detection/utils/converters.py,19,2.47,6,47,B,,_base48_decode,332 +src/supervision/detection/tools/polygon_zone.py,4,2.5,4,10,A,PolygonZoneAnnotator,annotate,155 +src/supervision/dataset/utils.py,8,2.62,4,21,A,,map_detections_class_id,108 +src/supervision/tracker/byte_tracker/single_object_track.py,13,2.62,7,34,B,STrack,multi_predict,63 +src/supervision/utils/iterables.py,3,2.67,4,8,A,,create_batches,7 +src/supervision/detection/tools/transformers.py,8,2.75,5,22,A,,process_transformers_v4_segmentation_result,43 +src/supervision/detection/tools/json_sink.py,9,3.0,10,27,B,JSONSink,parse_detection_data,148 +src/supervision/geometry/utils.py,1,3.0,3,3,A,,get_polygon_center,7 +src/supervision/utils/logger.py,1,3.0,3,3,A,,_get_logger,8 +src/supervision/validators/__init__.py,25,3.04,9,76,B,,_validate_data,191 +src/supervision/detection/tools/csv_sink.py,10,3.1,9,31,B,CSVSink,parse_detection_data,145 +src/supervision/utils/file.py,8,3.38,12,27,C,,list_files_with_extensions,22 +src/supervision/utils/image.py,23,3.39,9,78,B,,create_tiles,565 +src/supervision/tracker/byte_tracker/matching.py,4,3.5,8,14,B,,iou_distance,44 +src/supervision/dataset/core.py,27,3.52,13,95,C,DetectionDataset,merge,231 +src/supervision/annotators/utils.py,18,3.56,11,64,C,,resolve_text_background_xyxy,80 +src/supervision/detection/line_zone.py,18,3.72,12,67,C,LineZoneAnnotatorMulticlass,annotate,769 +src/supervision/annotators/core.py,70,3.74,11,262,C,PercentageBarAnnotator,calculate_border_coordinates,2722 +src/supervision/utils/video.py,16,3.75,16,60,C,,process_video,283 +src/supervision/metrics/mean_average_recall.py,19,3.84,11,73,C,MeanAverageRecall,_compute,381 +src/supervision/assets/downloader.py,2,4.0,6,8,B,,download_assets,41 +src/supervision/metrics/utils/object_size.py,5,4.0,6,20,B,,get_detection_size_category,214 +src/supervision/detection/compact_mask.py,25,4.04,12,101,C,,_rle_split_cols,49 +src/supervision/metrics/recall.py,18,4.11,11,74,C,Recall,_compute,155 +src/supervision/metrics/f1_score.py,18,4.39,15,79,C,F1Score,_compute,152 +src/supervision/metrics/precision.py,18,4.39,15,79,C,Precision,_compute,155 +src/supervision/detection/utils/masks.py,7,4.43,12,31,C,,filter_segments_by_distance,291 +src/supervision/detection/utils/iou_and_nms.py,32,4.47,20,143,C,,oriented_box_iou_batch,426 +src/supervision/detection/utils/vlms.py,2,4.5,6,9,B,,edit_distance,4 +src/supervision/dataset/formats/yolo.py,14,4.64,14,65,C,,_extract_class_names,70 +src/supervision/dataset/formats/pascal_voc.py,7,4.86,12,34,C,,detections_from_xml_obj,235 +src/supervision/key_points/annotators.py,20,5.15,16,103,C,EdgeAnnotator,annotate,141 +src/supervision/dataset/formats/coco.py,11,5.18,15,57,C,,detections_to_coco_annotations,217 +src/supervision/detection/core.py,40,5.35,20,214,C,Detections,from_vlm,1461 +src/supervision/metrics/detection.py,17,5.53,22,94,D,ConfusionMatrix,evaluate_detection_batch,414 +src/supervision/utils/notebook.py,2,6.0,9,12,B,,plot_images_grid,50 +src/supervision/key_points/core.py,22,6.14,39,135,E,KeyPoints,__getitem__,925 +src/supervision/detection/tools/smoother.py,4,6.5,9,26,B,DetectionsSmoother,get_track,133 +src/supervision/detection/tools/inference_slicer.py,9,6.78,17,61,C,InferenceSlicer,__call__,178 +src/supervision/tracker/byte_tracker/core.py,7,6.86,26,48,D,ByteTrack,update_with_tensors,173 +src/supervision/metrics/mean_average_precision.py,32,7.03,29,225,D,COCOEvaluator,_accumulate,825 +src/supervision/detection/utils/polygons.py,2,8.0,9,16,B,,filter_polygons_by_area,8 +src/supervision/detection/vlm.py,15,8.67,33,130,E,,from_google_gemini_2_5,678 +src/supervision/detection/utils/internal.py,8,10.12,22,81,D,,process_roboflow_result,54 +src/supervision/key_points/skeletons.py,0,,,,,,, diff --git a/metrics-before-radon/cc_por_funcao_antes.csv b/metrics-before-radon/cc_por_funcao_antes.csv new file mode 100644 index 0000000000..39938fee39 --- /dev/null +++ b/metrics-before-radon/cc_por_funcao_antes.csv @@ -0,0 +1,747 @@ +arquivo,tipo,classe,nome,rank_cc,complexity,linha_ini,linha_fim +src/supervision/annotators/base.py,method,BaseAnnotator,annotate,A,1,9,12 +src/supervision/annotators/core.py,function,,_normalize_color_input,A,1,58,58 +src/supervision/annotators/core.py,function,,_normalize_color_input,A,1,62,64 +src/supervision/annotators/core.py,method,_BaseLabelAnnotator,__init__,A,1,103,145 +src/supervision/annotators/core.py,method,BoxAnnotator,__init__,A,1,195,211 +src/supervision/annotators/core.py,method,OrientedBoxAnnotator,__init__,A,1,282,298 +src/supervision/annotators/core.py,method,MaskAnnotator,__init__,A,1,432,448 +src/supervision/annotators/core.py,method,PolygonAnnotator,__init__,A,1,520,536 +src/supervision/annotators/core.py,method,ColorAnnotator,__init__,A,1,611,627 +src/supervision/annotators/core.py,method,HaloAnnotator,__init__,A,1,707,727 +src/supervision/annotators/core.py,method,EllipseAnnotator,__init__,A,1,805,827 +src/supervision/annotators/core.py,method,BoxCornerAnnotator,__init__,A,1,904,923 +src/supervision/annotators/core.py,method,CircleAnnotator,__init__,A,1,999,1016 +src/supervision/annotators/core.py,method,DotAnnotator,__init__,A,1,1092,1119 +src/supervision/annotators/core.py,method,LabelAnnotator,__init__,A,1,1202,1248 +src/supervision/annotators/core.py,method,RichLabelAnnotator,__init__,A,1,1518,1565 +src/supervision/annotators/core.py,method,IconAnnotator,__init__,A,1,1793,1809 +src/supervision/annotators/core.py,method,TraceAnnotator,__init__,A,1,1985,2014 +src/supervision/annotators/core.py,method,HeatMapAnnotator,__init__,A,1,2126,2152 +src/supervision/annotators/core.py,method,TriangleAnnotator,__init__,A,1,2331,2361 +src/supervision/annotators/core.py,method,PercentageBarAnnotator,validate_custom_values,A,1,2783,2787 +src/supervision/annotators/core.py,method,CropAnnotator,__init__,A,1,2795,2820 +src/supervision/annotators/core.py,method,BackgroundOverlayAnnotator,__init__,A,1,2960,2975 +src/supervision/annotators/core.py,method,ComparisonAnnotator,__init__,A,1,3043,3078 +src/supervision/annotators/utils.py,function,,validate_labels,A,1,231,232 +src/supervision/annotators/utils.py,function,,snap_boxes,A,1,266,329 +src/supervision/annotators/utils.py,function,,is_valid_hex,A,1,430,441 +src/supervision/annotators/utils.py,function,,calculate_dynamic_kernel_size,A,1,444,464 +src/supervision/annotators/utils.py,function,,calculate_dynamic_pixel_size,A,1,467,487 +src/supervision/annotators/utils.py,method,ColorLookup,list,A,1,36,37 +src/supervision/annotators/utils.py,method,Trace,__init__,A,1,333,345 +src/supervision/annotators/utils.py,method,Trace,get,A,1,377,381 +src/supervision/assets/list.py,method,Assets,__new__,A,1,11,16 +src/supervision/classification/core.py,method,Classifications,__post_init__,A,1,37,44 +src/supervision/classification/core.py,method,Classifications,__len__,A,1,46,50 +src/supervision/classification/core.py,method,Classifications,from_ultralytics,A,1,93,118 +src/supervision/dataset/core.py,function,,is_lazy,A,1,282,283 +src/supervision/dataset/core.py,method,BaseDataset,__len__,A,1,43,44 +src/supervision/dataset/core.py,method,BaseDataset,split,A,1,47,53 +src/supervision/dataset/core.py,method,DetectionDataset,__getitem__,A,1,113,122 +src/supervision/dataset/core.py,method,DetectionDataset,from_pascal_voc,A,1,388,438 +src/supervision/dataset/core.py,method,DetectionDataset,from_yolo,A,1,442,501 +src/supervision/dataset/core.py,method,DetectionDataset,from_coco,A,1,578,624 +src/supervision/dataset/core.py,method,ClassificationDataset,__getitem__,A,1,778,787 +src/supervision/dataset/utils.py,function,,mask_to_rle,A,1,30,34 +src/supervision/dataset/utils.py,function,,rle_to_mask,A,1,38,43 +src/supervision/dataset/formats/coco.py,function,,_with_seg_mask,A,1,503,504 +src/supervision/dataset/formats/pascal_voc.py,function,,_with_poly_mask,A,1,335,336 +src/supervision/dataset/formats/yolo.py,function,,_parse_box,A,1,28,37 +src/supervision/dataset/formats/yolo.py,function,,_box_to_polygon,A,1,41,43 +src/supervision/dataset/formats/yolo.py,function,,_parse_polygon,A,1,47,48 +src/supervision/dataset/formats/yolo.py,function,,_image_name_to_annotation_name,A,1,133,135 +src/supervision/dataset/formats/yolo.py,function,,save_data_yaml,A,1,474,477 +src/supervision/detection/compact_mask.py,function,,_rle_area,A,1,27,46 +src/supervision/detection/compact_mask.py,method,CompactMask,__init__,A,1,459,469 +src/supervision/detection/compact_mask.py,method,CompactMask,crop,A,1,587,614 +src/supervision/detection/compact_mask.py,method,CompactMask,__len__,A,1,620,638 +src/supervision/detection/compact_mask.py,method,CompactMask,shape,A,1,646,665 +src/supervision/detection/compact_mask.py,method,CompactMask,offsets,A,1,668,687 +src/supervision/detection/compact_mask.py,method,CompactMask,dtype,A,1,723,741 +src/supervision/detection/core.py,function,,_merge_obb_corners,A,1,2635,2675 +src/supervision/detection/core.py,function,,merge_inner_detections_objects_without_iou,A,1,2888,2899 +src/supervision/detection/core.py,function,,validate_fields_both_defined_or_none,A,1,2931,2934 +src/supervision/detection/core.py,method,Detections,__post_init__,A,1,164,171 +src/supervision/detection/core.py,method,Detections,__len__,A,1,174,178 +src/supervision/detection/core.py,method,Detections,from_yolov5,A,1,222,250 +src/supervision/detection/core.py,method,Detections,from_tensorflow,A,1,373,414 +src/supervision/detection/core.py,method,Detections,empty,A,1,2065,2083 +src/supervision/detection/core.py,method,Detections,is_empty,A,1,2086,2108 +src/supervision/detection/core.py,method,Detections,box_area,A,1,2415,2424 +src/supervision/detection/core.py,method,Detections,box_aspect_ratio,A,1,2427,2461 +src/supervision/detection/line_zone.py,method,LineZone,in_count,A,1,130,131 +src/supervision/detection/line_zone.py,method,LineZone,out_count,A,1,134,135 +src/supervision/detection/line_zone.py,method,LineZone,in_count_per_class,A,1,138,139 +src/supervision/detection/line_zone.py,method,LineZone,out_count_per_class,A,1,142,143 +src/supervision/detection/vlm.py,function,,validate_vlm_parameters,A,1,211,212 +src/supervision/detection/vlm.py,function,,from_qwen_3_vl,A,1,397,420 +src/supervision/detection/tools/csv_sink.py,method,WriterProtocol,writerow,A,1,28,28 +src/supervision/detection/tools/csv_sink.py,method,CSVSink,__init__,A,1,75,86 +src/supervision/detection/tools/csv_sink.py,method,CSVSink,__enter__,A,1,88,90 +src/supervision/detection/tools/csv_sink.py,method,CSVSink,__exit__,A,1,92,98 +src/supervision/detection/tools/inference_slicer.py,method,InferenceSlicer,_generate_offset,A,1,389,450 +src/supervision/detection/tools/json_sink.py,method,JSONSink,__init__,A,1,51,60 +src/supervision/detection/tools/json_sink.py,method,JSONSink,__enter__,A,1,62,64 +src/supervision/detection/tools/json_sink.py,method,JSONSink,__exit__,A,1,66,72 +src/supervision/detection/tools/json_sink.py,method,JSONSink,append,A,1,200,215 +src/supervision/detection/tools/polygon_zone.py,method,PolygonZoneAnnotator,__init__,A,1,131,153 +src/supervision/detection/tools/smoother.py,method,DetectionsSmoother,__init__,A,1,90,97 +src/supervision/detection/tools/transformers.py,function,,process_transformers_detection_result,A,1,14,39 +src/supervision/detection/tools/transformers.py,function,,png_string_to_segmentation_array,A,1,207,221 +src/supervision/detection/utils/boxes.py,function,,clip_boxes,A,1,10,49 +src/supervision/detection/utils/boxes.py,function,,denormalize_boxes,A,1,105,161 +src/supervision/detection/utils/boxes.py,function,,move_boxes,A,1,164,192 +src/supervision/detection/utils/boxes.py,function,,move_oriented_boxes,A,1,195,241 +src/supervision/detection/utils/boxes.py,function,,scale_boxes,A,1,312,344 +src/supervision/detection/utils/converters.py,function,,xyxy_to_polygons,A,1,12,28 +src/supervision/detection/utils/converters.py,function,,polygon_to_mask,A,1,31,49 +src/supervision/detection/utils/converters.py,function,,xywh_to_xyxy,A,1,52,82 +src/supervision/detection/utils/converters.py,function,,xyxy_to_xywh,A,1,85,116 +src/supervision/detection/utils/converters.py,function,,xcycwh_to_xyxy,A,1,119,152 +src/supervision/detection/utils/converters.py,function,,is_compressed_rle,A,1,471,494 +src/supervision/detection/utils/converters.py,function,,polygon_to_xyxy,A,1,724,738 +src/supervision/detection/utils/internal.py,function,,cross_product,A,1,396,416 +src/supervision/detection/utils/iou_and_nms.py,function,,group_within,A,1,1445,1450 +src/supervision/detection/utils/iou_and_nms.py,function,,_polygon_areas,A,1,363,375 +src/supervision/detection/utils/iou_and_nms.py,function,,_aabb_envelopes,A,1,378,390 +src/supervision/detection/utils/iou_and_nms.py,function,,_overlapping_envelope_pairs,A,1,394,423 +src/supervision/detection/utils/iou_and_nms.py,function,,_group_overlapping_boxes,A,1,1169,1202 +src/supervision/detection/utils/iou_and_nms.py,function,,iou_against_candidate,A,1,1192,1198 +src/supervision/detection/utils/iou_and_nms.py,function,,box_non_max_merge,A,1,1206,1235 +src/supervision/detection/utils/iou_and_nms.py,function,,group_within,A,1,1230,1232 +src/supervision/detection/utils/iou_and_nms.py,function,,_group_overlapping_oriented_boxes,A,1,1333,1354 +src/supervision/detection/utils/iou_and_nms.py,function,,iou_against_candidate,A,1,1344,1350 +src/supervision/detection/utils/iou_and_nms.py,method,OverlapFilter,list,A,1,35,36 +src/supervision/detection/utils/iou_and_nms.py,method,OverlapMetric,list,A,1,71,72 +src/supervision/detection/utils/masks.py,function,,sum_over_mask,A,1,137,140 +src/supervision/detection/utils/masks.py,function,,resize_masks,A,1,263,288 +src/supervision/draw/color.py,method,Color,as_rgb,A,1,287,302 +src/supervision/draw/color.py,method,Color,as_bgr,A,1,304,319 +src/supervision/draw/color.py,method,Color,as_rgba,A,1,321,336 +src/supervision/draw/color.py,method,Color,as_bgra,A,1,338,353 +src/supervision/draw/color.py,method,Color,WHITE,A,1,356,357 +src/supervision/draw/color.py,method,Color,BLACK,A,1,360,361 +src/supervision/draw/color.py,method,Color,GREY,A,1,364,365 +src/supervision/draw/color.py,method,Color,RED,A,1,368,369 +src/supervision/draw/color.py,method,Color,GREEN,A,1,372,373 +src/supervision/draw/color.py,method,Color,BLUE,A,1,376,377 +src/supervision/draw/color.py,method,Color,YELLOW,A,1,380,381 +src/supervision/draw/color.py,method,Color,ROBOFLOW,A,1,384,385 +src/supervision/draw/color.py,method,Color,__hash__,A,1,387,388 +src/supervision/draw/color.py,method,ColorPalette,DEFAULT,A,1,410,428 +src/supervision/draw/color.py,method,ColorPalette,ROBOFLOW,A,1,431,449 +src/supervision/draw/color.py,method,ColorPalette,LEGACY,A,1,452,453 +src/supervision/draw/color.py,method,ColorPalette,__len__,A,1,537,544 +src/supervision/draw/utils.py,function,,draw_line,A,1,14,41 +src/supervision/draw/utils.py,function,,draw_rectangle,A,1,44,69 +src/supervision/draw/utils.py,function,,draw_polygon,A,1,166,186 +src/supervision/draw/utils.py,function,,calculate_optimal_text_scale,A,1,371,393 +src/supervision/geometry/core.py,method,Position,list,A,1,25,26 +src/supervision/geometry/core.py,method,Point,as_xy_int_tuple,A,1,53,60 +src/supervision/geometry/core.py,method,Point,as_xy_float_tuple,A,1,62,69 +src/supervision/geometry/core.py,method,Vector,magnitude,A,1,99,108 +src/supervision/geometry/core.py,method,Vector,center,A,1,111,120 +src/supervision/geometry/core.py,method,Vector,cross_product,A,1,123,142 +src/supervision/geometry/core.py,method,Rect,from_xyxy,A,1,176,178 +src/supervision/geometry/core.py,method,Rect,top_left,A,1,181,182 +src/supervision/geometry/core.py,method,Rect,bottom_right,A,1,185,186 +src/supervision/geometry/core.py,method,Rect,pad,A,1,188,193 +src/supervision/geometry/core.py,method,Rect,as_xyxy_int_tuple,A,1,196,201 +src/supervision/key_points/annotators.py,method,BaseKeyPointAnnotator,annotate,A,1,26,27 +src/supervision/key_points/annotators.py,method,VertexAnnotator,__init__,A,1,37,48 +src/supervision/key_points/annotators.py,method,EdgeAnnotator,__init__,A,1,117,138 +src/supervision/key_points/annotators.py,method,VertexEllipseAreaAnnotator,__init__,A,1,383,403 +src/supervision/key_points/annotators.py,method,VertexEllipseOutlineAnnotator,__init__,A,1,482,501 +src/supervision/key_points/annotators.py,method,VertexEllipseHaloAnnotator,__init__,A,1,583,603 +src/supervision/key_points/annotators.py,method,VertexLabelAnnotator,__init__,A,1,709,738 +src/supervision/key_points/annotators.py,method,VertexLabelAnnotator,get_text_bounding_box,A,1,908,926 +src/supervision/key_points/core.py,method,KeyPoints,__post_init__,A,1,298,305 +src/supervision/key_points/core.py,method,KeyPoints,confidence,A,1,309,315 +src/supervision/key_points/core.py,method,KeyPoints,confidence,A,1,318,323 +src/supervision/key_points/core.py,method,KeyPoints,__len__,A,1,325,343 +src/supervision/key_points/core.py,method,KeyPoints,empty,A,1,1098,1114 +src/supervision/key_points/core.py,method,KeyPoints,is_empty,A,1,1116,1134 +src/supervision/metrics/core.py,method,Metric,update,A,1,14,19 +src/supervision/metrics/core.py,method,Metric,reset,A,1,22,26 +src/supervision/metrics/core.py,method,Metric,compute,A,1,29,33 +src/supervision/metrics/detection.py,function,,validate_input_tensors,A,1,192,196 +src/supervision/metrics/f1_score.py,method,F1Score,__init__,A,1,66,83 +src/supervision/metrics/f1_score.py,method,F1Score,reset,A,1,85,90 +src/supervision/metrics/f1_score.py,method,F1Score,compute,A,1,123,150 +src/supervision/metrics/f1_score.py,method,F1ScoreResult,f1_50,A,1,546,547 +src/supervision/metrics/f1_score.py,method,F1ScoreResult,f1_75,A,1,550,551 +src/supervision/metrics/mean_average_precision.py,function,,compute_average_precision,A,1,1010,1032 +src/supervision/metrics/mean_average_precision.py,function,,mean_with_mask,A,1,1017,1028 +src/supervision/metrics/mean_average_precision.py,function,,_summarize_predictions,A,1,1145,1187 +src/supervision/metrics/mean_average_precision.py,method,MeanAveragePrecisionResult,map50,A,1,69,71 +src/supervision/metrics/mean_average_precision.py,method,MeanAveragePrecisionResult,map75,A,1,74,76 +src/supervision/metrics/mean_average_precision.py,method,EvaluationDataset,empty,A,1,281,282 +src/supervision/metrics/mean_average_precision.py,method,COCOEvaluatorParameters,__init__,A,1,551,580 +src/supervision/metrics/mean_average_precision.py,method,MeanAveragePrecision,__init__,A,1,1264,1286 +src/supervision/metrics/mean_average_precision.py,method,MeanAveragePrecision,reset,A,1,1288,1293 +src/supervision/metrics/mean_average_recall.py,method,MeanAverageRecallResult,mAR_at_1,A,1,64,65 +src/supervision/metrics/mean_average_recall.py,method,MeanAverageRecallResult,mAR_at_10,A,1,68,69 +src/supervision/metrics/mean_average_recall.py,method,MeanAverageRecallResult,mAR_at_100,A,1,72,73 +src/supervision/metrics/mean_average_recall.py,method,MeanAverageRecall,__init__,A,1,297,312 +src/supervision/metrics/mean_average_recall.py,method,MeanAverageRecall,reset,A,1,314,319 +src/supervision/metrics/mean_average_recall.py,method,MeanAverageRecall,compute,A,1,352,379 +src/supervision/metrics/precision.py,method,Precision,__init__,A,1,69,86 +src/supervision/metrics/precision.py,method,Precision,reset,A,1,88,93 +src/supervision/metrics/precision.py,method,Precision,compute,A,1,126,153 +src/supervision/metrics/precision.py,method,PrecisionResult,precision_at_50,A,1,555,556 +src/supervision/metrics/precision.py,method,PrecisionResult,precision_at_75,A,1,559,560 +src/supervision/metrics/recall.py,method,Recall,__init__,A,1,69,86 +src/supervision/metrics/recall.py,method,Recall,reset,A,1,88,93 +src/supervision/metrics/recall.py,method,Recall,compute,A,1,126,153 +src/supervision/metrics/recall.py,method,RecallResult,recall_at_50,A,1,511,512 +src/supervision/metrics/recall.py,method,RecallResult,recall_at_75,A,1,515,516 +src/supervision/tracker/byte_tracker/core.py,method,ByteTrack,__init__,A,1,56,81 +src/supervision/tracker/byte_tracker/core.py,method,ByteTrack,reset,A,1,157,171 +src/supervision/tracker/byte_tracker/kalman_filter.py,method,KalmanFilter,initiate,A,1,32,59 +src/supervision/tracker/byte_tracker/kalman_filter.py,method,KalmanFilter,predict,A,1,61,94 +src/supervision/tracker/byte_tracker/kalman_filter.py,method,KalmanFilter,project,A,1,96,121 +src/supervision/tracker/byte_tracker/kalman_filter.py,method,KalmanFilter,update,A,1,160,193 +src/supervision/tracker/byte_tracker/matching.py,function,,indices_to_matches,A,1,15,24 +src/supervision/tracker/byte_tracker/single_object_track.py,method,STrack,__init__,A,1,20,49 +src/supervision/tracker/byte_tracker/single_object_track.py,method,STrack,tlbr,A,1,152,158 +src/supervision/tracker/byte_tracker/single_object_track.py,method,STrack,tlwh_to_xyah,A,1,161,168 +src/supervision/tracker/byte_tracker/single_object_track.py,method,STrack,to_xyah,A,1,170,171 +src/supervision/tracker/byte_tracker/single_object_track.py,method,STrack,tlbr_to_tlwh,A,1,174,177 +src/supervision/tracker/byte_tracker/single_object_track.py,method,STrack,tlwh_to_tlbr,A,1,180,183 +src/supervision/tracker/byte_tracker/single_object_track.py,method,STrack,__repr__,A,1,185,186 +src/supervision/tracker/byte_tracker/utils.py,method,IdCounter,reset,A,1,20,22 +src/supervision/tracker/byte_tracker/utils.py,method,IdCounter,new_id,A,1,24,33 +src/supervision/tracker/byte_tracker/utils.py,method,IdCounter,NO_ID,A,1,36,37 +src/supervision/utils/conversion.py,function,,ensure_cv2_image_for_class_method,A,1,16,40 +src/supervision/utils/conversion.py,function,,ensure_cv2_image_for_annotation,A,1,48,51 +src/supervision/utils/conversion.py,function,,ensure_cv2_image_for_standalone_function,A,1,54,76 +src/supervision/utils/conversion.py,function,,ensure_pil_image_for_class_method,A,1,79,102 +src/supervision/utils/conversion.py,function,,ensure_pil_image_for_annotation,A,1,110,113 +src/supervision/utils/conversion.py,function,,ensure_cv2_image_for_processing,A,1,121,124 +src/supervision/utils/conversion.py,function,,pillow_to_cv2,A,1,148,163 +src/supervision/utils/conversion.py,function,,cv2_to_pillow,A,1,166,178 +src/supervision/utils/file.py,function,,read_json_file,A,1,142,168 +src/supervision/utils/file.py,function,,save_json_file,A,1,171,183 +src/supervision/utils/file.py,function,,read_yaml_file,A,1,186,198 +src/supervision/utils/file.py,function,,save_yaml_file,A,1,201,211 +src/supervision/utils/image.py,function,,grayscale_image,A,1,404,431 +src/supervision/utils/image.py,function,,_generate_color_image,A,1,918,923 +src/supervision/utils/image.py,method,ImageSink,__init__,A,1,482,519 +src/supervision/utils/image.py,method,ImageSink,__exit__,A,1,551,557 +src/supervision/utils/internal.py,function,,format_warning,A,1,21,32 +src/supervision/utils/internal.py,function,,warn_deprecated,A,1,43,50 +src/supervision/utils/internal.py,function,,deprecated_parameter,A,1,53,127 +src/supervision/utils/internal.py,function,,decorator,A,1,102,125 +src/supervision/utils/internal.py,method,classproperty,__init__,A,1,145,150 +src/supervision/utils/iterables.py,function,,fill,A,1,45,73 +src/supervision/utils/video.py,method,VideoInfo,resolution_wh,A,1,72,73 +src/supervision/utils/video.py,method,VideoSink,__init__,A,1,99,103 +src/supervision/utils/video.py,method,FPSMonitor,__init__,A,1,464,484 +src/supervision/utils/video.py,method,FPSMonitor,tick,A,1,499,503 +src/supervision/utils/video.py,method,FPSMonitor,reset,A,1,505,509 +src/supervision/validators/__init__.py,function,,validate_xyxy,A,1,33,34 +src/supervision/validators/__init__.py,function,,validate_mask,A,1,80,81 +src/supervision/validators/__init__.py,function,,validate_class_id,A,1,102,103 +src/supervision/validators/__init__.py,function,,validate_confidence,A,1,125,126 +src/supervision/validators/__init__.py,function,,validate_key_point_confidence,A,1,156,157 +src/supervision/validators/__init__.py,function,,validate_keypoint_confidence,A,1,165,166 +src/supervision/validators/__init__.py,function,,validate_tracker_id,A,1,187,188 +src/supervision/validators/__init__.py,function,,validate_data,A,1,212,213 +src/supervision/validators/__init__.py,function,,validate_xy,A,1,232,233 +src/supervision/validators/__init__.py,function,,_validate_detections_fields,A,1,259,273 +src/supervision/validators/__init__.py,function,,validate_detections_fields,A,1,281,289 +src/supervision/validators/__init__.py,function,,validate_key_points_fields,A,1,317,320 +src/supervision/validators/__init__.py,function,,validate_keypoints_fields,A,1,328,331 +src/supervision/validators/__init__.py,function,,validate_resolution,A,1,362,363 +src/supervision/annotators/core.py,function,,load_default_font,A,2,1768,1774 +src/supervision/annotators/core.py,function,,_normalize_color_input,A,2,67,77 +src/supervision/annotators/core.py,method,_BaseLabelAnnotator,_adjust_labels_in_frame,A,2,147,187 +src/supervision/annotators/core.py,method,IconAnnotator,_load_icon,A,2,1884,1894 +src/supervision/annotators/core.py,method,RoundBoxAnnotator,__init__,A,2,2453,2477 +src/supervision/annotators/core.py,method,PercentageBarAnnotator,__init__,A,2,2588,2620 +src/supervision/annotators/utils.py,function,,get_color_by_index,A,2,133,136 +src/supervision/assets/downloader.py,function,,is_md5_hash_matching,A,2,17,38 +src/supervision/assets/list.py,method,Assets,list,A,2,19,20 +src/supervision/classification/core.py,method,Classifications,from_clip,A,2,53,90 +src/supervision/classification/core.py,method,Classifications,from_timm,A,2,121,164 +src/supervision/classification/core.py,method,Classifications,get_top_k,A,2,166,200 +src/supervision/dataset/core.py,function,,is_in_memory,A,2,279,280 +src/supervision/dataset/core.py,method,DetectionDataset,__len__,A,2,110,111 +src/supervision/dataset/core.py,method,DetectionDataset,__iter__,A,2,124,133 +src/supervision/dataset/core.py,method,ClassificationDataset,__len__,A,2,775,776 +src/supervision/dataset/core.py,method,ClassificationDataset,__iter__,A,2,789,800 +src/supervision/dataset/formats/coco.py,function,,coco_categories_to_classes,A,2,29,32 +src/supervision/dataset/formats/coco.py,function,,classes_to_coco_categories,A,2,48,80 +src/supervision/dataset/formats/coco.py,function,,get_coco_class_index_mapping,A,2,357,393 +src/supervision/dataset/formats/yolo.py,function,,_polygons_to_masks,A,2,51,62 +src/supervision/dataset/formats/yolo.py,function,,_with_seg_mask,A,2,66,67 +src/supervision/dataset/formats/yolo.py,function,,save_yolo_annotations,A,2,422,471 +src/supervision/detection/compact_mask.py,method,CompactMask,to_dense,A,2,555,585 +src/supervision/detection/compact_mask.py,method,CompactMask,__iter__,A,2,640,643 +src/supervision/detection/compact_mask.py,method,CompactMask,bbox_xyxy,A,2,690,720 +src/supervision/detection/compact_mask.py,method,CompactMask,area,A,2,744,764 +src/supervision/detection/compact_mask.py,method,CompactMask,sum,A,2,766,793 +src/supervision/detection/compact_mask.py,method,CompactMask,__array__,A,2,863,889 +src/supervision/detection/core.py,method,Detections,__eq__,A,2,206,217 +src/supervision/detection/core.py,method,Detections,from_yolo_nas,A,2,336,369 +src/supervision/detection/core.py,method,Detections,from_deepsparse,A,2,418,450 +src/supervision/detection/core.py,method,Detections,from_mmdetection,A,2,454,487 +src/supervision/detection/core.py,method,Detections,from_detectron2,A,2,573,616 +src/supervision/detection/core.py,method,Detections,from_paddledet,A,2,930,968 +src/supervision/detection/line_zone.py,method,LineZone,__init__,A,2,91,127 +src/supervision/detection/line_zone.py,method,LineZone,_calculate_region_of_interest_limits,A,2,217,246 +src/supervision/detection/line_zone.py,method,LineZoneAnnotator,_draw_oriented_label,A,2,588,637 +src/supervision/detection/line_zone.py,method,LineZoneAnnotatorMulticlass,__init__,A,2,714,767 +src/supervision/detection/vlm.py,method,LMM,list,A,2,50,51 +src/supervision/detection/vlm.py,method,VLM,list,A,2,97,98 +src/supervision/detection/tools/csv_sink.py,method,CSVSink,close,A,2,111,116 +src/supervision/detection/tools/csv_sink.py,method,CSVSink,parse_field_names,A,2,234,241 +src/supervision/detection/tools/inference_slicer.py,method,InferenceSlicer,__init__,A,2,143,176 +src/supervision/detection/tools/json_sink.py,method,JSONSink,write_and_close,A,2,109,119 +src/supervision/detection/tools/polygon_zone.py,method,PolygonZone,__init__,A,2,56,70 +src/supervision/detection/tools/transformers.py,function,,process_transformers_v5_segmentation_result,A,2,82,108 +src/supervision/detection/tools/transformers.py,function,,process_transformers_v5_panoptic_segmentation_result,A,2,182,204 +src/supervision/detection/utils/boxes.py,function,,pad_boxes,A,2,52,96 +src/supervision/detection/utils/converters.py,function,,xyxy_to_xcycarh,A,2,155,199 +src/supervision/detection/utils/converters.py,function,,mask_to_xyxy,A,2,202,245 +src/supervision/detection/utils/converters.py,function,,_delta_decode,A,2,418,442 +src/supervision/detection/utils/converters.py,function,,_delta_encode,A,2,445,468 +src/supervision/detection/utils/converters.py,function,,_rle_counts_to_mask,A,2,538,571 +src/supervision/detection/utils/iou_and_nms.py,function,,_jaccard,A,2,264,301 +src/supervision/detection/utils/iou_and_nms.py,function,,_prepare_predictions_for_nms,A,2,899,913 +src/supervision/detection/utils/iou_and_nms.py,function,,box_non_max_suppression,A,2,938,970 +src/supervision/draw/color.py,function,,unify_to_bgr,A,2,547,572 +src/supervision/draw/color.py,method,Color,as_hex,A,2,264,285 +src/supervision/draw/color.py,method,Color,__repr__,A,2,390,393 +src/supervision/draw/color.py,method,ColorPalette,from_hex,A,2,456,476 +src/supervision/draw/color.py,method,ColorPalette,by_idx,A,2,512,535 +src/supervision/draw/utils.py,function,,draw_filled_rectangle,A,2,72,111 +src/supervision/draw/utils.py,function,,draw_filled_polygon,A,2,189,215 +src/supervision/draw/utils.py,function,,draw_text,A,2,218,298 +src/supervision/draw/utils.py,function,,calculate_optimal_line_thickness,A,2,396,420 +src/supervision/key_points/core.py,method,KeyPoints,__eq__,A,2,369,383 +src/supervision/metrics/detection.py,function,,_assert_supported_target,A,2,22,25 +src/supervision/metrics/detection.py,method,ConfusionMatrix,from_detections,A,2,238,318 +src/supervision/metrics/detection.py,method,ConfusionMatrix,from_tensors,A,2,322,410 +src/supervision/metrics/detection.py,method,ConfusionMatrix,_drop_extra_matches,A,2,577,590 +src/supervision/metrics/detection.py,method,ConfusionMatrix,benchmark,A,2,593,657 +src/supervision/metrics/detection.py,method,MeanAveragePrecision,from_detections,A,2,787,836 +src/supervision/metrics/detection.py,method,MeanAveragePrecision,benchmark,A,2,840,883 +src/supervision/metrics/detection.py,method,MeanAveragePrecision,compute_average_precision,A,2,984,1019 +src/supervision/metrics/f1_score.py,method,F1Score,_compute_f1,A,2,405,432 +src/supervision/metrics/f1_score.py,method,F1Score,_filter_predictions_and_targets_by_size,A,2,490,508 +src/supervision/metrics/mean_average_precision.py,method,MeanAveragePrecisionResult,map50_95,A,2,60,66 +src/supervision/metrics/mean_average_precision.py,method,EvaluationDataset,__init__,A,2,255,278 +src/supervision/metrics/mean_average_precision.py,method,COCOEvaluator,_pycocotools_summarize,A,2,1097,1190 +src/supervision/metrics/mean_average_precision.py,method,MeanAveragePrecision,compute,A,2,1450,1520 +src/supervision/metrics/mean_average_recall.py,method,MeanAverageRecall,_compute_average_recall_for_classes,A,2,471,505 +src/supervision/metrics/mean_average_recall.py,method,MeanAverageRecall,_compute_recall,A,2,602,627 +src/supervision/metrics/mean_average_recall.py,method,MeanAverageRecall,_filter_predictions_and_targets_by_size,A,2,688,706 +src/supervision/metrics/precision.py,method,Precision,_compute_precision,A,2,408,438 +src/supervision/metrics/precision.py,method,Precision,_filter_predictions_and_targets_by_size,A,2,499,517 +src/supervision/metrics/recall.py,method,Recall,_compute_recall,A,2,364,394 +src/supervision/metrics/recall.py,method,Recall,_filter_predictions_and_targets_by_size,A,2,457,475 +src/supervision/metrics/utils/utils.py,function,,ensure_pandas_installed,A,2,1,6 +src/supervision/tracker/byte_tracker/kalman_filter.py,method,KalmanFilter,__init__,A,2,21,30 +src/supervision/tracker/byte_tracker/kalman_filter.py,method,KalmanFilter,multi_predict,A,2,123,158 +src/supervision/tracker/byte_tracker/matching.py,function,,linear_assignment,A,2,27,41 +src/supervision/tracker/byte_tracker/single_object_track.py,method,STrack,tlwh,A,2,140,149 +src/supervision/tracker/byte_tracker/utils.py,method,IdCounter,__init__,A,2,5,18 +src/supervision/utils/file.py,function,,save_text_file,A,2,129,139 +src/supervision/utils/image.py,function,,letterbox_image,A,2,210,275 +src/supervision/utils/image.py,function,,_aggregate_images_shape,A,2,728,736 +src/supervision/utils/image.py,method,ImageSink,save_image,A,2,531,549 +src/supervision/utils/internal.py,method,classproperty,__get__,A,2,152,166 +src/supervision/utils/video.py,function,,reader_thread,A,2,369,376 +src/supervision/utils/video.py,method,VideoInfo,from_video_path,A,2,59,69 +src/supervision/utils/video.py,method,VideoSink,__enter__,A,2,105,117 +src/supervision/utils/video.py,method,VideoSink,write_frame,A,2,119,128 +src/supervision/utils/video.py,method,VideoSink,__exit__,A,2,130,137 +src/supervision/annotators/core.py,method,LabelAnnotator,annotate,A,3,1252,1331 +src/supervision/annotators/core.py,method,LabelAnnotator,draw_rounded_rectangle,A,3,1470,1509 +src/supervision/annotators/core.py,method,RichLabelAnnotator,annotate,A,3,1569,1647 +src/supervision/annotators/core.py,method,RichLabelAnnotator,_load_font,A,3,1765,1785 +src/supervision/annotators/core.py,method,BlurAnnotator,__init__,A,3,1902,1911 +src/supervision/annotators/core.py,method,PixelateAnnotator,__init__,A,3,2236,2247 +src/supervision/annotators/core.py,method,ComparisonAnnotator,_mask_from_xyxy,A,3,3183,3196 +src/supervision/annotators/core.py,method,ComparisonAnnotator,_mask_from_obb,A,3,3199,3211 +src/supervision/annotators/core.py,method,ComparisonAnnotator,_draw_labels,A,3,3226,3294 +src/supervision/annotators/utils.py,function,,_validate_labels,A,3,205,221 +src/supervision/classification/core.py,function,,_validate_class_ids,A,3,13,19 +src/supervision/dataset/core.py,method,DetectionDataset,_get_image,A,3,101,108 +src/supervision/dataset/core.py,method,DetectionDataset,as_coco,A,3,626,723 +src/supervision/dataset/core.py,method,ClassificationDataset,__init__,A,3,740,761 +src/supervision/dataset/core.py,method,ClassificationDataset,_get_image,A,3,766,773 +src/supervision/dataset/core.py,method,ClassificationDataset,from_folder_structure,A,3,922,968 +src/supervision/dataset/utils.py,function,,approximate_mask_with_polygons,A,3,52,76 +src/supervision/dataset/utils.py,function,,merge_class_lists,A,3,80,87 +src/supervision/dataset/utils.py,function,,build_class_index_mapping,A,3,90,105 +src/supervision/dataset/utils.py,function,,save_dataset_images,A,3,128,136 +src/supervision/dataset/utils.py,function,,train_test_split,A,3,139,164 +src/supervision/dataset/formats/coco.py,function,,build_coco_class_index_mapping,A,3,36,44 +src/supervision/dataset/formats/coco.py,function,,group_coco_annotations_by_image_id,A,3,84,93 +src/supervision/dataset/formats/pascal_voc.py,function,,object_to_pascal_voc,A,3,19,81 +src/supervision/dataset/formats/pascal_voc.py,function,,_get_required_text,A,3,351,355 +src/supervision/dataset/formats/yolo.py,function,,object_to_yolo,A,3,274,293 +src/supervision/detection/compact_mask.py,function,,_resize_crop,A,3,341,386 +src/supervision/detection/compact_mask.py,method,CompactMask,__eq__,A,3,891,917 +src/supervision/detection/core.py,function,,_validate_fields_both_defined_or_none,A,3,2902,2921 +src/supervision/detection/core.py,method,Detections,from_ncnn,A,3,2007,2061 +src/supervision/detection/core.py,method,Detections,__setitem__,A,3,2331,2364 +src/supervision/detection/line_zone.py,method,LineZoneAnnotator,__init__,A,3,331,384 +src/supervision/detection/line_zone.py,method,LineZoneAnnotator,_calculate_anchor_in_frame,A,3,481,543 +src/supervision/detection/line_zone.py,method,LineZoneAnnotator,_draw_basic_label,A,3,545,586 +src/supervision/detection/tools/csv_sink.py,method,CSVSink,open,A,3,100,109 +src/supervision/detection/tools/json_sink.py,method,JSONSink,open,A,3,74,82 +src/supervision/detection/tools/json_sink.py,method,JSONSink,_json_default,A,3,85,106 +src/supervision/detection/tools/polygon_zone.py,method,PolygonZone,trigger,A,3,73,108 +src/supervision/detection/tools/transformers.py,function,,process_transformers_v4_panoptic_segmentation_result,A,3,148,178 +src/supervision/detection/utils/boxes.py,function,,obb_polygon_area,A,3,244,269 +src/supervision/detection/utils/boxes.py,function,,xyxyxyxy_to_xyxy,A,3,272,309 +src/supervision/detection/utils/converters.py,function,,mask_to_polygons,A,3,307,328 +src/supervision/detection/utils/converters.py,function,,_mask_to_rle_counts,A,3,497,535 +src/supervision/detection/utils/internal.py,function,,is_data_equal,A,3,202,216 +src/supervision/detection/utils/iou_and_nms.py,function,,_nms_loop_from_iou_matrix,A,3,916,935 +src/supervision/detection/utils/iou_and_nms.py,function,,_greedy_nmm_via_iou_callback,A,3,1105,1133 +src/supervision/detection/utils/masks.py,function,,contains_multiple_segments,A,3,201,260 +src/supervision/detection/utils/vlms.py,function,,fuzzy_match_index,A,3,65,100 +src/supervision/draw/utils.py,function,,draw_rounded_rectangle,A,3,114,163 +src/supervision/geometry/utils.py,function,,get_polygon_center,A,3,7,51 +src/supervision/key_points/annotators.py,method,_BaseVertexEllipseAnnotator,_get_covariances,A,3,298,313 +src/supervision/key_points/annotators.py,method,VertexLabelAnnotator,_resolve_color_list,A,3,960,972 +src/supervision/key_points/core.py,method,KeyPoints,from_ultralytics,A,3,598,634 +src/supervision/key_points/core.py,method,KeyPoints,from_detectron2,A,3,695,743 +src/supervision/key_points/core.py,method,KeyPoints,__setitem__,A,3,1062,1095 +src/supervision/metrics/mean_average_precision.py,method,EvaluationDataset,get_annotations,A,3,445,457 +src/supervision/metrics/mean_average_precision.py,method,COCOEvaluator,__init__,A,3,589,623 +src/supervision/metrics/utils/object_size.py,function,,get_bbox_size_category,A,3,85,123 +src/supervision/metrics/utils/object_size.py,function,,get_mask_size_category,A,3,126,165 +src/supervision/tracker/byte_tracker/core.py,function,,joint_tracks,A,3,337,360 +src/supervision/tracker/byte_tracker/matching.py,function,,fuse_score,A,3,65,75 +src/supervision/tracker/byte_tracker/single_object_track.py,method,STrack,activate,A,3,82,98 +src/supervision/utils/conversion.py,function,,images_to_cv2,A,3,127,145 +src/supervision/utils/conversion.py,function,,wrapper,A,3,28,38 +src/supervision/utils/conversion.py,function,,wrapper,A,3,65,74 +src/supervision/utils/conversion.py,function,,wrapper,A,3,90,100 +src/supervision/utils/image.py,function,,scale_image,A,3,95,142 +src/supervision/utils/image.py,function,,tint_image,A,3,356,400 +src/supervision/utils/image.py,function,,_negotiate_tiles_format,A,3,706,710 +src/supervision/utils/image.py,function,,_calculate_aggregated_images_shape,A,3,713,718 +src/supervision/utils/image.py,function,,_negotiate_grid_size,A,3,756,764 +src/supervision/utils/image.py,function,,_generate_tiles,A,3,767,812 +src/supervision/utils/image.py,function,,_merge_tiles_elements,A,3,879,914 +src/supervision/utils/image.py,method,ImageSink,__enter__,A,3,521,529 +src/supervision/utils/iterables.py,function,,find_duplicates,A,3,76,103 +src/supervision/utils/logger.py,function,,_get_logger,A,3,8,63 +src/supervision/utils/notebook.py,function,,plot_image,A,3,11,47 +src/supervision/utils/video.py,function,,writer_thread,A,3,378,383 +src/supervision/utils/video.py,method,FPSMonitor,fps,A,3,487,497 +src/supervision/annotators/core.py,method,BoxAnnotator,annotate,A,4,214,274 +src/supervision/annotators/core.py,method,MaskAnnotator,annotate,A,4,451,508 +src/supervision/annotators/core.py,method,ColorAnnotator,annotate,A,4,630,695 +src/supervision/annotators/core.py,method,EllipseAnnotator,annotate,A,4,830,896 +src/supervision/annotators/core.py,method,CircleAnnotator,annotate,A,4,1019,1083 +src/supervision/annotators/core.py,method,LabelAnnotator,_get_label_properties,A,4,1333,1385 +src/supervision/annotators/core.py,method,RichLabelAnnotator,_get_label_properties,A,4,1649,1699 +src/supervision/annotators/core.py,method,ComparisonAnnotator,_mask_from_mask,A,4,3214,3224 +src/supervision/annotators/utils.py,function,,resolve_color,A,4,139,156 +src/supervision/annotators/utils.py,function,,hex_to_rgba,A,4,384,409 +src/supervision/annotators/utils.py,function,,rgba_to_hex,A,4,412,427 +src/supervision/annotators/utils.py,method,Trace,put,A,4,347,375 +src/supervision/classification/core.py,function,,_validate_confidence,A,4,22,29 +src/supervision/dataset/core.py,method,DetectionDataset,as_pascal_voc,A,4,330,385 +src/supervision/dataset/core.py,method,ClassificationDataset,as_folder_structure,A,4,897,919 +src/supervision/dataset/utils.py,function,,map_detections_class_id,A,4,108,125 +src/supervision/dataset/formats/coco.py,function,,save_coco_annotations,A,4,507,621 +src/supervision/dataset/formats/pascal_voc.py,function,,parse_polygon_points,A,4,339,347 +src/supervision/dataset/formats/yolo.py,function,,_is_int_like,A,4,100,109 +src/supervision/detection/compact_mask.py,method,CompactMask,repack,A,4,984,1060 +src/supervision/detection/core.py,method,Detections,from_inference,A,4,620,672 +src/supervision/detection/core.py,method,Detections,from_sam,A,4,676,715 +src/supervision/detection/line_zone.py,method,LineZone,_compute_anchor_sides,A,4,248,305 +src/supervision/detection/line_zone.py,method,LineZoneAnnotator,_get_line_angle,A,4,456,479 +src/supervision/detection/line_zone.py,method,LineZoneAnnotator,_make_label_image,A,4,641,710 +src/supervision/detection/vlm.py,method,LMM,from_value,A,4,54,69 +src/supervision/detection/vlm.py,method,VLM,from_value,A,4,101,112 +src/supervision/detection/tools/polygon_zone.py,method,PolygonZoneAnnotator,annotate,A,4,155,203 +src/supervision/detection/tools/transformers.py,function,,process_transformers_v5_semantic_or_instance_segmentation_result,A,4,112,144 +src/supervision/detection/tools/transformers.py,function,,append_class_names_to_data,A,4,224,250 +src/supervision/detection/utils/boxes.py,function,,spread_out_boxes,A,4,347,417 +src/supervision/detection/utils/converters.py,function,,xyxy_to_mask,A,4,248,304 +src/supervision/detection/utils/converters.py,function,,mask_to_rle,A,4,649,721 +src/supervision/detection/utils/iou_and_nms.py,function,,box_iou,A,4,90,159 +src/supervision/detection/utils/iou_and_nms.py,function,,_mask_iou_batch_split,A,4,672,733 +src/supervision/detection/utils/iou_and_nms.py,method,OverlapFilter,from_value,A,4,39,50 +src/supervision/detection/utils/iou_and_nms.py,method,OverlapMetric,from_value,A,4,75,86 +src/supervision/detection/utils/masks.py,function,,contains_holes,A,4,151,198 +src/supervision/draw/color.py,function,,_validate_color_hex,A,4,57,62 +src/supervision/draw/color.py,method,Color,from_rgb_tuple,A,4,149,174 +src/supervision/draw/color.py,method,Color,from_bgr_tuple,A,4,177,202 +src/supervision/draw/color.py,method,ColorPalette,from_matplotlib,A,4,479,509 +src/supervision/key_points/core.py,function,,_optional_array_equal,A,4,42,48 +src/supervision/key_points/core.py,method,KeyPoints,__init__,A,4,245,296 +src/supervision/key_points/core.py,method,KeyPoints,__iter__,A,4,345,366 +src/supervision/key_points/core.py,method,KeyPoints,from_transformers,A,4,746,828 +src/supervision/metrics/detection.py,method,MeanAveragePrecision,_match_detection_batch,A,4,1022,1064 +src/supervision/metrics/f1_score.py,method,F1Score,update,A,4,92,121 +src/supervision/metrics/f1_score.py,method,F1Score,_match_detection_batch,A,4,315,344 +src/supervision/metrics/f1_score.py,method,F1Score,_compute_confusion_matrix,A,4,347,402 +src/supervision/metrics/f1_score.py,method,F1Score,_make_empty_content,A,4,452,462 +src/supervision/metrics/mean_average_precision.py,method,MeanAveragePrecisionResult,__str__,A,4,86,142 +src/supervision/metrics/mean_average_recall.py,method,MeanAverageRecall,update,A,4,321,350 +src/supervision/metrics/mean_average_recall.py,method,MeanAverageRecall,_match_detection_batch,A,4,508,536 +src/supervision/metrics/mean_average_recall.py,method,MeanAverageRecall,_compute_confusion_matrix,A,4,539,599 +src/supervision/metrics/mean_average_recall.py,method,MeanAverageRecall,_make_empty_content,A,4,647,660 +src/supervision/metrics/precision.py,method,Precision,update,A,4,95,124 +src/supervision/metrics/precision.py,method,Precision,_match_detection_batch,A,4,320,348 +src/supervision/metrics/precision.py,method,Precision,_compute_confusion_matrix,A,4,351,405 +src/supervision/metrics/precision.py,method,Precision,_make_empty_content,A,4,458,471 +src/supervision/metrics/recall.py,method,Recall,update,A,4,95,124 +src/supervision/metrics/recall.py,method,Recall,_compute_recall_for_classes,A,4,239,273 +src/supervision/metrics/recall.py,method,Recall,_match_detection_batch,A,4,276,304 +src/supervision/metrics/recall.py,method,Recall,_compute_confusion_matrix,A,4,307,361 +src/supervision/metrics/recall.py,method,Recall,_make_empty_content,A,4,414,429 +src/supervision/metrics/utils/object_size.py,function,,get_object_size_category,A,4,46,82 +src/supervision/metrics/utils/object_size.py,function,,get_obb_size_category,A,4,168,211 +src/supervision/tracker/byte_tracker/core.py,function,,sub_tracks,A,4,363,380 +src/supervision/tracker/byte_tracker/single_object_track.py,method,STrack,re_activate,A,4,100,111 +src/supervision/utils/file.py,method,NumpyJsonEncoder,default,A,4,12,19 +src/supervision/utils/image.py,function,,crop_image,A,4,34,90 +src/supervision/utils/image.py,function,,resize_image,A,4,146,206 +src/supervision/utils/image.py,function,,get_image_resolution_wh,A,4,434,477 +src/supervision/utils/image.py,function,,_prepare_default_titles_anchors,A,4,860,876 +src/supervision/utils/internal.py,function,,wrapper,A,4,104,123 +src/supervision/utils/iterables.py,function,,create_batches,A,4,7,42 +src/supervision/validators/__init__.py,function,,_validate_xyxy,A,4,10,24 +src/supervision/validators/__init__.py,function,,_validate_class_id,A,4,84,93 +src/supervision/validators/__init__.py,function,,_validate_confidence,A,4,106,116 +src/supervision/validators/__init__.py,function,,_validate_tracker_id,A,4,169,178 +src/supervision/validators/__init__.py,function,,_validate_xy,A,4,216,223 +src/supervision/validators/__init__.py,function,,_validate_keypoints_fields,A,4,292,309 +src/supervision/annotators/core.py,method,RichLabelAnnotator,_draw_labels,A,5,1701,1762 +src/supervision/annotators/utils.py,function,,get_labels_text,A,5,235,263 +src/supervision/dataset/core.py,method,DetectionDataset,__init__,A,5,74,99 +src/supervision/dataset/formats/pascal_voc.py,function,,load_pascal_voc_annotations,A,5,181,232 +src/supervision/detection/compact_mask.py,function,,_rle_scale_col,A,5,128,190 +src/supervision/detection/compact_mask.py,method,CompactMask,from_dense,A,5,476,549 +src/supervision/detection/core.py,function,,merge_inner_detections_objects,A,5,2860,2884 +src/supervision/detection/core.py,method,Detections,from_lmm,A,5,972,1458 +src/supervision/detection/core.py,method,Detections,area,A,5,2367,2412 +src/supervision/detection/line_zone.py,method,LineZoneAnnotator,annotate,A,5,386,454 +src/supervision/detection/tools/csv_sink.py,method,CSVSink,_slice_value,A,5,119,142 +src/supervision/detection/tools/inference_slicer.py,function,,move_detections,A,5,23,61 +src/supervision/detection/tools/inference_slicer.py,method,InferenceSlicer,_validate_overlap,A,5,453,470 +src/supervision/detection/tools/inference_slicer.py,function,,_compute_axis_starts,A,5,413,428 +src/supervision/detection/tools/json_sink.py,method,JSONSink,_slice_value,A,5,122,145 +src/supervision/detection/tools/transformers.py,function,,process_transformers_v4_segmentation_result,A,5,43,78 +src/supervision/detection/utils/converters.py,function,,_base48_encode,A,5,382,415 +src/supervision/detection/utils/converters.py,function,,rle_to_mask,A,5,575,646 +src/supervision/detection/utils/internal.py,function,,extract_ultralytics_masks,A,5,18,51 +src/supervision/detection/utils/internal.py,function,,is_metadata_equal,A,5,220,237 +src/supervision/detection/utils/iou_and_nms.py,function,,box_iou_batch,A,5,162,261 +src/supervision/detection/utils/iou_and_nms.py,function,,mask_non_max_suppression,A,5,832,896 +src/supervision/detection/utils/iou_and_nms.py,function,,_group_overlapping_masks,A,5,973,1027 +src/supervision/detection/utils/masks.py,function,,move_masks,A,5,12,87 +src/supervision/detection/utils/masks.py,function,,calculate_masks_centroids,A,5,90,147 +src/supervision/draw/color.py,method,Color,from_rgba_tuple,A,5,205,232 +src/supervision/draw/color.py,method,Color,from_bgra_tuple,A,5,235,262 +src/supervision/draw/color.py,method,Color,__eq__,A,5,395,401 +src/supervision/key_points/annotators.py,method,_BaseVertexEllipseAnnotator,_decompose_covariance,A,5,315,328 +src/supervision/key_points/annotators.py,method,VertexEllipseAreaAnnotator,annotate,A,5,406,468 +src/supervision/key_points/annotators.py,method,VertexEllipseOutlineAnnotator,annotate,A,5,504,565 +src/supervision/metrics/detection.py,method,ConfusionMatrix,__eq__,A,5,225,232 +src/supervision/metrics/detection.py,method,MeanAveragePrecision,_average_precisions_per_class,A,5,1067,1120 +src/supervision/metrics/f1_score.py,method,F1Score,_compute_f1_for_classes,A,5,259,312 +src/supervision/metrics/f1_score.py,method,F1ScoreResult,plot,A,5,660,722 +src/supervision/metrics/mean_average_precision.py,method,MeanAveragePrecisionResult,plot,A,5,180,246 +src/supervision/metrics/mean_average_recall.py,method,MeanAverageRecallResult,plot,A,5,185,256 +src/supervision/metrics/precision.py,method,Precision,_compute_precision_for_classes,A,5,262,317 +src/supervision/metrics/precision.py,method,PrecisionResult,plot,A,5,673,735 +src/supervision/metrics/recall.py,method,RecallResult,plot,A,5,627,689 +src/supervision/tracker/byte_tracker/single_object_track.py,method,STrack,predict,A,5,51,59 +src/supervision/utils/file.py,function,,read_txt_file,A,5,92,126 +src/supervision/utils/image.py,function,,_draw_texts,A,5,816,857 +src/supervision/annotators/core.py,method,OrientedBoxAnnotator,annotate,B,6,301,361 +src/supervision/annotators/core.py,method,PolygonAnnotator,annotate,B,6,539,603 +src/supervision/annotators/core.py,method,HaloAnnotator,annotate,B,6,730,797 +src/supervision/annotators/core.py,method,DotAnnotator,annotate,B,6,1122,1194 +src/supervision/annotators/core.py,method,LabelAnnotator,_draw_labels,B,6,1387,1467 +src/supervision/annotators/core.py,method,BlurAnnotator,annotate,B,6,1914,1971 +src/supervision/annotators/core.py,method,HeatMapAnnotator,annotate,B,6,2155,2228 +src/supervision/annotators/core.py,method,TriangleAnnotator,annotate,B,6,2364,2444 +src/supervision/annotators/core.py,method,RoundBoxAnnotator,annotate,B,6,2480,2580 +src/supervision/annotators/core.py,method,PercentageBarAnnotator,annotate,B,6,2624,2719 +src/supervision/annotators/core.py,method,CropAnnotator,annotate,B,6,2823,2901 +src/supervision/annotators/core.py,method,BackgroundOverlayAnnotator,annotate,B,6,2978,3029 +src/supervision/annotators/core.py,method,ComparisonAnnotator,annotate,B,6,3081,3158 +src/supervision/assets/downloader.py,function,,download_assets,B,6,41,95 +src/supervision/dataset/core.py,method,DetectionDataset,split,B,6,157,228 +src/supervision/dataset/core.py,method,ClassificationDataset,split,B,6,824,895 +src/supervision/dataset/formats/pascal_voc.py,function,,detections_to_pascal_voc,B,6,84,178 +src/supervision/detection/core.py,method,Detections,__iter__,B,6,180,203 +src/supervision/detection/core.py,method,Detections,from_transformers,B,6,492,567 +src/supervision/detection/line_zone.py,method,LineZone,_update_class_id_to_name,B,6,307,327 +src/supervision/detection/vlm.py,function,,from_paligemma,B,6,215,257 +src/supervision/detection/vlm.py,function,,recover_truncated_qwen_2_5_vl_response,B,6,260,302 +src/supervision/detection/tools/csv_sink.py,method,CSVSink,append,B,6,196,230 +src/supervision/detection/utils/converters.py,function,,_base48_decode,B,6,332,379 +src/supervision/detection/utils/iou_and_nms.py,function,,box_iou_batch_with_jaccard,B,6,304,360 +src/supervision/detection/utils/vlms.py,function,,edit_distance,B,6,4,62 +src/supervision/key_points/core.py,method,KeyPoints,from_yolo_nas,B,6,637,691 +src/supervision/key_points/core.py,method,KeyPoints,as_detections,B,6,1224,1294 +src/supervision/metrics/f1_score.py,method,F1ScoreResult,__str__,B,6,562,628 +src/supervision/metrics/mean_average_precision.py,method,COCOEvaluator,_prepare_targets_and_predictions,B,6,625,657 +src/supervision/metrics/mean_average_precision.py,method,COCOEvaluator,evaluate,B,6,1192,1223 +src/supervision/metrics/mean_average_recall.py,method,MeanAverageRecallResult,__str__,B,6,85,152 +src/supervision/metrics/precision.py,method,PrecisionResult,__str__,B,6,571,641 +src/supervision/metrics/recall.py,method,RecallResult,__str__,B,6,527,595 +src/supervision/metrics/utils/object_size.py,function,,get_detection_size_category,B,6,214,241 +src/supervision/tracker/byte_tracker/core.py,method,ByteTrack,update_with_detections,B,6,83,155 +src/supervision/tracker/byte_tracker/single_object_track.py,method,STrack,update,B,6,113,137 +src/supervision/utils/image.py,function,,overlay_image,B,6,283,352 +src/supervision/annotators/core.py,method,BoxCornerAnnotator,annotate,B,7,926,991 +src/supervision/annotators/core.py,method,IconAnnotator,annotate,B,7,1812,1881 +src/supervision/annotators/core.py,method,PercentageBarAnnotator,_validate_custom_values,B,7,2751,2775 +src/supervision/annotators/core.py,method,ComparisonAnnotator,_use_obb,B,7,3161,3168 +src/supervision/annotators/core.py,method,ComparisonAnnotator,_use_mask,B,7,3172,3179 +src/supervision/detection/compact_mask.py,function,,_rle_join_cols,B,7,193,246 +src/supervision/detection/compact_mask.py,method,CompactMask,merge,B,7,924,982 +src/supervision/detection/core.py,method,Detections,from_easyocr,B,7,1961,2002 +src/supervision/detection/core.py,method,Detections,with_nms,B,7,2463,2538 +src/supervision/detection/tools/inference_slicer.py,method,InferenceSlicer,_normalize_slice_wh,B,7,338,359 +src/supervision/detection/tools/inference_slicer.py,method,InferenceSlicer,_normalize_overlap_wh,B,7,363,385 +src/supervision/detection/utils/iou_and_nms.py,function,,mask_non_max_merge,B,7,1030,1102 +src/supervision/detection/utils/iou_and_nms.py,function,,_non_max_merge_per_category,B,7,1136,1166 +src/supervision/detection/utils/polygons.py,function,,approximate_polygon,B,7,44,116 +src/supervision/key_points/annotators.py,method,VertexLabelAnnotator,_resolve_labels,B,7,930,957 +src/supervision/key_points/core.py,method,KeyPoints,from_inference,B,7,388,468 +src/supervision/key_points/core.py,method,KeyPoints,with_nms,B,7,1136,1222 +src/supervision/metrics/detection.py,method,MeanAveragePrecision,from_tensors,B,7,887,980 +src/supervision/metrics/f1_score.py,method,F1Score,_detections_content,B,7,434,450 +src/supervision/metrics/f1_score.py,method,F1ScoreResult,to_pandas,B,7,630,658 +src/supervision/metrics/mean_average_precision.py,method,MeanAveragePrecisionResult,to_pandas,B,7,145,177 +src/supervision/metrics/mean_average_recall.py,method,MeanAverageRecallResult,to_pandas,B,7,154,183 +src/supervision/metrics/mean_average_recall.py,method,MeanAverageRecall,_detections_content,B,7,629,645 +src/supervision/metrics/precision.py,method,Precision,_detections_content,B,7,440,456 +src/supervision/metrics/precision.py,method,PrecisionResult,to_pandas,B,7,643,671 +src/supervision/metrics/recall.py,method,Recall,_detections_content,B,7,396,412 +src/supervision/metrics/recall.py,method,RecallResult,to_pandas,B,7,597,625 +src/supervision/tracker/byte_tracker/core.py,function,,remove_duplicate_tracks,B,7,383,405 +src/supervision/tracker/byte_tracker/single_object_track.py,method,STrack,multi_predict,B,7,63,80 +src/supervision/utils/video.py,function,,_mux_audio,B,7,140,204 +src/supervision/utils/video.py,function,,get_video_frames_generator,B,7,231,280 +src/supervision/validators/__init__.py,function,,_validate_keypoint_confidence,B,7,129,147 +src/supervision/validators/__init__.py,function,,_validate_visible,B,7,236,255 +src/supervision/validators/__init__.py,function,,_validate_resolution,B,7,334,354 +src/supervision/annotators/core.py,function,,_paint_masks_by_area,B,8,365,420 +src/supervision/dataset/core.py,method,DetectionDataset,__eq__,B,8,135,155 +src/supervision/dataset/core.py,method,DetectionDataset,as_yolo,B,8,504,575 +src/supervision/dataset/core.py,method,ClassificationDataset,__eq__,B,8,802,822 +src/supervision/dataset/formats/coco.py,function,,coco_annotations_to_masks,B,8,96,142 +src/supervision/dataset/formats/coco.py,function,,load_coco_annotations,B,8,396,500 +src/supervision/detection/core.py,method,Detections,merge,B,8,2111,2214 +src/supervision/detection/core.py,method,Detections,__getitem__,B,8,2282,2328 +src/supervision/detection/tools/smoother.py,method,DetectionsSmoother,update_with_detections,B,8,100,131 +src/supervision/detection/tools/smoother.py,method,DetectionsSmoother,get_smoothed_detections,B,8,166,184 +src/supervision/draw/color.py,method,Color,from_hex,B,8,106,146 +src/supervision/key_points/annotators.py,method,VertexAnnotator,annotate,B,8,51,108 +src/supervision/metrics/mean_average_precision.py,method,EvaluationDataset,get_image_ids,B,8,414,443 +src/supervision/metrics/mean_average_precision.py,function,,_summarize,B,8,1102,1143 +src/supervision/tracker/byte_tracker/matching.py,function,,iou_distance,B,8,44,62 +src/supervision/utils/image.py,function,,_establish_grid_size,B,8,739,753 +src/supervision/utils/internal.py,function,,get_instance_variables,B,8,169,208 +src/supervision/validators/__init__.py,function,,_validate_mask,B,8,37,62 +src/supervision/annotators/utils.py,function,,resolve_color_idx,B,9,40,77 +src/supervision/dataset/formats/coco.py,function,,coco_annotations_to_detections,B,9,145,213 +src/supervision/dataset/formats/yolo.py,function,,load_yolo_annotations,B,9,187,271 +src/supervision/detection/compact_mask.py,function,,_rle_resize,B,9,249,330 +src/supervision/detection/compact_mask.py,method,CompactMask,__getitem__,B,9,795,861 +src/supervision/detection/compact_mask.py,method,CompactMask,with_offset,B,9,1067,1185 +src/supervision/detection/compact_mask.py,method,CompactMask,resize,B,9,1192,1306 +src/supervision/detection/core.py,method,Detections,with_nmm,B,9,2540,2632 +src/supervision/detection/vlm.py,function,,_validate_vlm_parameters,B,9,163,203 +src/supervision/detection/vlm.py,function,,from_deepseek_vl_2,B,9,424,492 +src/supervision/detection/vlm.py,function,,from_moondream,B,9,855,916 +src/supervision/detection/tools/csv_sink.py,method,CSVSink,parse_detection_data,B,9,145,194 +src/supervision/detection/tools/smoother.py,method,DetectionsSmoother,get_track,B,9,133,164 +src/supervision/detection/utils/polygons.py,function,,filter_polygons_by_area,B,9,8,40 +src/supervision/draw/utils.py,function,,draw_image,B,9,301,368 +src/supervision/key_points/annotators.py,method,VertexEllipseHaloAnnotator,annotate,B,9,606,697 +src/supervision/metrics/detection.py,function,,_validate_input_tensors,B,9,146,183 +src/supervision/metrics/f1_score.py,method,F1Score,_filter_detections_by_size,B,9,464,488 +src/supervision/metrics/mean_average_precision.py,method,COCOEvaluator,_compute_iou,B,9,659,698 +src/supervision/metrics/mean_average_precision.py,method,MeanAveragePrecision,update,B,9,1295,1335 +src/supervision/metrics/mean_average_recall.py,method,MeanAverageRecall,_filter_detections_by_size,B,9,662,686 +src/supervision/metrics/precision.py,method,Precision,_filter_detections_by_size,B,9,473,497 +src/supervision/metrics/recall.py,method,Recall,_filter_detections_by_size,B,9,431,455 +src/supervision/utils/image.py,function,,create_tiles,B,9,565,703 +src/supervision/utils/notebook.py,function,,plot_images_grid,B,9,50,117 +src/supervision/utils/video.py,function,,_validate_and_setup_video,B,9,207,228 +src/supervision/validators/__init__.py,function,,_validate_data,B,9,191,204 +src/supervision/annotators/core.py,method,TraceAnnotator,annotate,B,10,2017,2116 +src/supervision/annotators/core.py,method,PixelateAnnotator,annotate,B,10,2250,2322 +src/supervision/annotators/utils.py,function,,wrap_text,B,10,159,202 +src/supervision/detection/core.py,method,Detections,from_azure_analyze_image,B,10,843,926 +src/supervision/detection/tools/json_sink.py,method,JSONSink,parse_detection_data,B,10,148,198 +src/supervision/detection/utils/iou_and_nms.py,function,,compact_mask_iou_batch,B,10,569,669 +src/supervision/key_points/annotators.py,method,_BaseVertexEllipseAnnotator,_iter_ellipse_params,B,10,330,367 +src/supervision/key_points/core.py,function,,_normalize_row_index,B,10,51,71 +src/supervision/metrics/detection.py,function,,detections_to_tensor,B,10,29,143 +src/supervision/metrics/mean_average_precision.py,method,EvaluationDataset,create_class_members,B,10,284,312 +src/supervision/annotators/core.py,method,PercentageBarAnnotator,calculate_border_coordinates,C,11,2722,2748 +src/supervision/annotators/core.py,method,CropAnnotator,calculate_crop_coordinates,C,11,2904,2942 +src/supervision/annotators/utils.py,function,,resolve_text_background_xyxy,C,11,80,129 +src/supervision/dataset/formats/yolo.py,function,,yolo_annotations_to_detections,C,11,138,184 +src/supervision/detection/core.py,method,Detections,from_ultralytics,C,11,254,333 +src/supervision/detection/core.py,function,,stack_or_none,C,11,2182,2195 +src/supervision/detection/line_zone.py,method,LineZone,trigger,C,11,145,214 +src/supervision/key_points/annotators.py,method,_BaseVertexEllipseAnnotator,__init__,C,11,268,296 +src/supervision/metrics/mean_average_precision.py,method,MeanAveragePrecision,_prepare_predictions,C,11,1399,1448 +src/supervision/metrics/mean_average_recall.py,method,MeanAverageRecall,_compute,C,11,381,468 +src/supervision/metrics/recall.py,method,Recall,_compute,C,11,155,236 +src/supervision/dataset/formats/pascal_voc.py,function,,detections_from_xml_obj,C,12,235,332 +src/supervision/detection/compact_mask.py,function,,_rle_split_cols,C,12,49,125 +src/supervision/detection/core.py,function,,merge_inner_detection_object_pair,C,12,2767,2855 +src/supervision/detection/core.py,method,Detections,get_anchors_coordinates,C,12,2217,2280 +src/supervision/detection/line_zone.py,method,LineZoneAnnotatorMulticlass,annotate,C,12,769,873 +src/supervision/detection/tools/inference_slicer.py,method,InferenceSlicer,_run_callback,C,12,275,335 +src/supervision/detection/utils/iou_and_nms.py,function,,oriented_box_non_max_suppression,C,12,1238,1330 +src/supervision/detection/utils/iou_and_nms.py,function,,oriented_box_non_max_merge,C,12,1358,1453 +src/supervision/detection/utils/masks.py,function,,filter_segments_by_distance,C,12,291,426 +src/supervision/key_points/core.py,method,KeyPoints,from_mediapipe,C,12,472,594 +src/supervision/utils/file.py,function,,list_files_with_extensions,C,12,22,89 +src/supervision/dataset/core.py,method,DetectionDataset,merge,C,13,231,327 +src/supervision/dataset/formats/yolo.py,function,,detections_to_yolo_annotations,C,13,296,419 +src/supervision/detection/vlm.py,function,,from_google_gemini_2_0,C,13,591,675 +src/supervision/detection/utils/internal.py,function,,get_data_item,C,13,356,393 +src/supervision/key_points/annotators.py,method,VertexLabelAnnotator,annotate,C,13,740,905 +src/supervision/dataset/formats/yolo.py,function,,_extract_class_names,C,14,70,129 +src/supervision/detection/utils/internal.py,function,,merge_metadata,C,14,302,353 +src/supervision/detection/utils/iou_and_nms.py,function,,mask_iou_batch,C,14,736,829 +src/supervision/metrics/mean_average_precision.py,method,EvaluationDataset,get_category_ids,C,14,368,412 +src/supervision/metrics/mean_average_precision.py,method,EvaluationDataset,load_predictions,C,14,459,523 +src/supervision/dataset/formats/coco.py,function,,detections_to_coco_annotations,C,15,217,354 +src/supervision/detection/core.py,function,,_merge_detection_group,C,15,2678,2762 +src/supervision/detection/vlm.py,function,,from_florence_2,C,15,495,588 +src/supervision/key_points/core.py,method,KeyPoints,_get_by_2d_bool_mask,C,15,830,922 +src/supervision/metrics/detection.py,method,ConfusionMatrix,plot,C,15,660,747 +src/supervision/metrics/f1_score.py,method,F1Score,_compute,C,15,152,256 +src/supervision/metrics/precision.py,method,Precision,_compute,C,15,155,259 +src/supervision/detection/vlm.py,function,,from_qwen_2_5_vl,C,16,305,394 +src/supervision/key_points/annotators.py,method,EdgeAnnotator,annotate,C,16,141,258 +src/supervision/utils/video.py,function,,process_video,C,16,283,456 +src/supervision/detection/core.py,method,Detections,from_sam3,C,17,718,839 +src/supervision/detection/tools/inference_slicer.py,method,InferenceSlicer,__call__,C,17,178,273 +src/supervision/metrics/mean_average_precision.py,method,EvaluationDataset,get_annotation_ids,C,17,314,366 +src/supervision/metrics/mean_average_precision.py,method,MeanAveragePrecision,_prepare_targets,C,17,1337,1396 +src/supervision/detection/utils/internal.py,function,,merge_data,C,18,241,299 +src/supervision/detection/core.py,method,Detections,from_vlm,C,20,1461,1958 +src/supervision/detection/utils/iou_and_nms.py,function,,oriented_box_iou_batch,C,20,426,566 +src/supervision/detection/utils/internal.py,function,,process_roboflow_result,D,22,54,198 +src/supervision/metrics/detection.py,method,ConfusionMatrix,evaluate_detection_batch,D,22,414,574 +src/supervision/tracker/byte_tracker/core.py,method,ByteTrack,update_with_tensors,D,26,173,334 +src/supervision/metrics/mean_average_precision.py,method,COCOEvaluator,_evaluate_image,D,28,700,822 +src/supervision/metrics/mean_average_precision.py,method,COCOEvaluator,_accumulate,D,29,825,1094 +src/supervision/detection/vlm.py,function,,from_google_gemini_2_5,E,33,678,851 +src/supervision/key_points/core.py,method,KeyPoints,__getitem__,E,39,925,1059 diff --git a/metrics-before-radon/hal_antes.json b/metrics-before-radon/hal_antes.json new file mode 100644 index 0000000000..7cd1d2e487 --- /dev/null +++ b/metrics-before-radon/hal_antes.json @@ -0,0 +1,10309 @@ +{ + "src\\supervision\\config.py": { + "total": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "functions": {} + }, + "src\\supervision\\__init__.py": { + "total": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "functions": {} + }, + "src\\supervision\\annotators\\base.py": { + "total": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "functions": { + "annotate": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + } + } + }, + "src\\supervision\\annotators\\core.py": { + "total": { + "h1": 22, + "h2": 382, + "N1": 434, + "N2": 825, + "vocabulary": 404, + "length": 1259, + "calculated_length": 3374.6853079196767, + "volume": 10900.688256784511, + "difficulty": 23.7565445026178, + "effort": 258962.6856814645, + "time": 14386.815871192472, + "bugs": 3.6335627522615037 + }, + "functions": { + "_normalize_color_input": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "__init__": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "_adjust_labels_in_frame": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "annotate": { + "h1": 7, + "h2": 25, + "N1": 19, + "N2": 35, + "vocabulary": 32, + "length": 54, + "calculated_length": 135.74788919877133, + "volume": 270.0, + "difficulty": 4.9, + "effort": 1323.0, + "time": 73.5, + "bugs": 0.09 + }, + "_paint_masks_by_area": { + "h1": 4, + "h2": 12, + "N1": 11, + "N2": 22, + "vocabulary": 16, + "length": 33, + "calculated_length": 51.01955000865388, + "volume": 132.0, + "difficulty": 3.6666666666666665, + "effort": 484.0, + "time": 26.88888888888889, + "bugs": 0.044 + }, + "_get_label_properties": { + "h1": 5, + "h2": 20, + "N1": 14, + "N2": 27, + "vocabulary": 25, + "length": 41, + "calculated_length": 98.04820237218406, + "volume": 190.3981037807637, + "difficulty": 3.375, + "effort": 642.5936002600776, + "time": 35.6996444588932, + "bugs": 0.0634660345935879 + }, + "_draw_labels": { + "h1": 6, + "h2": 24, + "N1": 22, + "N2": 43, + "vocabulary": 30, + "length": 65, + "calculated_length": 125.5488750216347, + "volume": 318.9478887145537, + "difficulty": 5.375, + "effort": 1714.3449018407262, + "time": 95.24138343559589, + "bugs": 0.10631596290485124 + }, + "draw_rounded_rectangle": { + "h1": 4, + "h2": 8, + "N1": 17, + "N2": 32, + "vocabulary": 12, + "length": 49, + "calculated_length": 32.0, + "volume": 175.66316253533668, + "difficulty": 8.0, + "effort": 1405.3053002826935, + "time": 78.07251668237186, + "bugs": 0.058554387511778896 + }, + "_load_font": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "_load_icon": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "calculate_border_coordinates": { + "h1": 5, + "h2": 30, + "N1": 47, + "N2": 94, + "vocabulary": 35, + "length": 141, + "calculated_length": 158.81635834269238, + "volume": 723.2289053892403, + "difficulty": 7.833333333333333, + "effort": 5665.293092215715, + "time": 314.73850512309525, + "bugs": 0.24107630179641343 + }, + "_validate_custom_values": { + "h1": 4, + "h2": 10, + "N1": 7, + "N2": 11, + "vocabulary": 14, + "length": 18, + "calculated_length": 41.219280948873624, + "volume": 68.53238859703687, + "difficulty": 2.2, + "effort": 150.77125491348113, + "time": 8.37618082852673, + "bugs": 0.022844129532345624 + }, + "validate_custom_values": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "calculate_crop_coordinates": { + "h1": 5, + "h2": 30, + "N1": 47, + "N2": 94, + "vocabulary": 35, + "length": 141, + "calculated_length": 158.81635834269238, + "volume": 723.2289053892403, + "difficulty": 7.833333333333333, + "effort": 5665.293092215715, + "time": 314.73850512309525, + "bugs": 0.24107630179641343 + }, + "_use_obb": { + "h1": 4, + "h2": 13, + "N1": 9, + "N2": 17, + "vocabulary": 17, + "length": 26, + "calculated_length": 56.105716335834195, + "volume": 106.27403387250884, + "difficulty": 2.6153846153846154, + "effort": 277.94747320502313, + "time": 15.441526289167951, + "bugs": 0.03542467795750295 + }, + "_use_mask": { + "h1": 4, + "h2": 13, + "N1": 9, + "N2": 17, + "vocabulary": 17, + "length": 26, + "calculated_length": 56.105716335834195, + "volume": 106.27403387250884, + "difficulty": 2.6153846153846154, + "effort": 277.94747320502313, + "time": 15.441526289167951, + "bugs": 0.03542467795750295 + }, + "_mask_from_xyxy": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "_mask_from_obb": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "_mask_from_mask": { + "h1": 2, + "h2": 3, + "N1": 2, + "N2": 4, + "vocabulary": 5, + "length": 6, + "calculated_length": 6.754887502163469, + "volume": 13.931568569324174, + "difficulty": 1.3333333333333333, + "effort": 18.575424759098897, + "time": 1.0319680421721609, + "bugs": 0.004643856189774725 + } + } + }, + "src\\supervision\\annotators\\utils.py": { + "total": { + "h1": 18, + "h2": 135, + "N1": 110, + "N2": 213, + "vocabulary": 153, + "length": 323, + "calculated_length": 1030.4287556278239, + "volume": 2344.1362731897266, + "difficulty": 14.2, + "effort": 33286.735079294114, + "time": 1849.2630599607842, + "bugs": 0.7813787577299088 + }, + "functions": { + "list": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "resolve_color_idx": { + "h1": 4, + "h2": 11, + "N1": 7, + "N2": 14, + "vocabulary": 15, + "length": 21, + "calculated_length": 46.053747805010275, + "volume": 82.0447025077789, + "difficulty": 2.5454545454545454, + "effort": 208.84106092889172, + "time": 11.602281162716206, + "bugs": 0.02734823416925963 + }, + "resolve_text_background_xyxy": { + "h1": 5, + "h2": 30, + "N1": 47, + "N2": 94, + "vocabulary": 35, + "length": 141, + "calculated_length": 158.81635834269238, + "volume": 723.2289053892403, + "difficulty": 7.833333333333333, + "effort": 5665.293092215715, + "time": 314.73850512309525, + "bugs": 0.24107630179641343 + }, + "get_color_by_index": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "resolve_color": { + "h1": 2, + "h2": 7, + "N1": 3, + "N2": 7, + "vocabulary": 9, + "length": 10, + "calculated_length": 21.651484454403228, + "volume": 31.699250014423125, + "difficulty": 1.0, + "effort": 31.699250014423125, + "time": 1.7610694452457292, + "bugs": 0.010566416671474375 + }, + "wrap_text": { + "h1": 5, + "h2": 13, + "N1": 8, + "N2": 14, + "vocabulary": 18, + "length": 22, + "calculated_length": 59.715356810271004, + "volume": 91.73835003173087, + "difficulty": 2.6923076923076925, + "effort": 246.98786547004468, + "time": 13.721548081669148, + "bugs": 0.030579450010576957 + }, + "_validate_labels": { + "h1": 3, + "h2": 6, + "N1": 3, + "N2": 6, + "vocabulary": 9, + "length": 9, + "calculated_length": 20.264662506490406, + "volume": 28.529325012980813, + "difficulty": 1.5, + "effort": 42.793987519471216, + "time": 2.377443751081734, + "bugs": 0.009509775004326938 + }, + "validate_labels": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "get_labels_text": { + "h1": 2, + "h2": 5, + "N1": 3, + "N2": 6, + "vocabulary": 7, + "length": 9, + "calculated_length": 13.60964047443681, + "volume": 25.26619429851844, + "difficulty": 1.2, + "effort": 30.319433158222125, + "time": 1.6844129532345624, + "bugs": 0.008422064766172813 + }, + "snap_boxes": { + "h1": 6, + "h2": 23, + "N1": 14, + "N2": 26, + "vocabulary": 29, + "length": 40, + "calculated_length": 119.55169999363824, + "volume": 194.3192398051029, + "difficulty": 3.391304347826087, + "effort": 658.9956828173055, + "time": 36.610871267628085, + "bugs": 0.0647730799350343 + }, + "__init__": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "put": { + "h1": 7, + "h2": 12, + "N1": 9, + "N2": 17, + "vocabulary": 19, + "length": 26, + "calculated_length": 62.67103446305711, + "volume": 110.44611534953322, + "difficulty": 4.958333333333333, + "effort": 547.6286552747688, + "time": 30.4238141819316, + "bugs": 0.03681537178317774 + }, + "get": { + "h1": 1, + "h2": 1, + "N1": 1, + "N2": 2, + "vocabulary": 2, + "length": 3, + "calculated_length": 0.0, + "volume": 3.0, + "difficulty": 1.0, + "effort": 3.0, + "time": 0.16666666666666666, + "bugs": 0.001 + }, + "hex_to_rgba": { + "h1": 3, + "h2": 6, + "N1": 3, + "N2": 6, + "vocabulary": 9, + "length": 9, + "calculated_length": 20.264662506490406, + "volume": 28.529325012980813, + "difficulty": 1.5, + "effort": 42.793987519471216, + "time": 2.377443751081734, + "bugs": 0.009509775004326938 + }, + "rgba_to_hex": { + "h1": 4, + "h2": 8, + "N1": 5, + "N2": 8, + "vocabulary": 12, + "length": 13, + "calculated_length": 32.0, + "volume": 46.604512509375034, + "difficulty": 2.0, + "effort": 93.20902501875007, + "time": 5.178279167708337, + "bugs": 0.015534837503125011 + }, + "is_valid_hex": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "calculate_dynamic_kernel_size": { + "h1": 2, + "h2": 6, + "N1": 3, + "N2": 6, + "vocabulary": 8, + "length": 9, + "calculated_length": 17.509775004326936, + "volume": 27.0, + "difficulty": 1.0, + "effort": 27.0, + "time": 1.5, + "bugs": 0.009 + }, + "calculate_dynamic_pixel_size": { + "h1": 2, + "h2": 6, + "N1": 3, + "N2": 6, + "vocabulary": 8, + "length": 9, + "calculated_length": 17.509775004326936, + "volume": 27.0, + "difficulty": 1.0, + "effort": 27.0, + "time": 1.5, + "bugs": 0.009 + } + } + }, + "src\\supervision\\annotators\\__init__.py": { + "total": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "functions": {} + }, + "src\\supervision\\assets\\downloader.py": { + "total": { + "h1": 3, + "h2": 7, + "N1": 5, + "N2": 7, + "vocabulary": 10, + "length": 12, + "calculated_length": 24.406371956566698, + "volume": 39.863137138648355, + "difficulty": 1.5, + "effort": 59.79470570797253, + "time": 3.321928094887363, + "bugs": 0.013287712379549451 + }, + "functions": { + "is_md5_hash_matching": { + "h1": 2, + "h2": 3, + "N1": 2, + "N2": 3, + "vocabulary": 5, + "length": 5, + "calculated_length": 6.754887502163469, + "volume": 11.60964047443681, + "difficulty": 1.0, + "effort": 11.60964047443681, + "time": 0.6449800263576005, + "bugs": 0.0038698801581456034 + }, + "download_assets": { + "h1": 2, + "h2": 4, + "N1": 3, + "N2": 4, + "vocabulary": 6, + "length": 7, + "calculated_length": 10.0, + "volume": 18.094737505048094, + "difficulty": 1.0, + "effort": 18.094737505048094, + "time": 1.0052631947248942, + "bugs": 0.006031579168349364 + } + } + }, + "src\\supervision\\assets\\list.py": { + "total": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "functions": { + "__new__": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "list": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + } + } + }, + "src\\supervision\\assets\\__init__.py": { + "total": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "functions": {} + }, + "src\\supervision\\classification\\core.py": { + "total": { + "h1": 7, + "h2": 22, + "N1": 13, + "N2": 22, + "vocabulary": 29, + "length": 35, + "calculated_length": 117.75898006442377, + "volume": 170.02933482946506, + "difficulty": 3.5, + "effort": 595.1026719031277, + "time": 33.06125955017376, + "bugs": 0.05667644494315502 + }, + "functions": { + "_validate_class_ids": { + "h1": 3, + "h2": 5, + "N1": 3, + "N2": 5, + "vocabulary": 8, + "length": 8, + "calculated_length": 16.36452797660028, + "volume": 24.0, + "difficulty": 1.5, + "effort": 36.0, + "time": 2.0, + "bugs": 0.008 + }, + "_validate_confidence": { + "h1": 4, + "h2": 7, + "N1": 4, + "N2": 7, + "vocabulary": 11, + "length": 11, + "calculated_length": 27.651484454403228, + "volume": 38.053747805010275, + "difficulty": 2.0, + "effort": 76.10749561002055, + "time": 4.228194200556697, + "bugs": 0.012684582601670092 + }, + "__post_init__": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "__len__": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "from_clip": { + "h1": 2, + "h2": 3, + "N1": 2, + "N2": 3, + "vocabulary": 5, + "length": 5, + "calculated_length": 6.754887502163469, + "volume": 11.60964047443681, + "difficulty": 1.0, + "effort": 11.60964047443681, + "time": 0.6449800263576005, + "bugs": 0.0038698801581456034 + }, + "from_ultralytics": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "from_timm": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "get_top_k": { + "h1": 2, + "h2": 3, + "N1": 2, + "N2": 3, + "vocabulary": 5, + "length": 5, + "calculated_length": 6.754887502163469, + "volume": 11.60964047443681, + "difficulty": 1.0, + "effort": 11.60964047443681, + "time": 0.6449800263576005, + "bugs": 0.0038698801581456034 + } + } + }, + "src\\supervision\\classification\\__init__.py": { + "total": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "functions": {} + }, + "src\\supervision\\dataset\\core.py": { + "total": { + "h1": 9, + "h2": 65, + "N1": 43, + "N2": 81, + "vocabulary": 74, + "length": 124, + "calculated_length": 419.9832328598303, + "volume": 769.97221733799, + "difficulty": 5.607692307692307, + "effort": 4317.7672803030355, + "time": 239.8759600168353, + "bugs": 0.25665740577933 + }, + "functions": { + "__len__": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "split": { + "h1": 1, + "h2": 4, + "N1": 2, + "N2": 4, + "vocabulary": 5, + "length": 6, + "calculated_length": 8.0, + "volume": 13.931568569324174, + "difficulty": 0.5, + "effort": 6.965784284662087, + "time": 0.3869880158145604, + "bugs": 0.004643856189774725 + }, + "__init__": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "_get_image": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "__getitem__": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "__iter__": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "__eq__": { + "h1": 3, + "h2": 7, + "N1": 6, + "N2": 10, + "vocabulary": 10, + "length": 16, + "calculated_length": 24.406371956566698, + "volume": 53.1508495181978, + "difficulty": 2.142857142857143, + "effort": 113.89467753899528, + "time": 6.327482085499738, + "bugs": 0.017716949839399268 + }, + "merge": { + "h1": 6, + "h2": 15, + "N1": 9, + "N2": 16, + "vocabulary": 21, + "length": 25, + "calculated_length": 74.11313393845472, + "volume": 109.80793556946902, + "difficulty": 3.2, + "effort": 351.3853938223009, + "time": 19.521410767905607, + "bugs": 0.03660264518982301 + }, + "as_pascal_voc": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "from_pascal_voc": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "from_yolo": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "as_yolo": { + "h1": 4, + "h2": 14, + "N1": 8, + "N2": 17, + "vocabulary": 18, + "length": 25, + "calculated_length": 61.30296890880645, + "volume": 104.2481250360578, + "difficulty": 2.4285714285714284, + "effort": 253.17401794471178, + "time": 14.065223219150655, + "bugs": 0.03474937501201927 + }, + "from_coco": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "as_coco": { + "h1": 1, + "h2": 3, + "N1": 2, + "N2": 4, + "vocabulary": 4, + "length": 6, + "calculated_length": 4.754887502163469, + "volume": 12.0, + "difficulty": 0.6666666666666666, + "effort": 8.0, + "time": 0.4444444444444444, + "bugs": 0.004 + }, + "as_folder_structure": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "from_folder_structure": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + } + } + }, + "src\\supervision\\dataset\\utils.py": { + "total": { + "h1": 8, + "h2": 21, + "N1": 11, + "N2": 22, + "vocabulary": 29, + "length": 33, + "calculated_length": 116.23866587835397, + "volume": 160.3133728392099, + "difficulty": 4.190476190476191, + "effort": 671.7893718976416, + "time": 37.321631772091195, + "bugs": 0.0534377909464033 + }, + "functions": { + "mask_to_rle": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "rle_to_mask": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "approximate_mask_with_polygons": { + "h1": 2, + "h2": 7, + "N1": 4, + "N2": 8, + "vocabulary": 9, + "length": 12, + "calculated_length": 21.651484454403228, + "volume": 38.03910001730775, + "difficulty": 1.1428571428571428, + "effort": 43.47325716263743, + "time": 2.415180953479857, + "bugs": 0.012679700005769252 + }, + "merge_class_lists": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "build_class_index_mapping": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "map_detections_class_id": { + "h1": 3, + "h2": 6, + "N1": 3, + "N2": 6, + "vocabulary": 9, + "length": 9, + "calculated_length": 20.264662506490406, + "volume": 28.529325012980813, + "difficulty": 1.5, + "effort": 42.793987519471216, + "time": 2.377443751081734, + "bugs": 0.009509775004326938 + }, + "save_dataset_images": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "train_test_split": { + "h1": 2, + "h2": 4, + "N1": 2, + "N2": 4, + "vocabulary": 6, + "length": 6, + "calculated_length": 10.0, + "volume": 15.509775004326936, + "difficulty": 1.0, + "effort": 15.509775004326936, + "time": 0.861654166907052, + "bugs": 0.005169925001442312 + } + } + }, + "src\\supervision\\dataset\\__init__.py": { + "total": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "functions": {} + }, + "src\\supervision\\dataset\\formats\\coco.py": { + "total": { + "h1": 15, + "h2": 49, + "N1": 30, + "N2": 56, + "vocabulary": 64, + "length": 86, + "calculated_length": 333.72414129577294, + "volume": 516.0, + "difficulty": 8.571428571428571, + "effort": 4422.857142857143, + "time": 245.71428571428572, + "bugs": 0.172 + }, + "functions": { + "coco_categories_to_classes": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "build_coco_class_index_mapping": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "classes_to_coco_categories": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "group_coco_annotations_by_image_id": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "coco_annotations_to_masks": { + "h1": 4, + "h2": 7, + "N1": 5, + "N2": 7, + "vocabulary": 11, + "length": 12, + "calculated_length": 27.651484454403228, + "volume": 41.51317942364757, + "difficulty": 2.0, + "effort": 83.02635884729514, + "time": 4.612575491516397, + "bugs": 0.01383772647454919 + }, + "coco_annotations_to_detections": { + "h1": 2, + "h2": 3, + "N1": 2, + "N2": 3, + "vocabulary": 5, + "length": 5, + "calculated_length": 6.754887502163469, + "volume": 11.60964047443681, + "difficulty": 1.0, + "effort": 11.60964047443681, + "time": 0.6449800263576005, + "bugs": 0.0038698801581456034 + }, + "detections_to_coco_annotations": { + "h1": 9, + "h2": 22, + "N1": 13, + "N2": 26, + "vocabulary": 31, + "length": 39, + "calculated_length": 126.63682062300134, + "volume": 193.21365610508815, + "difficulty": 5.318181818181818, + "effort": 1027.5453529225142, + "time": 57.08585294013968, + "bugs": 0.06440455203502939 + }, + "get_coco_class_index_mapping": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "load_coco_annotations": { + "h1": 4, + "h2": 7, + "N1": 4, + "N2": 8, + "vocabulary": 11, + "length": 12, + "calculated_length": 27.651484454403228, + "volume": 41.51317942364757, + "difficulty": 2.2857142857142856, + "effort": 94.88726725405158, + "time": 5.27151484744731, + "bugs": 0.01383772647454919 + }, + "_with_seg_mask": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "save_coco_annotations": { + "h1": 3, + "h2": 6, + "N1": 4, + "N2": 8, + "vocabulary": 9, + "length": 12, + "calculated_length": 20.264662506490406, + "volume": 38.03910001730775, + "difficulty": 2.0, + "effort": 76.0782000346155, + "time": 4.226566668589751, + "bugs": 0.012679700005769252 + } + } + }, + "src\\supervision\\dataset\\formats\\pascal_voc.py": { + "total": { + "h1": 8, + "h2": 33, + "N1": 20, + "N2": 38, + "vocabulary": 41, + "length": 58, + "calculated_length": 190.46500593882897, + "volume": 310.7380162678489, + "difficulty": 4.606060606060606, + "effort": 1431.2781355367586, + "time": 79.51545197426437, + "bugs": 0.10357933875594963 + }, + "functions": { + "object_to_pascal_voc": { + "h1": 2, + "h2": 4, + "N1": 3, + "N2": 6, + "vocabulary": 6, + "length": 9, + "calculated_length": 10.0, + "volume": 23.264662506490403, + "difficulty": 1.5, + "effort": 34.89699375973561, + "time": 1.938721875540867, + "bugs": 0.007754887502163467 + }, + "detections_to_pascal_voc": { + "h1": 3, + "h2": 4, + "N1": 3, + "N2": 5, + "vocabulary": 7, + "length": 8, + "calculated_length": 12.75488750216347, + "volume": 22.458839376460833, + "difficulty": 1.875, + "effort": 42.11032383086406, + "time": 2.3394624350480036, + "bugs": 0.007486279792153611 + }, + "load_pascal_voc_annotations": { + "h1": 2, + "h2": 3, + "N1": 2, + "N2": 3, + "vocabulary": 5, + "length": 5, + "calculated_length": 6.754887502163469, + "volume": 11.60964047443681, + "difficulty": 1.0, + "effort": 11.60964047443681, + "time": 0.6449800263576005, + "bugs": 0.0038698801581456034 + }, + "detections_from_xml_obj": { + "h1": 5, + "h2": 11, + "N1": 6, + "N2": 12, + "vocabulary": 16, + "length": 18, + "calculated_length": 49.663388279447084, + "volume": 72.0, + "difficulty": 2.727272727272727, + "effort": 196.36363636363635, + "time": 10.909090909090908, + "bugs": 0.024 + }, + "_with_poly_mask": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "parse_polygon_points": { + "h1": 2, + "h2": 4, + "N1": 2, + "N2": 4, + "vocabulary": 6, + "length": 6, + "calculated_length": 10.0, + "volume": 15.509775004326936, + "difficulty": 1.0, + "effort": 15.509775004326936, + "time": 0.861654166907052, + "bugs": 0.005169925001442312 + }, + "_get_required_text": { + "h1": 2, + "h2": 5, + "N1": 3, + "N2": 6, + "vocabulary": 7, + "length": 9, + "calculated_length": 13.60964047443681, + "volume": 25.26619429851844, + "difficulty": 1.2, + "effort": 30.319433158222125, + "time": 1.6844129532345624, + "bugs": 0.008422064766172813 + } + } + }, + "src\\supervision\\dataset\\formats\\yolo.py": { + "total": { + "h1": 14, + "h2": 71, + "N1": 48, + "N2": 87, + "vocabulary": 85, + "length": 135, + "calculated_length": 489.9350143936389, + "volume": 865.2677763785898, + "difficulty": 8.577464788732394, + "effort": 7421.803884712129, + "time": 412.3224380395627, + "bugs": 0.2884225921261966 + }, + "functions": { + "_parse_box": { + "h1": 3, + "h2": 13, + "N1": 8, + "N2": 16, + "vocabulary": 16, + "length": 24, + "calculated_length": 52.860603837997665, + "volume": 96.0, + "difficulty": 1.8461538461538463, + "effort": 177.23076923076923, + "time": 9.846153846153847, + "bugs": 0.032 + }, + "_box_to_polygon": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "_parse_polygon": { + "h1": 1, + "h2": 1, + "N1": 1, + "N2": 1, + "vocabulary": 2, + "length": 2, + "calculated_length": 0.0, + "volume": 2.0, + "difficulty": 0.5, + "effort": 1.0, + "time": 0.05555555555555555, + "bugs": 0.0006666666666666666 + }, + "_polygons_to_masks": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "_with_seg_mask": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "_extract_class_names": { + "h1": 2, + "h2": 5, + "N1": 4, + "N2": 5, + "vocabulary": 7, + "length": 9, + "calculated_length": 13.60964047443681, + "volume": 25.26619429851844, + "difficulty": 1.0, + "effort": 25.26619429851844, + "time": 1.403677461028802, + "bugs": 0.008422064766172813 + }, + "_image_name_to_annotation_name": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "yolo_annotations_to_detections": { + "h1": 5, + "h2": 13, + "N1": 8, + "N2": 14, + "vocabulary": 18, + "length": 22, + "calculated_length": 59.715356810271004, + "volume": 91.73835003173087, + "difficulty": 2.6923076923076925, + "effort": 246.98786547004468, + "time": 13.721548081669148, + "bugs": 0.030579450010576957 + }, + "load_yolo_annotations": { + "h1": 4, + "h2": 8, + "N1": 6, + "N2": 10, + "vocabulary": 12, + "length": 16, + "calculated_length": 32.0, + "volume": 57.359400011538504, + "difficulty": 2.5, + "effort": 143.39850002884626, + "time": 7.966583334935903, + "bugs": 0.01911980000384617 + }, + "object_to_yolo": { + "h1": 5, + "h2": 13, + "N1": 10, + "N2": 19, + "vocabulary": 18, + "length": 29, + "calculated_length": 59.715356810271004, + "volume": 120.92782504182705, + "difficulty": 3.6538461538461537, + "effort": 441.85166842206036, + "time": 24.547314912336688, + "bugs": 0.04030927501394235 + }, + "detections_to_yolo_annotations": { + "h1": 7, + "h2": 14, + "N1": 9, + "N2": 18, + "vocabulary": 21, + "length": 27, + "calculated_length": 72.95445336320968, + "volume": 118.59257041502654, + "difficulty": 4.5, + "effort": 533.6665668676194, + "time": 29.648142603756632, + "bugs": 0.03953085680500885 + }, + "save_yolo_annotations": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "save_data_yaml": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + } + } + }, + "src\\supervision\\dataset\\formats\\__init__.py": { + "total": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "functions": {} + }, + "src\\supervision\\detection\\compact_mask.py": { + "total": { + "h1": 19, + "h2": 207, + "N1": 169, + "N2": 324, + "vocabulary": 226, + "length": 493, + "calculated_length": 1673.2624229577884, + "volume": 3855.348228470688, + "difficulty": 14.869565217391305, + "effort": 57327.351918998924, + "time": 3184.852884388829, + "bugs": 1.285116076156896 + }, + "functions": { + "_rle_area": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "_rle_split_cols": { + "h1": 8, + "h2": 19, + "N1": 21, + "N2": 40, + "vocabulary": 27, + "length": 61, + "calculated_length": 104.71062275542812, + "volume": 290.0481376319716, + "difficulty": 8.421052631578947, + "effort": 2442.510632690287, + "time": 135.69503514946038, + "bugs": 0.09668271254399054 + }, + "_rle_scale_col": { + "h1": 6, + "h2": 14, + "N1": 13, + "N2": 24, + "vocabulary": 20, + "length": 37, + "calculated_length": 68.81274391313339, + "volume": 159.91133951083242, + "difficulty": 5.142857142857143, + "effort": 822.4011746271382, + "time": 45.688954145952124, + "bugs": 0.05330377983694414 + }, + "_rle_join_cols": { + "h1": 8, + "h2": 16, + "N1": 12, + "N2": 20, + "vocabulary": 24, + "length": 32, + "calculated_length": 88.0, + "volume": 146.71880002307702, + "difficulty": 5.0, + "effort": 733.5940001153851, + "time": 40.755222228632505, + "bugs": 0.04890626667435901 + }, + "_rle_resize": { + "h1": 6, + "h2": 25, + "N1": 16, + "N2": 32, + "vocabulary": 31, + "length": 48, + "calculated_length": 131.60617974869504, + "volume": 237.80142289857002, + "difficulty": 3.84, + "effort": 913.1574639305088, + "time": 50.7309702183616, + "bugs": 0.07926714096619 + }, + "_resize_crop": { + "h1": 4, + "h2": 10, + "N1": 5, + "N2": 10, + "vocabulary": 14, + "length": 15, + "calculated_length": 41.219280948873624, + "volume": 57.110323830864054, + "difficulty": 2.0, + "effort": 114.22064766172811, + "time": 6.345591536762672, + "bugs": 0.019036774610288017 + }, + "__init__": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "from_dense": { + "h1": 5, + "h2": 13, + "N1": 14, + "N2": 28, + "vocabulary": 18, + "length": 42, + "calculated_length": 59.715356810271004, + "volume": 175.1368500605771, + "difficulty": 5.384615384615385, + "effort": 943.0445772492614, + "time": 52.39136540273674, + "bugs": 0.05837895002019237 + }, + "to_dense": { + "h1": 1, + "h2": 4, + "N1": 2, + "N2": 4, + "vocabulary": 5, + "length": 6, + "calculated_length": 8.0, + "volume": 13.931568569324174, + "difficulty": 0.5, + "effort": 6.965784284662087, + "time": 0.3869880158145604, + "bugs": 0.004643856189774725 + }, + "crop": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "__len__": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "__iter__": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "shape": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "offsets": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "bbox_xyxy": { + "h1": 3, + "h2": 9, + "N1": 5, + "N2": 10, + "vocabulary": 12, + "length": 15, + "calculated_length": 33.28421251514428, + "volume": 53.77443751081735, + "difficulty": 1.6666666666666667, + "effort": 89.62406251802892, + "time": 4.9791145843349405, + "bugs": 0.017924812503605784 + }, + "dtype": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "area": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "sum": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "__getitem__": { + "h1": 3, + "h2": 10, + "N1": 5, + "N2": 10, + "vocabulary": 13, + "length": 15, + "calculated_length": 37.974168451037094, + "volume": 55.506595772116384, + "difficulty": 1.5, + "effort": 83.25989365817458, + "time": 4.625549647676365, + "bugs": 0.01850219859070546 + }, + "__array__": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "__eq__": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "merge": { + "h1": 2, + "h2": 3, + "N1": 2, + "N2": 3, + "vocabulary": 5, + "length": 5, + "calculated_length": 6.754887502163469, + "volume": 11.60964047443681, + "difficulty": 1.0, + "effort": 11.60964047443681, + "time": 0.6449800263576005, + "bugs": 0.0038698801581456034 + }, + "repack": { + "h1": 5, + "h2": 12, + "N1": 12, + "N2": 21, + "vocabulary": 17, + "length": 33, + "calculated_length": 54.62919048309069, + "volume": 134.8862737612612, + "difficulty": 4.375, + "effort": 590.1274477055177, + "time": 32.78485820586209, + "bugs": 0.044962091253753736 + }, + "with_offset": { + "h1": 10, + "h2": 37, + "N1": 35, + "N2": 68, + "vocabulary": 47, + "length": 103, + "calculated_length": 225.9690554771448, + "volume": 572.1226517227967, + "difficulty": 9.18918918918919, + "effort": 5257.343286101375, + "time": 292.07462700563195, + "bugs": 0.19070755057426558 + }, + "resize": { + "h1": 8, + "h2": 31, + "N1": 25, + "N2": 50, + "vocabulary": 39, + "length": 75, + "calculated_length": 177.58008562199316, + "volume": 396.40516641466866, + "difficulty": 6.451612903225806, + "effort": 2557.4526865462494, + "time": 142.08070480812498, + "bugs": 0.1321350554715562 + } + } + }, + "src\\supervision\\detection\\core.py": { + "total": { + "h1": 18, + "h2": 263, + "N1": 181, + "N2": 347, + "vocabulary": 281, + "length": 528, + "calculated_length": 2189.2943442098367, + "volume": 4294.977097076649, + "difficulty": 11.874524714828897, + "effort": 51000.81168886075, + "time": 2833.37842715893, + "bugs": 1.4316590323588831 + }, + "functions": { + "__post_init__": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "__len__": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "__iter__": { + "h1": 1, + "h2": 5, + "N1": 4, + "N2": 8, + "vocabulary": 6, + "length": 12, + "calculated_length": 11.60964047443681, + "volume": 31.019550008653873, + "difficulty": 0.8, + "effort": 24.8156400069231, + "time": 1.3786466670512834, + "bugs": 0.010339850002884624 + }, + "__eq__": { + "h1": 1, + "h2": 1, + "N1": 1, + "N2": 1, + "vocabulary": 2, + "length": 2, + "calculated_length": 0.0, + "volume": 2.0, + "difficulty": 0.5, + "effort": 1.0, + "time": 0.05555555555555555, + "bugs": 0.0006666666666666666 + }, + "from_yolov5": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "from_ultralytics": { + "h1": 3, + "h2": 10, + "N1": 8, + "N2": 16, + "vocabulary": 13, + "length": 24, + "calculated_length": 37.974168451037094, + "volume": 88.81055323538621, + "difficulty": 2.4, + "effort": 213.1453277649269, + "time": 11.841407098051494, + "bugs": 0.029603517745128736 + }, + "from_yolo_nas": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "from_tensorflow": { + "h1": 1, + "h2": 4, + "N1": 2, + "N2": 4, + "vocabulary": 5, + "length": 6, + "calculated_length": 8.0, + "volume": 13.931568569324174, + "difficulty": 0.5, + "effort": 6.965784284662087, + "time": 0.3869880158145604, + "bugs": 0.004643856189774725 + }, + "from_deepsparse": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "from_mmdetection": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "from_transformers": { + "h1": 3, + "h2": 11, + "N1": 7, + "N2": 14, + "vocabulary": 14, + "length": 21, + "calculated_length": 42.808635307173745, + "volume": 79.95445336320968, + "difficulty": 1.9090909090909092, + "effort": 152.64032005703666, + "time": 8.480017780946481, + "bugs": 0.026651484454403226 + }, + "from_detectron2": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "from_inference": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "from_sam": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "from_sam3": { + "h1": 4, + "h2": 13, + "N1": 11, + "N2": 18, + "vocabulary": 17, + "length": 29, + "calculated_length": 56.105716335834195, + "volume": 118.53642239625987, + "difficulty": 2.769230769230769, + "effort": 328.2547081742581, + "time": 18.23637267634767, + "bugs": 0.03951214079875329 + }, + "from_azure_analyze_image": { + "h1": 7, + "h2": 14, + "N1": 10, + "N2": 20, + "vocabulary": 21, + "length": 30, + "calculated_length": 72.95445336320968, + "volume": 131.76952268336282, + "difficulty": 5.0, + "effort": 658.847613416814, + "time": 36.602645189823, + "bugs": 0.04392317422778761 + }, + "from_paddledet": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "from_lmm": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "from_vlm": { + "h1": 3, + "h2": 16, + "N1": 12, + "N2": 24, + "vocabulary": 19, + "length": 36, + "calculated_length": 68.75488750216347, + "volume": 152.92539048396907, + "difficulty": 2.25, + "effort": 344.0821285889304, + "time": 19.115673810496133, + "bugs": 0.050975130161323025 + }, + "from_easyocr": { + "h1": 3, + "h2": 6, + "N1": 3, + "N2": 6, + "vocabulary": 9, + "length": 9, + "calculated_length": 20.264662506490406, + "volume": 28.529325012980813, + "difficulty": 1.5, + "effort": 42.793987519471216, + "time": 2.377443751081734, + "bugs": 0.009509775004326938 + }, + "from_ncnn": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "empty": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "is_empty": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "merge": { + "h1": 3, + "h2": 8, + "N1": 5, + "N2": 9, + "vocabulary": 11, + "length": 14, + "calculated_length": 28.75488750216347, + "volume": 48.43204266092217, + "difficulty": 1.6875, + "effort": 81.72907199030617, + "time": 4.540503999461453, + "bugs": 0.016144014220307392 + }, + "get_anchors_coordinates": { + "h1": 4, + "h2": 32, + "N1": 23, + "N2": 46, + "vocabulary": 36, + "length": 69, + "calculated_length": 168.0, + "volume": 356.72482509951953, + "difficulty": 2.875, + "effort": 1025.5838721611187, + "time": 56.97688178672882, + "bugs": 0.11890827503317318 + }, + "__getitem__": { + "h1": 2, + "h2": 7, + "N1": 5, + "N2": 10, + "vocabulary": 9, + "length": 15, + "calculated_length": 21.651484454403228, + "volume": 47.548875021634686, + "difficulty": 1.4285714285714286, + "effort": 67.92696431662098, + "time": 3.7737202398122767, + "bugs": 0.01584962500721156 + }, + "__setitem__": { + "h1": 1, + "h2": 1, + "N1": 1, + "N2": 1, + "vocabulary": 2, + "length": 2, + "calculated_length": 0.0, + "volume": 2.0, + "difficulty": 0.5, + "effort": 1.0, + "time": 0.05555555555555555, + "bugs": 0.0006666666666666666 + }, + "area": { + "h1": 2, + "h2": 4, + "N1": 2, + "N2": 4, + "vocabulary": 6, + "length": 6, + "calculated_length": 10.0, + "volume": 15.509775004326936, + "difficulty": 1.0, + "effort": 15.509775004326936, + "time": 0.861654166907052, + "bugs": 0.005169925001442312 + }, + "box_area": { + "h1": 2, + "h2": 6, + "N1": 3, + "N2": 6, + "vocabulary": 8, + "length": 9, + "calculated_length": 17.509775004326936, + "volume": 27.0, + "difficulty": 1.0, + "effort": 27.0, + "time": 1.5, + "bugs": 0.009 + }, + "box_aspect_ratio": { + "h1": 2, + "h2": 6, + "N1": 3, + "N2": 6, + "vocabulary": 8, + "length": 9, + "calculated_length": 17.509775004326936, + "volume": 27.0, + "difficulty": 1.0, + "effort": 27.0, + "time": 1.5, + "bugs": 0.009 + }, + "with_nms": { + "h1": 4, + "h2": 9, + "N1": 8, + "N2": 13, + "vocabulary": 13, + "length": 21, + "calculated_length": 36.52932501298081, + "volume": 77.70923408096293, + "difficulty": 2.888888888888889, + "effort": 224.49334290055958, + "time": 12.471852383364421, + "bugs": 0.025903078026987644 + }, + "with_nmm": { + "h1": 4, + "h2": 9, + "N1": 8, + "N2": 13, + "vocabulary": 13, + "length": 21, + "calculated_length": 36.52932501298081, + "volume": 77.70923408096293, + "difficulty": 2.888888888888889, + "effort": 224.49334290055958, + "time": 12.471852383364421, + "bugs": 0.025903078026987644 + }, + "_merge_obb_corners": { + "h1": 3, + "h2": 7, + "N1": 5, + "N2": 8, + "vocabulary": 10, + "length": 13, + "calculated_length": 24.406371956566698, + "volume": 43.18506523353572, + "difficulty": 1.7142857142857142, + "effort": 74.03154040034694, + "time": 4.11286335557483, + "bugs": 0.014395021744511906 + }, + "_merge_detection_group": { + "h1": 9, + "h2": 22, + "N1": 13, + "N2": 26, + "vocabulary": 31, + "length": 39, + "calculated_length": 126.63682062300134, + "volume": 193.21365610508815, + "difficulty": 5.318181818181818, + "effort": 1027.5453529225142, + "time": 57.08585294013968, + "bugs": 0.06440455203502939 + }, + "merge_inner_detection_object_pair": { + "h1": 10, + "h2": 36, + "N1": 26, + "N2": 52, + "vocabulary": 46, + "length": 78, + "calculated_length": 219.33658100079685, + "volume": 430.83783257244704, + "difficulty": 7.222222222222222, + "effort": 3111.6065685787844, + "time": 172.86703158771024, + "bugs": 0.14361261085748234 + }, + "merge_inner_detections_objects": { + "h1": 3, + "h2": 6, + "N1": 4, + "N2": 8, + "vocabulary": 9, + "length": 12, + "calculated_length": 20.264662506490406, + "volume": 38.03910001730775, + "difficulty": 2.0, + "effort": 76.0782000346155, + "time": 4.226566668589751, + "bugs": 0.012679700005769252 + }, + "merge_inner_detections_objects_without_iou": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "_validate_fields_both_defined_or_none": { + "h1": 2, + "h2": 5, + "N1": 3, + "N2": 6, + "vocabulary": 7, + "length": 9, + "calculated_length": 13.60964047443681, + "volume": 25.26619429851844, + "difficulty": 1.2, + "effort": 30.319433158222125, + "time": 1.6844129532345624, + "bugs": 0.008422064766172813 + }, + "validate_fields_both_defined_or_none": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + } + } + }, + "src\\supervision\\detection\\line_zone.py": { + "total": { + "h1": 19, + "h2": 146, + "N1": 116, + "N2": 219, + "vocabulary": 165, + "length": 335, + "calculated_length": 1130.4250083519107, + "volume": 2467.7179417723482, + "difficulty": 14.25, + "effort": 35164.980670255965, + "time": 1953.6100372364426, + "bugs": 0.8225726472574494 + }, + "functions": { + "__init__": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "in_count": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "out_count": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "in_count_per_class": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "out_count_per_class": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "trigger": { + "h1": 10, + "h2": 17, + "N1": 11, + "N2": 21, + "vocabulary": 27, + "length": 32, + "calculated_length": 102.70614925012941, + "volume": 152.156400069231, + "difficulty": 6.176470588235294, + "effort": 939.789529839368, + "time": 52.21052943552044, + "bugs": 0.05071880002307701 + }, + "_calculate_region_of_interest_limits": { + "h1": 5, + "h2": 9, + "N1": 10, + "N2": 19, + "vocabulary": 14, + "length": 29, + "calculated_length": 40.13896548741762, + "volume": 110.41329273967051, + "difficulty": 5.277777777777778, + "effort": 582.7368227927054, + "time": 32.37426793292808, + "bugs": 0.0368044309132235 + }, + "_compute_anchor_sides": { + "h1": 5, + "h2": 10, + "N1": 7, + "N2": 13, + "vocabulary": 15, + "length": 20, + "calculated_length": 44.82892142331043, + "volume": 78.13781191217038, + "difficulty": 3.25, + "effort": 253.94788871455373, + "time": 14.10821603969743, + "bugs": 0.026045937304056792 + }, + "_update_class_id_to_name": { + "h1": 3, + "h2": 5, + "N1": 5, + "N2": 10, + "vocabulary": 8, + "length": 15, + "calculated_length": 16.36452797660028, + "volume": 45.0, + "difficulty": 3.0, + "effort": 135.0, + "time": 7.5, + "bugs": 0.015 + }, + "annotate": { + "h1": 7, + "h2": 32, + "N1": 28, + "N2": 54, + "vocabulary": 39, + "length": 82, + "calculated_length": 179.65148445440323, + "volume": 433.4029819467044, + "difficulty": 5.90625, + "effort": 2559.786362122723, + "time": 142.2103534512624, + "bugs": 0.14446766064890146 + }, + "_get_line_angle": { + "h1": 5, + "h2": 10, + "N1": 8, + "N2": 16, + "vocabulary": 15, + "length": 24, + "calculated_length": 44.82892142331043, + "volume": 93.76537429460444, + "difficulty": 4.0, + "effort": 375.06149717841777, + "time": 20.836749843245432, + "bugs": 0.03125512476486815 + }, + "_calculate_anchor_in_frame": { + "h1": 5, + "h2": 30, + "N1": 20, + "N2": 40, + "vocabulary": 35, + "length": 60, + "calculated_length": 158.81635834269238, + "volume": 307.756981016698, + "difficulty": 3.3333333333333335, + "effort": 1025.8566033889933, + "time": 56.99203352161074, + "bugs": 0.10258566033889932 + }, + "_draw_basic_label": { + "h1": 3, + "h2": 5, + "N1": 4, + "N2": 8, + "vocabulary": 8, + "length": 12, + "calculated_length": 16.36452797660028, + "volume": 36.0, + "difficulty": 2.4, + "effort": 86.39999999999999, + "time": 4.8, + "bugs": 0.012 + }, + "_draw_oriented_label": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "_make_label_image": { + "h1": 6, + "h2": 13, + "N1": 10, + "N2": 17, + "vocabulary": 19, + "length": 27, + "calculated_length": 63.61549134016113, + "volume": 114.6940428629768, + "difficulty": 3.923076923076923, + "effort": 449.95355277013977, + "time": 24.997419598341097, + "bugs": 0.03823134762099227 + } + } + }, + "src\\supervision\\detection\\vlm.py": { + "total": { + "h1": 16, + "h2": 149, + "N1": 112, + "N2": 207, + "vocabulary": 165, + "length": 319, + "calculated_length": 1139.656109548862, + "volume": 2349.856786344415, + "difficulty": 11.114093959731544, + "effort": 26116.52911534464, + "time": 1450.9182841858135, + "bugs": 0.7832855954481384 + }, + "functions": { + "list": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "from_value": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "_validate_vlm_parameters": { + "h1": 2, + "h2": 4, + "N1": 3, + "N2": 5, + "vocabulary": 6, + "length": 8, + "calculated_length": 10.0, + "volume": 20.67970000576925, + "difficulty": 1.25, + "effort": 25.84962500721156, + "time": 1.43609027817842, + "bugs": 0.006893233335256416 + }, + "validate_vlm_parameters": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "from_paligemma": { + "h1": 6, + "h2": 10, + "N1": 6, + "N2": 12, + "vocabulary": 16, + "length": 18, + "calculated_length": 48.72905595320056, + "volume": 72.0, + "difficulty": 3.6, + "effort": 259.2, + "time": 14.399999999999999, + "bugs": 0.024 + }, + "recover_truncated_qwen_2_5_vl_response": { + "h1": 3, + "h2": 11, + "N1": 12, + "N2": 20, + "vocabulary": 14, + "length": 32, + "calculated_length": 42.808635307173745, + "volume": 121.83535750584332, + "difficulty": 2.727272727272727, + "effort": 332.278247743209, + "time": 18.4599026524005, + "bugs": 0.040611785835281106 + }, + "from_qwen_2_5_vl": { + "h1": 12, + "h2": 23, + "N1": 18, + "N2": 33, + "vocabulary": 35, + "length": 51, + "calculated_length": 147.06147499796518, + "volume": 261.5934338641933, + "difficulty": 8.608695652173912, + "effort": 2251.9782567439247, + "time": 125.10990315244027, + "bugs": 0.08719781128806443 + }, + "from_qwen_3_vl": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "from_deepseek_vl_2": { + "h1": 5, + "h2": 16, + "N1": 11, + "N2": 22, + "vocabulary": 21, + "length": 33, + "calculated_length": 75.60964047443682, + "volume": 144.94647495169912, + "difficulty": 3.4375, + "effort": 498.2535076464657, + "time": 27.68075042480365, + "bugs": 0.048315491650566374 + }, + "from_florence_2": { + "h1": 7, + "h2": 18, + "N1": 14, + "N2": 26, + "vocabulary": 25, + "length": 40, + "calculated_length": 94.71013448036484, + "volume": 185.75424759098897, + "difficulty": 5.055555555555555, + "effort": 939.0909183766664, + "time": 52.171717687592576, + "bugs": 0.061918082530329654 + }, + "from_google_gemini_2_0": { + "h1": 7, + "h2": 17, + "N1": 10, + "N2": 19, + "vocabulary": 24, + "length": 29, + "calculated_length": 89.13835275565901, + "volume": 132.96391252091354, + "difficulty": 3.911764705882353, + "effort": 520.1235401553382, + "time": 28.895752230852125, + "bugs": 0.044321304173637846 + }, + "from_google_gemini_2_5": { + "h1": 11, + "h2": 36, + "N1": 29, + "N2": 54, + "vocabulary": 47, + "length": 83, + "calculated_length": 224.1710478569335, + "volume": 461.03087468924394, + "difficulty": 8.25, + "effort": 3803.5047161862626, + "time": 211.30581756590348, + "bugs": 0.15367695822974797 + }, + "from_moondream": { + "h1": 6, + "h2": 14, + "N1": 9, + "N2": 16, + "vocabulary": 20, + "length": 25, + "calculated_length": 68.81274391313339, + "volume": 108.04820237218406, + "difficulty": 3.4285714285714284, + "effort": 370.4509795617739, + "time": 20.580609975654106, + "bugs": 0.03601606745739469 + } + } + }, + "src\\supervision\\detection\\__init__.py": { + "total": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "functions": {} + }, + "src\\supervision\\detection\\tools\\csv_sink.py": { + "total": { + "h1": 7, + "h2": 23, + "N1": 15, + "N2": 27, + "vocabulary": 30, + "length": 42, + "calculated_length": 123.69340944371453, + "volume": 206.0894050155578, + "difficulty": 4.108695652173913, + "effort": 846.7586423465309, + "time": 47.042146797029496, + "bugs": 0.06869646833851926 + }, + "functions": { + "writerow": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "__init__": { + "h1": 1, + "h2": 3, + "N1": 2, + "N2": 4, + "vocabulary": 4, + "length": 6, + "calculated_length": 4.754887502163469, + "volume": 12.0, + "difficulty": 0.6666666666666666, + "effort": 8.0, + "time": 0.4444444444444444, + "bugs": 0.004 + }, + "__enter__": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "__exit__": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "open": { + "h1": 2, + "h2": 3, + "N1": 2, + "N2": 3, + "vocabulary": 5, + "length": 5, + "calculated_length": 6.754887502163469, + "volume": 11.60964047443681, + "difficulty": 1.0, + "effort": 11.60964047443681, + "time": 0.6449800263576005, + "bugs": 0.0038698801581456034 + }, + "close": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "_slice_value": { + "h1": 2, + "h2": 6, + "N1": 3, + "N2": 6, + "vocabulary": 8, + "length": 9, + "calculated_length": 17.509775004326936, + "volume": 27.0, + "difficulty": 1.0, + "effort": 27.0, + "time": 1.5, + "bugs": 0.009 + }, + "parse_detection_data": { + "h1": 1, + "h2": 4, + "N1": 3, + "N2": 6, + "vocabulary": 5, + "length": 9, + "calculated_length": 8.0, + "volume": 20.89735285398626, + "difficulty": 0.75, + "effort": 15.673014640489694, + "time": 0.8707230355827608, + "bugs": 0.0069657842846620865 + }, + "append": { + "h1": 2, + "h2": 3, + "N1": 3, + "N2": 4, + "vocabulary": 5, + "length": 7, + "calculated_length": 6.754887502163469, + "volume": 16.253496664211536, + "difficulty": 1.3333333333333333, + "effort": 21.67132888561538, + "time": 1.2039627158675212, + "bugs": 0.005417832221403845 + }, + "parse_field_names": { + "h1": 2, + "h2": 4, + "N1": 2, + "N2": 4, + "vocabulary": 6, + "length": 6, + "calculated_length": 10.0, + "volume": 15.509775004326936, + "difficulty": 1.0, + "effort": 15.509775004326936, + "time": 0.861654166907052, + "bugs": 0.005169925001442312 + } + } + }, + "src\\supervision\\detection\\tools\\inference_slicer.py": { + "total": { + "h1": 15, + "h2": 99, + "N1": 66, + "N2": 127, + "vocabulary": 114, + "length": 193, + "calculated_length": 714.9096643220091, + "volume": 1318.7477727337953, + "difficulty": 9.621212121212121, + "effort": 12687.952055847878, + "time": 704.8862253248822, + "bugs": 0.4395825909112651 + }, + "functions": { + "move_detections": { + "h1": 3, + "h2": 5, + "N1": 3, + "N2": 6, + "vocabulary": 8, + "length": 9, + "calculated_length": 16.36452797660028, + "volume": 27.0, + "difficulty": 1.8, + "effort": 48.6, + "time": 2.7, + "bugs": 0.009 + }, + "__init__": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "__call__": { + "h1": 9, + "h2": 20, + "N1": 16, + "N2": 30, + "vocabulary": 29, + "length": 46, + "calculated_length": 114.96788691072805, + "volume": 223.46712577586834, + "difficulty": 6.75, + "effort": 1508.4030989871112, + "time": 83.80017216595063, + "bugs": 0.07448904192528945 + }, + "_run_callback": { + "h1": 7, + "h2": 27, + "N1": 15, + "N2": 31, + "vocabulary": 34, + "length": 46, + "calculated_length": 148.0334470128169, + "volume": 234.02329069751565, + "difficulty": 4.018518518518518, + "effort": 940.4269274326091, + "time": 52.24594041292273, + "bugs": 0.07800776356583855 + }, + "_normalize_slice_wh": { + "h1": 4, + "h2": 10, + "N1": 6, + "N2": 12, + "vocabulary": 14, + "length": 18, + "calculated_length": 41.219280948873624, + "volume": 68.53238859703687, + "difficulty": 2.4, + "effort": 164.4777326328885, + "time": 9.13765181293825, + "bugs": 0.022844129532345624 + }, + "_normalize_overlap_wh": { + "h1": 4, + "h2": 10, + "N1": 6, + "N2": 12, + "vocabulary": 14, + "length": 18, + "calculated_length": 41.219280948873624, + "volume": 68.53238859703687, + "difficulty": 2.4, + "effort": 164.4777326328885, + "time": 9.13765181293825, + "bugs": 0.022844129532345624 + }, + "_generate_offset": { + "h1": 8, + "h2": 16, + "N1": 13, + "N2": 22, + "vocabulary": 24, + "length": 35, + "calculated_length": 88.0, + "volume": 160.4736875252405, + "difficulty": 5.5, + "effort": 882.6052813888227, + "time": 49.03362674382348, + "bugs": 0.05349122917508017 + }, + "_validate_overlap": { + "h1": 3, + "h2": 9, + "N1": 6, + "N2": 12, + "vocabulary": 12, + "length": 18, + "calculated_length": 33.28421251514428, + "volume": 64.52932501298082, + "difficulty": 2.0, + "effort": 129.05865002596164, + "time": 7.169925001442313, + "bugs": 0.02150977500432694 + } + } + }, + "src\\supervision\\detection\\tools\\json_sink.py": { + "total": { + "h1": 5, + "h2": 15, + "N1": 9, + "N2": 17, + "vocabulary": 20, + "length": 26, + "calculated_length": 70.2129994085646, + "volume": 112.37013046707143, + "difficulty": 2.8333333333333335, + "effort": 318.3820363233691, + "time": 17.687890906853838, + "bugs": 0.03745671015569048 + }, + "functions": { + "__init__": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "__enter__": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "__exit__": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "open": { + "h1": 2, + "h2": 3, + "N1": 2, + "N2": 3, + "vocabulary": 5, + "length": 5, + "calculated_length": 6.754887502163469, + "volume": 11.60964047443681, + "difficulty": 1.0, + "effort": 11.60964047443681, + "time": 0.6449800263576005, + "bugs": 0.0038698801581456034 + }, + "_json_default": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "write_and_close": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "_slice_value": { + "h1": 2, + "h2": 6, + "N1": 3, + "N2": 6, + "vocabulary": 8, + "length": 9, + "calculated_length": 17.509775004326936, + "volume": 27.0, + "difficulty": 1.0, + "effort": 27.0, + "time": 1.5, + "bugs": 0.009 + }, + "parse_detection_data": { + "h1": 1, + "h2": 4, + "N1": 3, + "N2": 6, + "vocabulary": 5, + "length": 9, + "calculated_length": 8.0, + "volume": 20.89735285398626, + "difficulty": 0.75, + "effort": 15.673014640489694, + "time": 0.8707230355827608, + "bugs": 0.0069657842846620865 + }, + "append": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + } + } + }, + "src\\supervision\\detection\\tools\\polygon_zone.py": { + "total": { + "h1": 8, + "h2": 23, + "N1": 16, + "N2": 31, + "vocabulary": 31, + "length": 47, + "calculated_length": 128.0419249893113, + "volume": 232.84722658818316, + "difficulty": 5.391304347826087, + "effort": 1255.3502650841178, + "time": 69.7416813935621, + "bugs": 0.07761574219606106 + }, + "functions": { + "__init__": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "trigger": { + "h1": 5, + "h2": 15, + "N1": 11, + "N2": 22, + "vocabulary": 20, + "length": 33, + "calculated_length": 70.2129994085646, + "volume": 142.62362713128297, + "difficulty": 3.6666666666666665, + "effort": 522.9532994813709, + "time": 29.05296108229838, + "bugs": 0.04754120904376099 + }, + "annotate": { + "h1": 2, + "h2": 4, + "N1": 2, + "N2": 4, + "vocabulary": 6, + "length": 6, + "calculated_length": 10.0, + "volume": 15.509775004326936, + "difficulty": 1.0, + "effort": 15.509775004326936, + "time": 0.861654166907052, + "bugs": 0.005169925001442312 + } + } + }, + "src\\supervision\\detection\\tools\\smoother.py": { + "total": { + "h1": 6, + "h2": 19, + "N1": 12, + "N2": 24, + "vocabulary": 25, + "length": 36, + "calculated_length": 96.22039775975506, + "volume": 167.17882283189007, + "difficulty": 3.789473684210526, + "effort": 633.5197496787413, + "time": 35.19554164881896, + "bugs": 0.05572627427729669 + }, + "functions": { + "__init__": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "update_with_detections": { + "h1": 2, + "h2": 4, + "N1": 3, + "N2": 6, + "vocabulary": 6, + "length": 9, + "calculated_length": 10.0, + "volume": 23.264662506490403, + "difficulty": 1.5, + "effort": 34.89699375973561, + "time": 1.938721875540867, + "bugs": 0.007754887502163467 + }, + "get_track": { + "h1": 3, + "h2": 6, + "N1": 4, + "N2": 8, + "vocabulary": 9, + "length": 12, + "calculated_length": 20.264662506490406, + "volume": 38.03910001730775, + "difficulty": 2.0, + "effort": 76.0782000346155, + "time": 4.226566668589751, + "bugs": 0.012679700005769252 + }, + "get_smoothed_detections": { + "h1": 4, + "h2": 7, + "N1": 4, + "N2": 8, + "vocabulary": 11, + "length": 12, + "calculated_length": 27.651484454403228, + "volume": 41.51317942364757, + "difficulty": 2.2857142857142856, + "effort": 94.88726725405158, + "time": 5.27151484744731, + "bugs": 0.01383772647454919 + } + } + }, + "src\\supervision\\detection\\tools\\transformers.py": { + "total": { + "h1": 4, + "h2": 15, + "N1": 10, + "N2": 20, + "vocabulary": 19, + "length": 30, + "calculated_length": 66.60335893412778, + "volume": 127.43782540330756, + "difficulty": 2.6666666666666665, + "effort": 339.8342010754868, + "time": 18.879677837527044, + "bugs": 0.042479275134435855 + }, + "functions": { + "process_transformers_detection_result": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "process_transformers_v4_segmentation_result": { + "h1": 2, + "h2": 4, + "N1": 4, + "N2": 8, + "vocabulary": 6, + "length": 12, + "calculated_length": 10.0, + "volume": 31.019550008653873, + "difficulty": 2.0, + "effort": 62.039100017307746, + "time": 3.446616667628208, + "bugs": 0.010339850002884624 + }, + "process_transformers_v5_segmentation_result": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "process_transformers_v5_semantic_or_instance_segmentation_result": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "process_transformers_v4_panoptic_segmentation_result": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "process_transformers_v5_panoptic_segmentation_result": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "png_string_to_segmentation_array": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "append_class_names_to_data": { + "h1": 2, + "h2": 3, + "N1": 2, + "N2": 4, + "vocabulary": 5, + "length": 6, + "calculated_length": 6.754887502163469, + "volume": 13.931568569324174, + "difficulty": 1.3333333333333333, + "effort": 18.575424759098897, + "time": 1.0319680421721609, + "bugs": 0.004643856189774725 + } + } + }, + "src\\supervision\\detection\\tools\\__init__.py": { + "total": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "functions": {} + }, + "src\\supervision\\detection\\utils\\boxes.py": { + "total": { + "h1": 12, + "h2": 77, + "N1": 60, + "N2": 105, + "vocabulary": 89, + "length": 165, + "calculated_length": 525.5621136421613, + "volume": 1068.4960161094557, + "difficulty": 8.181818181818182, + "effort": 8742.240131804638, + "time": 485.68000732247987, + "bugs": 0.3561653387031519 + }, + "functions": { + "clip_boxes": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "pad_boxes": { + "h1": 3, + "h2": 6, + "N1": 3, + "N2": 6, + "vocabulary": 9, + "length": 9, + "calculated_length": 20.264662506490406, + "volume": 28.529325012980813, + "difficulty": 1.5, + "effort": 42.793987519471216, + "time": 2.377443751081734, + "bugs": 0.009509775004326938 + }, + "denormalize_boxes": { + "h1": 2, + "h2": 7, + "N1": 4, + "N2": 8, + "vocabulary": 9, + "length": 12, + "calculated_length": 21.651484454403228, + "volume": 38.03910001730775, + "difficulty": 1.1428571428571428, + "effort": 43.47325716263743, + "time": 2.415180953479857, + "bugs": 0.012679700005769252 + }, + "move_boxes": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "move_oriented_boxes": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "obb_polygon_area": { + "h1": 5, + "h2": 16, + "N1": 13, + "N2": 20, + "vocabulary": 21, + "length": 33, + "calculated_length": 75.60964047443682, + "volume": 144.94647495169912, + "difficulty": 3.125, + "effort": 452.9577342240597, + "time": 25.164318568003317, + "bugs": 0.048315491650566374 + }, + "xyxyxyxy_to_xyxy": { + "h1": 3, + "h2": 8, + "N1": 9, + "N2": 12, + "vocabulary": 11, + "length": 21, + "calculated_length": 28.75488750216347, + "volume": 72.64806399138325, + "difficulty": 2.25, + "effort": 163.4581439806123, + "time": 9.081007998922907, + "bugs": 0.024216021330461083 + }, + "scale_boxes": { + "h1": 4, + "h2": 12, + "N1": 8, + "N2": 16, + "vocabulary": 16, + "length": 24, + "calculated_length": 51.01955000865388, + "volume": 96.0, + "difficulty": 2.6666666666666665, + "effort": 256.0, + "time": 14.222222222222221, + "bugs": 0.032 + }, + "spread_out_boxes": { + "h1": 10, + "h2": 24, + "N1": 21, + "N2": 39, + "vocabulary": 34, + "length": 60, + "calculated_length": 143.2583809661814, + "volume": 305.2477704750204, + "difficulty": 8.125, + "effort": 2480.1381351095406, + "time": 137.78545195053005, + "bugs": 0.1017492568250068 + } + } + }, + "src\\supervision\\detection\\utils\\converters.py": { + "total": { + "h1": 17, + "h2": 116, + "N1": 77, + "N2": 148, + "vocabulary": 133, + "length": 225, + "calculated_length": 865.012663736054, + "volume": 1587.4385479877676, + "difficulty": 10.844827586206897, + "effort": 17215.49735662596, + "time": 956.4165198125534, + "bugs": 0.5291461826625892 + }, + "functions": { + "xyxy_to_polygons": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "polygon_to_mask": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "xywh_to_xyxy": { + "h1": 1, + "h2": 4, + "N1": 2, + "N2": 4, + "vocabulary": 5, + "length": 6, + "calculated_length": 8.0, + "volume": 13.931568569324174, + "difficulty": 0.5, + "effort": 6.965784284662087, + "time": 0.3869880158145604, + "bugs": 0.004643856189774725 + }, + "xyxy_to_xywh": { + "h1": 1, + "h2": 4, + "N1": 2, + "N2": 4, + "vocabulary": 5, + "length": 6, + "calculated_length": 8.0, + "volume": 13.931568569324174, + "difficulty": 0.5, + "effort": 6.965784284662087, + "time": 0.3869880158145604, + "bugs": 0.004643856189774725 + }, + "xcycwh_to_xyxy": { + "h1": 3, + "h2": 13, + "N1": 8, + "N2": 16, + "vocabulary": 16, + "length": 24, + "calculated_length": 52.860603837997665, + "volume": 96.0, + "difficulty": 1.8461538461538463, + "effort": 177.23076923076923, + "time": 9.846153846153847, + "bugs": 0.032 + }, + "xyxy_to_xcycarh": { + "h1": 5, + "h2": 11, + "N1": 8, + "N2": 16, + "vocabulary": 16, + "length": 24, + "calculated_length": 49.663388279447084, + "volume": 96.0, + "difficulty": 3.6363636363636362, + "effort": 349.09090909090907, + "time": 19.39393939393939, + "bugs": 0.032 + }, + "mask_to_xyxy": { + "h1": 4, + "h2": 10, + "N1": 8, + "N2": 13, + "vocabulary": 14, + "length": 21, + "calculated_length": 41.219280948873624, + "volume": 79.95445336320968, + "difficulty": 2.6, + "effort": 207.88157874434518, + "time": 11.548976596908066, + "bugs": 0.026651484454403226 + }, + "xyxy_to_mask": { + "h1": 4, + "h2": 9, + "N1": 7, + "N2": 14, + "vocabulary": 13, + "length": 21, + "calculated_length": 36.52932501298081, + "volume": 77.70923408096293, + "difficulty": 3.111111111111111, + "effort": 241.762061585218, + "time": 13.431225643623222, + "bugs": 0.025903078026987644 + }, + "mask_to_polygons": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "_base48_decode": { + "h1": 11, + "h2": 23, + "N1": 17, + "N2": 32, + "vocabulary": 34, + "length": 49, + "calculated_length": 142.09567279432156, + "volume": 249.28567922126666, + "difficulty": 7.6521739130434785, + "effort": 1907.5773714323016, + "time": 105.97652063512787, + "bugs": 0.08309522640708888 + }, + "_base48_encode": { + "h1": 6, + "h2": 10, + "N1": 8, + "N2": 15, + "vocabulary": 16, + "length": 23, + "calculated_length": 48.72905595320056, + "volume": 92.0, + "difficulty": 4.5, + "effort": 414.0, + "time": 23.0, + "bugs": 0.030666666666666665 + }, + "_delta_decode": { + "h1": 2, + "h2": 4, + "N1": 2, + "N2": 4, + "vocabulary": 6, + "length": 6, + "calculated_length": 10.0, + "volume": 15.509775004326936, + "difficulty": 1.0, + "effort": 15.509775004326936, + "time": 0.861654166907052, + "bugs": 0.005169925001442312 + }, + "_delta_encode": { + "h1": 1, + "h2": 4, + "N1": 2, + "N2": 4, + "vocabulary": 5, + "length": 6, + "calculated_length": 8.0, + "volume": 13.931568569324174, + "difficulty": 0.5, + "effort": 6.965784284662087, + "time": 0.3869880158145604, + "bugs": 0.004643856189774725 + }, + "is_compressed_rle": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "_mask_to_rle_counts": { + "h1": 3, + "h2": 5, + "N1": 3, + "N2": 6, + "vocabulary": 8, + "length": 9, + "calculated_length": 16.36452797660028, + "volume": 27.0, + "difficulty": 1.8, + "effort": 48.6, + "time": 2.7, + "bugs": 0.009 + }, + "_rle_counts_to_mask": { + "h1": 5, + "h2": 9, + "N1": 5, + "N2": 10, + "vocabulary": 14, + "length": 15, + "calculated_length": 40.13896548741762, + "volume": 57.110323830864054, + "difficulty": 2.7777777777777777, + "effort": 158.6397884190668, + "time": 8.813321578837044, + "bugs": 0.019036774610288017 + }, + "rle_to_mask": { + "h1": 2, + "h2": 4, + "N1": 2, + "N2": 4, + "vocabulary": 6, + "length": 6, + "calculated_length": 10.0, + "volume": 15.509775004326936, + "difficulty": 1.0, + "effort": 15.509775004326936, + "time": 0.861654166907052, + "bugs": 0.005169925001442312 + }, + "mask_to_rle": { + "h1": 2, + "h2": 4, + "N1": 2, + "N2": 4, + "vocabulary": 6, + "length": 6, + "calculated_length": 10.0, + "volume": 15.509775004326936, + "difficulty": 1.0, + "effort": 15.509775004326936, + "time": 0.861654166907052, + "bugs": 0.005169925001442312 + }, + "polygon_to_xyxy": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + } + } + }, + "src\\supervision\\detection\\utils\\internal.py": { + "total": { + "h1": 15, + "h2": 96, + "N1": 65, + "N2": 121, + "vocabulary": 111, + "length": 186, + "calculated_length": 690.7597590033588, + "volume": 1263.7613511411198, + "difficulty": 9.453125, + "effort": 11946.494022505898, + "time": 663.6941123614388, + "bugs": 0.4212537837137066 + }, + "functions": { + "extract_ultralytics_masks": { + "h1": 5, + "h2": 22, + "N1": 13, + "N2": 25, + "vocabulary": 27, + "length": 38, + "calculated_length": 109.71713608445735, + "volume": 180.68572508221183, + "difficulty": 2.840909090909091, + "effort": 513.3117189835564, + "time": 28.517317721308686, + "bugs": 0.06022857502740395 + }, + "process_roboflow_result": { + "h1": 12, + "h2": 34, + "N1": 27, + "N2": 51, + "vocabulary": 46, + "length": 78, + "calculated_length": 215.99328661116544, + "volume": 430.83783257244704, + "difficulty": 9.0, + "effort": 3877.5404931520234, + "time": 215.41891628622352, + "bugs": 0.14361261085748234 + }, + "is_data_equal": { + "h1": 2, + "h2": 4, + "N1": 2, + "N2": 4, + "vocabulary": 6, + "length": 6, + "calculated_length": 10.0, + "volume": 15.509775004326936, + "difficulty": 1.0, + "effort": 15.509775004326936, + "time": 0.861654166907052, + "bugs": 0.005169925001442312 + }, + "is_metadata_equal": { + "h1": 2, + "h2": 8, + "N1": 4, + "N2": 8, + "vocabulary": 10, + "length": 12, + "calculated_length": 26.0, + "volume": 39.863137138648355, + "difficulty": 1.0, + "effort": 39.863137138648355, + "time": 2.2146187299249087, + "bugs": 0.013287712379549451 + }, + "merge_data": { + "h1": 3, + "h2": 7, + "N1": 6, + "N2": 10, + "vocabulary": 10, + "length": 16, + "calculated_length": 24.406371956566698, + "volume": 53.1508495181978, + "difficulty": 2.142857142857143, + "effort": 113.89467753899528, + "time": 6.327482085499738, + "bugs": 0.017716949839399268 + }, + "merge_metadata": { + "h1": 6, + "h2": 13, + "N1": 8, + "N2": 13, + "vocabulary": 19, + "length": 21, + "calculated_length": 63.61549134016113, + "volume": 89.20647778231529, + "difficulty": 3.0, + "effort": 267.61943334694587, + "time": 14.867746297052548, + "bugs": 0.029735492594105097 + }, + "get_data_item": { + "h1": 2, + "h2": 4, + "N1": 2, + "N2": 4, + "vocabulary": 6, + "length": 6, + "calculated_length": 10.0, + "volume": 15.509775004326936, + "difficulty": 1.0, + "effort": 15.509775004326936, + "time": 0.861654166907052, + "bugs": 0.005169925001442312 + }, + "cross_product": { + "h1": 1, + "h2": 4, + "N1": 3, + "N2": 6, + "vocabulary": 5, + "length": 9, + "calculated_length": 8.0, + "volume": 20.89735285398626, + "difficulty": 0.75, + "effort": 15.673014640489694, + "time": 0.8707230355827608, + "bugs": 0.0069657842846620865 + } + } + }, + "src\\supervision\\detection\\utils\\iou_and_nms.py": { + "total": { + "h1": 20, + "h2": 337, + "N1": 218, + "N2": 417, + "vocabulary": 357, + "length": 635, + "calculated_length": 2916.0943731560337, + "volume": 5384.6604676584775, + "difficulty": 12.373887240356083, + "effort": 66629.18145440906, + "time": 3701.6211919116145, + "bugs": 1.7948868225528258 + }, + "functions": { + "list": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "from_value": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "box_iou": { + "h1": 6, + "h2": 27, + "N1": 15, + "N2": 30, + "vocabulary": 33, + "length": 45, + "calculated_length": 143.89173756274062, + "volume": 226.9977353711304, + "difficulty": 3.3333333333333335, + "effort": 756.659117903768, + "time": 42.03661766132044, + "bugs": 0.07566591179037681 + }, + "box_iou_batch": { + "h1": 6, + "h2": 27, + "N1": 15, + "N2": 30, + "vocabulary": 33, + "length": 45, + "calculated_length": 143.89173756274062, + "volume": 226.9977353711304, + "difficulty": 3.3333333333333335, + "effort": 756.659117903768, + "time": 42.03661766132044, + "bugs": 0.07566591179037681 + }, + "_jaccard": { + "h1": 4, + "h2": 34, + "N1": 19, + "N2": 38, + "vocabulary": 38, + "length": 57, + "calculated_length": 180.97373660251156, + "volume": 299.13186826628436, + "difficulty": 2.235294117647059, + "effort": 668.6477055364004, + "time": 37.14709475202224, + "bugs": 0.09971062275542812 + }, + "box_iou_batch_with_jaccard": { + "h1": 2, + "h2": 7, + "N1": 4, + "N2": 8, + "vocabulary": 9, + "length": 12, + "calculated_length": 21.651484454403228, + "volume": 38.03910001730775, + "difficulty": 1.1428571428571428, + "effort": 43.47325716263743, + "time": 2.415180953479857, + "bugs": 0.012679700005769252 + }, + "_polygon_areas": { + "h1": 3, + "h2": 9, + "N1": 6, + "N2": 10, + "vocabulary": 12, + "length": 16, + "calculated_length": 33.28421251514428, + "volume": 57.359400011538504, + "difficulty": 1.6666666666666667, + "effort": 95.59900001923084, + "time": 5.311055556623936, + "bugs": 0.01911980000384617 + }, + "_aabb_envelopes": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "_overlapping_envelope_pairs": { + "h1": 2, + "h2": 6, + "N1": 3, + "N2": 6, + "vocabulary": 8, + "length": 9, + "calculated_length": 17.509775004326936, + "volume": 27.0, + "difficulty": 1.0, + "effort": 27.0, + "time": 1.5, + "bugs": 0.009 + }, + "oriented_box_iou_batch": { + "h1": 12, + "h2": 30, + "N1": 21, + "N2": 40, + "vocabulary": 42, + "length": 61, + "calculated_length": 190.22626787690945, + "volume": 328.9313627895044, + "difficulty": 8.0, + "effort": 2631.4509023160354, + "time": 146.1917167953353, + "bugs": 0.10964378759650148 + }, + "compact_mask_iou_batch": { + "h1": 9, + "h2": 37, + "N1": 28, + "N2": 56, + "vocabulary": 46, + "length": 84, + "calculated_length": 221.27909954125198, + "volume": 463.9792043087891, + "difficulty": 6.8108108108108105, + "effort": 3160.074580697699, + "time": 175.55969892764995, + "bugs": 0.15465973476959638 + }, + "_mask_iou_batch_split": { + "h1": 7, + "h2": 16, + "N1": 9, + "N2": 18, + "vocabulary": 23, + "length": 27, + "calculated_length": 83.65148445440323, + "volume": 122.13617281353935, + "difficulty": 3.9375, + "effort": 480.9111804533112, + "time": 26.717287802961735, + "bugs": 0.040712057604513116 + }, + "mask_iou_batch": { + "h1": 11, + "h2": 40, + "N1": 29, + "N2": 57, + "vocabulary": 51, + "length": 86, + "calculated_length": 250.93087160050476, + "volume": 487.82857940954864, + "difficulty": 7.8375, + "effort": 3823.3564911223375, + "time": 212.40869395124096, + "bugs": 0.16260952646984955 + }, + "mask_non_max_suppression": { + "h1": 6, + "h2": 11, + "N1": 10, + "N2": 18, + "vocabulary": 17, + "length": 28, + "calculated_length": 53.563522809337215, + "volume": 114.44895955500952, + "difficulty": 4.909090909090909, + "effort": 561.8403469064104, + "time": 31.21335260591169, + "bugs": 0.03814965318500317 + }, + "_prepare_predictions_for_nms": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "_nms_loop_from_iou_matrix": { + "h1": 6, + "h2": 12, + "N1": 7, + "N2": 12, + "vocabulary": 18, + "length": 19, + "calculated_length": 58.52932501298082, + "volume": 79.22857502740393, + "difficulty": 3.0, + "effort": 237.6857250822118, + "time": 13.204762504567322, + "bugs": 0.026409525009134644 + }, + "box_non_max_suppression": { + "h1": 1, + "h2": 3, + "N1": 2, + "N2": 3, + "vocabulary": 4, + "length": 5, + "calculated_length": 4.754887502163469, + "volume": 10.0, + "difficulty": 0.5, + "effort": 5.0, + "time": 0.2777777777777778, + "bugs": 0.0033333333333333335 + }, + "_group_overlapping_masks": { + "h1": 6, + "h2": 9, + "N1": 8, + "N2": 12, + "vocabulary": 15, + "length": 20, + "calculated_length": 44.039100017307746, + "volume": 78.13781191217038, + "difficulty": 4.0, + "effort": 312.5512476486815, + "time": 17.363958202704527, + "bugs": 0.026045937304056792 + }, + "mask_non_max_merge": { + "h1": 1, + "h2": 6, + "N1": 3, + "N2": 6, + "vocabulary": 7, + "length": 9, + "calculated_length": 15.509775004326936, + "volume": 25.26619429851844, + "difficulty": 0.5, + "effort": 12.63309714925922, + "time": 0.701838730514401, + "bugs": 0.008422064766172813 + }, + "_greedy_nmm_via_iou_callback": { + "h1": 5, + "h2": 7, + "N1": 6, + "N2": 9, + "vocabulary": 12, + "length": 15, + "calculated_length": 31.26112492884004, + "volume": 53.77443751081735, + "difficulty": 3.2142857142857144, + "effort": 172.84640628477007, + "time": 9.60257812693167, + "bugs": 0.017924812503605784 + }, + "_non_max_merge_per_category": { + "h1": 1, + "h2": 6, + "N1": 3, + "N2": 6, + "vocabulary": 7, + "length": 9, + "calculated_length": 15.509775004326936, + "volume": 25.26619429851844, + "difficulty": 0.5, + "effort": 12.63309714925922, + "time": 0.701838730514401, + "bugs": 0.008422064766172813 + }, + "_group_overlapping_boxes": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "box_non_max_merge": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "oriented_box_non_max_suppression": { + "h1": 6, + "h2": 23, + "N1": 14, + "N2": 27, + "vocabulary": 29, + "length": 41, + "calculated_length": 119.55169999363824, + "volume": 199.1772208002305, + "difficulty": 3.5217391304347827, + "effort": 701.4502123834204, + "time": 38.969456243523354, + "bugs": 0.06639240693341016 + }, + "_group_overlapping_oriented_boxes": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "oriented_box_non_max_merge": { + "h1": 6, + "h2": 23, + "N1": 14, + "N2": 27, + "vocabulary": 29, + "length": 41, + "calculated_length": 119.55169999363824, + "volume": 199.1772208002305, + "difficulty": 3.5217391304347827, + "effort": 701.4502123834204, + "time": 38.969456243523354, + "bugs": 0.06639240693341016 + } + } + }, + "src\\supervision\\detection\\utils\\masks.py": { + "total": { + "h1": 14, + "h2": 87, + "N1": 61, + "N2": 117, + "vocabulary": 101, + "length": 178, + "calculated_length": 613.8390530476458, + "volume": 1185.1616439298195, + "difficulty": 9.413793103448276, + "effort": 11156.866510097956, + "time": 619.8259172276643, + "bugs": 0.39505388130993985 + }, + "functions": { + "move_masks": { + "h1": 6, + "h2": 27, + "N1": 17, + "N2": 32, + "vocabulary": 33, + "length": 49, + "calculated_length": 143.89173756274062, + "volume": 247.1753118485642, + "difficulty": 3.5555555555555554, + "effort": 878.8455532393393, + "time": 48.824752957741076, + "bugs": 0.08239177061618806 + }, + "calculate_masks_centroids": { + "h1": 3, + "h2": 16, + "N1": 12, + "N2": 24, + "vocabulary": 19, + "length": 36, + "calculated_length": 68.75488750216347, + "volume": 152.92539048396907, + "difficulty": 2.25, + "effort": 344.0821285889304, + "time": 19.115673810496133, + "bugs": 0.050975130161323025 + }, + "contains_holes": { + "h1": 3, + "h2": 5, + "N1": 3, + "N2": 5, + "vocabulary": 8, + "length": 8, + "calculated_length": 16.36452797660028, + "volume": 24.0, + "difficulty": 1.5, + "effort": 36.0, + "time": 2.0, + "bugs": 0.008 + }, + "contains_multiple_segments": { + "h1": 3, + "h2": 7, + "N1": 4, + "N2": 8, + "vocabulary": 10, + "length": 12, + "calculated_length": 24.406371956566698, + "volume": 39.863137138648355, + "difficulty": 1.7142857142857142, + "effort": 68.33680652339717, + "time": 3.796489251299843, + "bugs": 0.013287712379549451 + }, + "resize_masks": { + "h1": 3, + "h2": 5, + "N1": 6, + "N2": 12, + "vocabulary": 8, + "length": 18, + "calculated_length": 16.36452797660028, + "volume": 54.0, + "difficulty": 3.6, + "effort": 194.4, + "time": 10.8, + "bugs": 0.018 + }, + "filter_segments_by_distance": { + "h1": 9, + "h2": 27, + "N1": 19, + "N2": 36, + "vocabulary": 36, + "length": 55, + "calculated_length": 156.9112875713945, + "volume": 284.3458750793272, + "difficulty": 6.0, + "effort": 1706.075250475963, + "time": 94.78195835977573, + "bugs": 0.09478195835977572 + } + } + }, + "src\\supervision\\detection\\utils\\polygons.py": { + "total": { + "h1": 10, + "h2": 26, + "N1": 20, + "N2": 40, + "vocabulary": 36, + "length": 60, + "calculated_length": 155.43071362054204, + "volume": 310.19550008653874, + "difficulty": 7.6923076923076925, + "effort": 2386.1192314349137, + "time": 132.56217952416188, + "bugs": 0.10339850002884625 + }, + "functions": { + "filter_polygons_by_area": { + "h1": 5, + "h2": 12, + "N1": 10, + "N2": 20, + "vocabulary": 17, + "length": 30, + "calculated_length": 54.62919048309069, + "volume": 122.6238852375102, + "difficulty": 4.166666666666667, + "effort": 510.93285515629253, + "time": 28.38515861979403, + "bugs": 0.040874628412503396 + }, + "approximate_polygon": { + "h1": 8, + "h2": 14, + "N1": 10, + "N2": 20, + "vocabulary": 22, + "length": 30, + "calculated_length": 77.30296890880645, + "volume": 133.78294855911892, + "difficulty": 5.714285714285714, + "effort": 764.4739917663939, + "time": 42.47077732035521, + "bugs": 0.044594316186372975 + } + } + }, + "src\\supervision\\detection\\utils\\vlms.py": { + "total": { + "h1": 7, + "h2": 20, + "N1": 16, + "N2": 31, + "vocabulary": 27, + "length": 47, + "calculated_length": 106.09004635215048, + "volume": 223.47971260168305, + "difficulty": 5.425, + "effort": 1212.3774408641304, + "time": 67.35430227022947, + "bugs": 0.07449323753389435 + }, + "functions": { + "edit_distance": { + "h1": 6, + "h2": 18, + "N1": 15, + "N2": 29, + "vocabulary": 24, + "length": 44, + "calculated_length": 90.56842503028855, + "volume": 201.7383500317309, + "difficulty": 4.833333333333333, + "effort": 975.0686918200327, + "time": 54.1704828788907, + "bugs": 0.06724611667724363 + }, + "fuzzy_match_index": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + } + } + }, + "src\\supervision\\detection\\utils\\__init__.py": { + "total": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "functions": {} + }, + "src\\supervision\\draw\\base.py": { + "total": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "functions": {} + }, + "src\\supervision\\draw\\color.py": { + "total": { + "h1": 13, + "h2": 78, + "N1": 60, + "N2": 110, + "vocabulary": 91, + "length": 170, + "calculated_length": 538.3670894070896, + "volume": 1106.3250888337784, + "difficulty": 9.166666666666666, + "effort": 10141.313314309635, + "time": 563.4062952394241, + "bugs": 0.36877502961125946 + }, + "functions": { + "_validate_color_hex": { + "h1": 3, + "h2": 5, + "N1": 3, + "N2": 5, + "vocabulary": 8, + "length": 8, + "calculated_length": 16.36452797660028, + "volume": 24.0, + "difficulty": 1.5, + "effort": 36.0, + "time": 2.0, + "bugs": 0.008 + }, + "from_hex": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "from_rgb_tuple": { + "h1": 3, + "h2": 9, + "N1": 8, + "N2": 13, + "vocabulary": 12, + "length": 21, + "calculated_length": 33.28421251514428, + "volume": 75.28421251514429, + "difficulty": 2.1666666666666665, + "effort": 163.11579378281263, + "time": 9.06198854348959, + "bugs": 0.025094737505048096 + }, + "from_bgr_tuple": { + "h1": 3, + "h2": 9, + "N1": 8, + "N2": 13, + "vocabulary": 12, + "length": 21, + "calculated_length": 33.28421251514428, + "volume": 75.28421251514429, + "difficulty": 2.1666666666666665, + "effort": 163.11579378281263, + "time": 9.06198854348959, + "bugs": 0.025094737505048096 + }, + "from_rgba_tuple": { + "h1": 3, + "h2": 11, + "N1": 10, + "N2": 17, + "vocabulary": 14, + "length": 27, + "calculated_length": 42.808635307173745, + "volume": 102.7985828955553, + "difficulty": 2.3181818181818183, + "effort": 238.30580580333276, + "time": 13.239211433518486, + "bugs": 0.03426619429851843 + }, + "from_bgra_tuple": { + "h1": 3, + "h2": 11, + "N1": 10, + "N2": 17, + "vocabulary": 14, + "length": 27, + "calculated_length": 42.808635307173745, + "volume": 102.7985828955553, + "difficulty": 2.3181818181818183, + "effort": 238.30580580333276, + "time": 13.239211433518486, + "bugs": 0.03426619429851843 + }, + "as_hex": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "as_rgb": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "as_bgr": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "as_rgba": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "as_bgra": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "WHITE": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "BLACK": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "GREY": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "RED": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "GREEN": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "BLUE": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "YELLOW": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "ROBOFLOW": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "__hash__": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "__repr__": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "__eq__": { + "h1": 2, + "h2": 9, + "N1": 5, + "N2": 13, + "vocabulary": 11, + "length": 18, + "calculated_length": 30.529325012980813, + "volume": 62.26976913547136, + "difficulty": 1.4444444444444444, + "effort": 89.94522208456974, + "time": 4.996956782476096, + "bugs": 0.020756589711823786 + }, + "DEFAULT": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "LEGACY": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "from_matplotlib": { + "h1": 3, + "h2": 8, + "N1": 5, + "N2": 10, + "vocabulary": 11, + "length": 15, + "calculated_length": 28.75488750216347, + "volume": 51.89147427955947, + "difficulty": 1.875, + "effort": 97.296514274174, + "time": 5.405361904120777, + "bugs": 0.01729715809318649 + }, + "by_idx": { + "h1": 2, + "h2": 3, + "N1": 2, + "N2": 4, + "vocabulary": 5, + "length": 6, + "calculated_length": 6.754887502163469, + "volume": 13.931568569324174, + "difficulty": 1.3333333333333333, + "effort": 18.575424759098897, + "time": 1.0319680421721609, + "bugs": 0.004643856189774725 + }, + "__len__": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "unify_to_bgr": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + } + } + }, + "src\\supervision\\draw\\utils.py": { + "total": { + "h1": 13, + "h2": 57, + "N1": 57, + "N2": 109, + "vocabulary": 70, + "length": 166, + "calculated_length": 380.5804471432245, + "volume": 1017.4609808128646, + "difficulty": 12.429824561403509, + "effort": 12646.861489577448, + "time": 702.603416087636, + "bugs": 0.33915366027095484 + }, + "functions": { + "draw_line": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "draw_rectangle": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "draw_filled_rectangle": { + "h1": 3, + "h2": 2, + "N1": 4, + "N2": 6, + "vocabulary": 5, + "length": 10, + "calculated_length": 6.754887502163469, + "volume": 23.21928094887362, + "difficulty": 4.5, + "effort": 104.4867642699313, + "time": 5.804820237218405, + "bugs": 0.007739760316291207 + }, + "draw_rounded_rectangle": { + "h1": 4, + "h2": 8, + "N1": 17, + "N2": 32, + "vocabulary": 12, + "length": 49, + "calculated_length": 32.0, + "volume": 175.66316253533668, + "difficulty": 8.0, + "effort": 1405.3053002826935, + "time": 78.07251668237186, + "bugs": 0.058554387511778896 + }, + "draw_polygon": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "draw_filled_polygon": { + "h1": 2, + "h2": 2, + "N1": 2, + "N2": 4, + "vocabulary": 4, + "length": 6, + "calculated_length": 4.0, + "volume": 12.0, + "difficulty": 2.0, + "effort": 24.0, + "time": 1.3333333333333333, + "bugs": 0.004 + }, + "draw_text": { + "h1": 4, + "h2": 11, + "N1": 9, + "N2": 18, + "vocabulary": 15, + "length": 27, + "calculated_length": 46.053747805010275, + "volume": 105.48604608143, + "difficulty": 3.272727272727273, + "effort": 345.22705990286187, + "time": 19.179281105714548, + "bugs": 0.03516201536047667 + }, + "draw_image": { + "h1": 10, + "h2": 30, + "N1": 23, + "N2": 45, + "vocabulary": 40, + "length": 68, + "calculated_length": 180.4259988171292, + "volume": 361.8911104523407, + "difficulty": 7.5, + "effort": 2714.1833283925553, + "time": 150.7879626884753, + "bugs": 0.12063037015078022 + }, + "calculate_optimal_text_scale": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "calculate_optimal_line_thickness": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + } + } + }, + "src\\supervision\\draw\\__init__.py": { + "total": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "functions": {} + }, + "src\\supervision\\geometry\\core.py": { + "total": { + "h1": 5, + "h2": 40, + "N1": 28, + "N2": 56, + "vocabulary": 45, + "length": 84, + "calculated_length": 224.4867642699313, + "volume": 461.3156600916927, + "difficulty": 3.5, + "effort": 1614.6048103209243, + "time": 89.70026724005135, + "bugs": 0.15377188669723088 + }, + "functions": { + "list": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "as_xy_int_tuple": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "as_xy_float_tuple": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "magnitude": { + "h1": 3, + "h2": 7, + "N1": 5, + "N2": 10, + "vocabulary": 10, + "length": 15, + "calculated_length": 24.406371956566698, + "volume": 49.82892142331044, + "difficulty": 2.142857142857143, + "effort": 106.77626019280808, + "time": 5.932014455156004, + "bugs": 0.016609640474436815 + }, + "center": { + "h1": 2, + "h2": 5, + "N1": 4, + "N2": 8, + "vocabulary": 7, + "length": 12, + "calculated_length": 13.60964047443681, + "volume": 33.68825906469125, + "difficulty": 1.6, + "effort": 53.901214503506004, + "time": 2.9945119168614447, + "bugs": 0.011229419688230418 + }, + "cross_product": { + "h1": 2, + "h2": 8, + "N1": 7, + "N2": 14, + "vocabulary": 10, + "length": 21, + "calculated_length": 26.0, + "volume": 69.76048999263462, + "difficulty": 1.75, + "effort": 122.08085748711058, + "time": 6.782269860395032, + "bugs": 0.02325349666421154 + }, + "from_xyxy": { + "h1": 1, + "h2": 4, + "N1": 2, + "N2": 4, + "vocabulary": 5, + "length": 6, + "calculated_length": 8.0, + "volume": 13.931568569324174, + "difficulty": 0.5, + "effort": 6.965784284662087, + "time": 0.3869880158145604, + "bugs": 0.004643856189774725 + }, + "top_left": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "bottom_right": { + "h1": 1, + "h2": 4, + "N1": 2, + "N2": 4, + "vocabulary": 5, + "length": 6, + "calculated_length": 8.0, + "volume": 13.931568569324174, + "difficulty": 0.5, + "effort": 6.965784284662087, + "time": 0.3869880158145604, + "bugs": 0.004643856189774725 + }, + "pad": { + "h1": 3, + "h2": 8, + "N1": 6, + "N2": 12, + "vocabulary": 11, + "length": 18, + "calculated_length": 28.75488750216347, + "volume": 62.26976913547136, + "difficulty": 2.25, + "effort": 140.10698055481055, + "time": 7.78372114193392, + "bugs": 0.020756589711823786 + }, + "as_xyxy_int_tuple": { + "h1": 1, + "h2": 4, + "N1": 2, + "N2": 4, + "vocabulary": 5, + "length": 6, + "calculated_length": 8.0, + "volume": 13.931568569324174, + "difficulty": 0.5, + "effort": 6.965784284662087, + "time": 0.3869880158145604, + "bugs": 0.004643856189774725 + } + } + }, + "src\\supervision\\geometry\\utils.py": { + "total": { + "h1": 4, + "h2": 10, + "N1": 6, + "N2": 11, + "vocabulary": 14, + "length": 17, + "calculated_length": 41.219280948873624, + "volume": 64.72503367497926, + "difficulty": 2.2, + "effort": 142.3950740849544, + "time": 7.9108374491641325, + "bugs": 0.021575011224993085 + }, + "functions": { + "get_polygon_center": { + "h1": 4, + "h2": 10, + "N1": 6, + "N2": 11, + "vocabulary": 14, + "length": 17, + "calculated_length": 41.219280948873624, + "volume": 64.72503367497926, + "difficulty": 2.2, + "effort": 142.3950740849544, + "time": 7.9108374491641325, + "bugs": 0.021575011224993085 + } + } + }, + "src\\supervision\\geometry\\__init__.py": { + "total": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "functions": {} + }, + "src\\supervision\\keypoint\\annotators.py": { + "total": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "functions": {} + }, + "src\\supervision\\keypoint\\core.py": { + "total": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "functions": {} + }, + "src\\supervision\\keypoint\\__init__.py": { + "total": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "functions": {} + }, + "src\\supervision\\key_points\\annotators.py": { + "total": { + "h1": 18, + "h2": 121, + "N1": 97, + "N2": 180, + "vocabulary": 139, + "length": 277, + "calculated_length": 912.2411017361876, + "volume": 1971.9466771444115, + "difficulty": 13.388429752066116, + "effort": 26401.269561768157, + "time": 1466.7371978760086, + "bugs": 0.6573155590481372 + }, + "functions": { + "annotate": { + "h1": 4, + "h2": 8, + "N1": 6, + "N2": 9, + "vocabulary": 12, + "length": 15, + "calculated_length": 32.0, + "volume": 53.77443751081735, + "difficulty": 2.25, + "effort": 120.99248439933903, + "time": 6.721804688852169, + "bugs": 0.017924812503605784 + }, + "__init__": { + "h1": 1, + "h2": 3, + "N1": 2, + "N2": 4, + "vocabulary": 4, + "length": 6, + "calculated_length": 4.754887502163469, + "volume": 12.0, + "difficulty": 0.6666666666666666, + "effort": 8.0, + "time": 0.4444444444444444, + "bugs": 0.004 + }, + "_get_covariances": { + "h1": 2, + "h2": 4, + "N1": 2, + "N2": 4, + "vocabulary": 6, + "length": 6, + "calculated_length": 10.0, + "volume": 15.509775004326936, + "difficulty": 1.0, + "effort": 15.509775004326936, + "time": 0.861654166907052, + "bugs": 0.005169925001442312 + }, + "_decompose_covariance": { + "h1": 4, + "h2": 7, + "N1": 5, + "N2": 7, + "vocabulary": 11, + "length": 12, + "calculated_length": 27.651484454403228, + "volume": 41.51317942364757, + "difficulty": 2.0, + "effort": 83.02635884729514, + "time": 4.612575491516397, + "bugs": 0.01383772647454919 + }, + "_iter_ellipse_params": { + "h1": 5, + "h2": 9, + "N1": 6, + "N2": 11, + "vocabulary": 14, + "length": 17, + "calculated_length": 40.13896548741762, + "volume": 64.72503367497926, + "difficulty": 3.0555555555555554, + "effort": 197.77093622910328, + "time": 10.987274234950183, + "bugs": 0.021575011224993085 + }, + "get_text_bounding_box": { + "h1": 3, + "h2": 9, + "N1": 8, + "N2": 16, + "vocabulary": 12, + "length": 24, + "calculated_length": 33.28421251514428, + "volume": 86.03910001730776, + "difficulty": 2.6666666666666665, + "effort": 229.43760004615402, + "time": 12.746533335897446, + "bugs": 0.028679700005769252 + }, + "_resolve_labels": { + "h1": 3, + "h2": 5, + "N1": 4, + "N2": 8, + "vocabulary": 8, + "length": 12, + "calculated_length": 16.36452797660028, + "volume": 36.0, + "difficulty": 2.4, + "effort": 86.39999999999999, + "time": 4.8, + "bugs": 0.012 + }, + "_resolve_color_list": { + "h1": 2, + "h2": 3, + "N1": 2, + "N2": 4, + "vocabulary": 5, + "length": 6, + "calculated_length": 6.754887502163469, + "volume": 13.931568569324174, + "difficulty": 1.3333333333333333, + "effort": 18.575424759098897, + "time": 1.0319680421721609, + "bugs": 0.004643856189774725 + } + } + }, + "src\\supervision\\key_points\\core.py": { + "total": { + "h1": 14, + "h2": 153, + "N1": 115, + "N2": 214, + "vocabulary": 167, + "length": 329, + "calculated_length": 1163.6833088407823, + "volume": 2429.2387122239634, + "difficulty": 9.790849673202615, + "effort": 23784.311051709134, + "time": 1321.3506139838407, + "bugs": 0.8097462374079878 + }, + "functions": { + "_optional_array_equal": { + "h1": 3, + "h2": 7, + "N1": 6, + "N2": 12, + "vocabulary": 10, + "length": 18, + "calculated_length": 24.406371956566698, + "volume": 59.794705707972525, + "difficulty": 2.5714285714285716, + "effort": 153.75781467764364, + "time": 8.542100815424646, + "bugs": 0.019931568569324175 + }, + "_normalize_row_index": { + "h1": 2, + "h2": 11, + "N1": 5, + "N2": 11, + "vocabulary": 13, + "length": 16, + "calculated_length": 40.053747805010275, + "volume": 59.207035490257475, + "difficulty": 1.0, + "effort": 59.207035490257475, + "time": 3.2892797494587485, + "bugs": 0.019735678496752493 + }, + "__init__": { + "h1": 1, + "h2": 4, + "N1": 3, + "N2": 6, + "vocabulary": 5, + "length": 9, + "calculated_length": 8.0, + "volume": 20.89735285398626, + "difficulty": 0.75, + "effort": 15.673014640489694, + "time": 0.8707230355827608, + "bugs": 0.0069657842846620865 + }, + "__post_init__": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "confidence": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "__len__": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "__iter__": { + "h1": 1, + "h2": 3, + "N1": 2, + "N2": 4, + "vocabulary": 4, + "length": 6, + "calculated_length": 4.754887502163469, + "volume": 12.0, + "difficulty": 0.6666666666666666, + "effort": 8.0, + "time": 0.4444444444444444, + "bugs": 0.004 + }, + "__eq__": { + "h1": 1, + "h2": 1, + "N1": 1, + "N2": 1, + "vocabulary": 2, + "length": 2, + "calculated_length": 0.0, + "volume": 2.0, + "difficulty": 0.5, + "effort": 1.0, + "time": 0.05555555555555555, + "bugs": 0.0006666666666666666 + }, + "from_inference": { + "h1": 2, + "h2": 3, + "N1": 2, + "N2": 3, + "vocabulary": 5, + "length": 5, + "calculated_length": 6.754887502163469, + "volume": 11.60964047443681, + "difficulty": 1.0, + "effort": 11.60964047443681, + "time": 0.6449800263576005, + "bugs": 0.0038698801581456034 + }, + "from_mediapipe": { + "h1": 4, + "h2": 10, + "N1": 6, + "N2": 11, + "vocabulary": 14, + "length": 17, + "calculated_length": 41.219280948873624, + "volume": 64.72503367497926, + "difficulty": 2.2, + "effort": 142.3950740849544, + "time": 7.9108374491641325, + "bugs": 0.021575011224993085 + }, + "from_ultralytics": { + "h1": 2, + "h2": 4, + "N1": 2, + "N2": 4, + "vocabulary": 6, + "length": 6, + "calculated_length": 10.0, + "volume": 15.509775004326936, + "difficulty": 1.0, + "effort": 15.509775004326936, + "time": 0.861654166907052, + "bugs": 0.005169925001442312 + }, + "from_yolo_nas": { + "h1": 4, + "h2": 9, + "N1": 5, + "N2": 10, + "vocabulary": 13, + "length": 15, + "calculated_length": 36.52932501298081, + "volume": 55.506595772116384, + "difficulty": 2.2222222222222223, + "effort": 123.34799060470309, + "time": 6.852666144705727, + "bugs": 0.01850219859070546 + }, + "from_detectron2": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "from_transformers": { + "h1": 2, + "h2": 4, + "N1": 2, + "N2": 4, + "vocabulary": 6, + "length": 6, + "calculated_length": 10.0, + "volume": 15.509775004326936, + "difficulty": 1.0, + "effort": 15.509775004326936, + "time": 0.861654166907052, + "bugs": 0.005169925001442312 + }, + "_get_by_2d_bool_mask": { + "h1": 7, + "h2": 23, + "N1": 19, + "N2": 37, + "vocabulary": 30, + "length": 56, + "calculated_length": 123.69340944371453, + "volume": 274.78587335407707, + "difficulty": 5.630434782608695, + "effort": 1547.1639391023034, + "time": 85.95355217235019, + "bugs": 0.0915952911180257 + }, + "__getitem__": { + "h1": 5, + "h2": 39, + "N1": 31, + "N2": 62, + "vocabulary": 44, + "length": 93, + "calculated_length": 217.7403270100645, + "volume": 507.72714053326865, + "difficulty": 3.9743589743589745, + "effort": 2017.8899175040165, + "time": 112.1049954168898, + "bugs": 0.16924238017775622 + }, + "__setitem__": { + "h1": 1, + "h2": 1, + "N1": 1, + "N2": 1, + "vocabulary": 2, + "length": 2, + "calculated_length": 0.0, + "volume": 2.0, + "difficulty": 0.5, + "effort": 1.0, + "time": 0.05555555555555555, + "bugs": 0.0006666666666666666 + }, + "empty": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "is_empty": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "with_nms": { + "h1": 8, + "h2": 14, + "N1": 15, + "N2": 22, + "vocabulary": 22, + "length": 37, + "calculated_length": 77.30296890880645, + "volume": 164.99896988958, + "difficulty": 6.285714285714286, + "effort": 1037.1363821630741, + "time": 57.61868789794856, + "bugs": 0.05499965662986 + }, + "as_detections": { + "h1": 5, + "h2": 9, + "N1": 8, + "N2": 12, + "vocabulary": 14, + "length": 20, + "calculated_length": 40.13896548741762, + "volume": 76.14709844115208, + "difficulty": 3.3333333333333335, + "effort": 253.82366147050695, + "time": 14.101314526139275, + "bugs": 0.025382366147050694 + } + } + }, + "src\\supervision\\key_points\\skeletons.py": { + "total": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "functions": {} + }, + "src\\supervision\\key_points\\__init__.py": { + "total": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "functions": {} + }, + "src\\supervision\\metrics\\core.py": { + "total": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "functions": { + "update": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "reset": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "compute": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + } + } + }, + "src\\supervision\\metrics\\detection.py": { + "total": { + "h1": 18, + "h2": 137, + "N1": 96, + "N2": 180, + "vocabulary": 155, + "length": 276, + "calculated_length": 1047.4890453915539, + "volume": 2008.21033585569, + "difficulty": 11.824817518248175, + "effort": 23746.72075975341, + "time": 1319.262264430745, + "bugs": 0.66940344528523 + }, + "functions": { + "_assert_supported_target": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "detections_to_tensor": { + "h1": 7, + "h2": 20, + "N1": 13, + "N2": 24, + "vocabulary": 27, + "length": 37, + "calculated_length": 106.09004635215048, + "volume": 175.93083758004835, + "difficulty": 4.2, + "effort": 738.9095178362031, + "time": 41.05052876867795, + "bugs": 0.058643612526682785 + }, + "_validate_input_tensors": { + "h1": 5, + "h2": 14, + "N1": 9, + "N2": 16, + "vocabulary": 19, + "length": 25, + "calculated_length": 64.91260938324326, + "volume": 106.19818783608963, + "difficulty": 2.857142857142857, + "effort": 303.42339381739896, + "time": 16.85685521207772, + "bugs": 0.03539939594536321 + }, + "validate_input_tensors": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "__eq__": { + "h1": 3, + "h2": 8, + "N1": 5, + "N2": 11, + "vocabulary": 11, + "length": 16, + "calculated_length": 28.75488750216347, + "volume": 55.350905898196764, + "difficulty": 2.0625, + "effort": 114.16124341503082, + "time": 6.342291300835046, + "bugs": 0.018450301966065587 + }, + "from_detections": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "from_tensors": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "evaluate_detection_batch": { + "h1": 10, + "h2": 38, + "N1": 31, + "N2": 60, + "vocabulary": 48, + "length": 91, + "calculated_length": 232.64052645972987, + "volume": 508.23158756562526, + "difficulty": 7.894736842105263, + "effort": 4012.3546386759886, + "time": 222.9085910375549, + "bugs": 0.16941052918854174 + }, + "_drop_extra_matches": { + "h1": 2, + "h2": 3, + "N1": 3, + "N2": 4, + "vocabulary": 5, + "length": 7, + "calculated_length": 6.754887502163469, + "volume": 16.253496664211536, + "difficulty": 1.3333333333333333, + "effort": 21.67132888561538, + "time": 1.2039627158675212, + "bugs": 0.005417832221403845 + }, + "benchmark": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "plot": { + "h1": 9, + "h2": 23, + "N1": 15, + "N2": 27, + "vocabulary": 32, + "length": 42, + "calculated_length": 132.57125000229212, + "volume": 210.0, + "difficulty": 5.282608695652174, + "effort": 1109.3478260869565, + "time": 61.630434782608695, + "bugs": 0.07 + }, + "compute_average_precision": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "_match_detection_batch": { + "h1": 5, + "h2": 8, + "N1": 5, + "N2": 9, + "vocabulary": 13, + "length": 14, + "calculated_length": 35.60964047443681, + "volume": 51.80615605397529, + "difficulty": 2.8125, + "effort": 145.70481390180552, + "time": 8.09471188343364, + "bugs": 0.01726871868465843 + }, + "_average_precisions_per_class": { + "h1": 6, + "h2": 15, + "N1": 10, + "N2": 19, + "vocabulary": 21, + "length": 29, + "calculated_length": 74.11313393845472, + "volume": 127.37720526058406, + "difficulty": 3.8, + "effort": 484.03337999021943, + "time": 26.890743332789967, + "bugs": 0.04245906842019469 + } + } + }, + "src\\supervision\\metrics\\f1_score.py": { + "total": { + "h1": 16, + "h2": 132, + "N1": 96, + "N2": 185, + "vocabulary": 148, + "length": 281, + "calculated_length": 993.8600237553159, + "volume": 2025.8563957417348, + "difficulty": 11.212121212121213, + "effort": 22714.147467407332, + "time": 1261.8970815226296, + "bugs": 0.675285465247245 + }, + "functions": { + "__init__": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "reset": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "update": { + "h1": 2, + "h2": 4, + "N1": 3, + "N2": 4, + "vocabulary": 6, + "length": 7, + "calculated_length": 10.0, + "volume": 18.094737505048094, + "difficulty": 1.0, + "effort": 18.094737505048094, + "time": 1.0052631947248942, + "bugs": 0.006031579168349364 + }, + "compute": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "_compute": { + "h1": 7, + "h2": 17, + "N1": 14, + "N2": 27, + "vocabulary": 24, + "length": 41, + "calculated_length": 89.13835275565901, + "volume": 187.98346252956745, + "difficulty": 5.5588235294117645, + "effort": 1044.9668946496543, + "time": 58.05371636942524, + "bugs": 0.06266115417652249 + }, + "_compute_f1_for_classes": { + "h1": 2, + "h2": 7, + "N1": 5, + "N2": 9, + "vocabulary": 9, + "length": 14, + "calculated_length": 21.651484454403228, + "volume": 44.37895002019238, + "difficulty": 1.2857142857142858, + "effort": 57.05865002596163, + "time": 3.169925001442313, + "bugs": 0.014792983340064125 + }, + "_match_detection_batch": { + "h1": 5, + "h2": 8, + "N1": 5, + "N2": 9, + "vocabulary": 13, + "length": 14, + "calculated_length": 35.60964047443681, + "volume": 51.80615605397529, + "difficulty": 2.8125, + "effort": 145.70481390180552, + "time": 8.09471188343364, + "bugs": 0.01726871868465843 + }, + "_compute_confusion_matrix": { + "h1": 2, + "h2": 8, + "N1": 5, + "N2": 10, + "vocabulary": 10, + "length": 15, + "calculated_length": 26.0, + "volume": 49.82892142331044, + "difficulty": 1.25, + "effort": 62.28615177913805, + "time": 3.4603417655076694, + "bugs": 0.016609640474436815 + }, + "_compute_f1": { + "h1": 6, + "h2": 13, + "N1": 9, + "N2": 16, + "vocabulary": 19, + "length": 25, + "calculated_length": 63.61549134016113, + "volume": 106.19818783608963, + "difficulty": 3.6923076923076925, + "effort": 392.11638585633096, + "time": 21.784243658685053, + "bugs": 0.03539939594536321 + }, + "_detections_content": { + "h1": 4, + "h2": 11, + "N1": 7, + "N2": 14, + "vocabulary": 15, + "length": 21, + "calculated_length": 46.053747805010275, + "volume": 82.0447025077789, + "difficulty": 2.5454545454545454, + "effort": 208.84106092889172, + "time": 11.602281162716206, + "bugs": 0.02734823416925963 + }, + "_make_empty_content": { + "h1": 1, + "h2": 4, + "N1": 3, + "N2": 6, + "vocabulary": 5, + "length": 9, + "calculated_length": 8.0, + "volume": 20.89735285398626, + "difficulty": 0.75, + "effort": 15.673014640489694, + "time": 0.8707230355827608, + "bugs": 0.0069657842846620865 + }, + "_filter_detections_by_size": { + "h1": 3, + "h2": 12, + "N1": 8, + "N2": 16, + "vocabulary": 15, + "length": 24, + "calculated_length": 47.77443751081735, + "volume": 93.76537429460444, + "difficulty": 2.0, + "effort": 187.53074858920888, + "time": 10.418374921622716, + "bugs": 0.03125512476486815 + }, + "_filter_predictions_and_targets_by_size": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "f1_50": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "f1_75": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "__str__": { + "h1": 3, + "h2": 16, + "N1": 12, + "N2": 24, + "vocabulary": 19, + "length": 36, + "calculated_length": 68.75488750216347, + "volume": 152.92539048396907, + "difficulty": 2.25, + "effort": 344.0821285889304, + "time": 19.115673810496133, + "bugs": 0.050975130161323025 + }, + "to_pandas": { + "h1": 1, + "h2": 4, + "N1": 3, + "N2": 6, + "vocabulary": 5, + "length": 9, + "calculated_length": 8.0, + "volume": 20.89735285398626, + "difficulty": 0.75, + "effort": 15.673014640489694, + "time": 0.8707230355827608, + "bugs": 0.0069657842846620865 + }, + "plot": { + "h1": 4, + "h2": 26, + "N1": 19, + "N2": 38, + "vocabulary": 30, + "length": 57, + "calculated_length": 130.2114326716684, + "volume": 279.69276394968557, + "difficulty": 2.923076923076923, + "effort": 817.563463852927, + "time": 45.42019243627372, + "bugs": 0.09323092131656185 + } + } + }, + "src\\supervision\\metrics\\mean_average_precision.py": { + "total": { + "h1": 21, + "h2": 291, + "N1": 224, + "N2": 404, + "vocabulary": 312, + "length": 628, + "calculated_length": 2474.0373906646646, + "volume": 5203.232593445492, + "difficulty": 14.577319587628866, + "effort": 75849.18440342191, + "time": 4213.843577967884, + "bugs": 1.7344108644818308 + }, + "functions": { + "map50_95": { + "h1": 2, + "h2": 5, + "N1": 4, + "N2": 6, + "vocabulary": 7, + "length": 10, + "calculated_length": 13.60964047443681, + "volume": 28.07354922057604, + "difficulty": 1.2, + "effort": 33.688259064691245, + "time": 1.8715699480384025, + "bugs": 0.009357849740192013 + }, + "map50": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "map75": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "__str__": { + "h1": 2, + "h2": 7, + "N1": 4, + "N2": 9, + "vocabulary": 9, + "length": 13, + "calculated_length": 21.651484454403228, + "volume": 41.20902501875006, + "difficulty": 1.2857142857142858, + "effort": 52.98303216696437, + "time": 2.943501787053576, + "bugs": 0.013736341672916687 + }, + "to_pandas": { + "h1": 1, + "h2": 4, + "N1": 3, + "N2": 6, + "vocabulary": 5, + "length": 9, + "calculated_length": 8.0, + "volume": 20.89735285398626, + "difficulty": 0.75, + "effort": 15.673014640489694, + "time": 0.8707230355827608, + "bugs": 0.0069657842846620865 + }, + "plot": { + "h1": 4, + "h2": 27, + "N1": 19, + "N2": 38, + "vocabulary": 31, + "length": 57, + "calculated_length": 136.38196255841368, + "volume": 282.3891896920519, + "difficulty": 2.814814814814815, + "effort": 794.8732746887387, + "time": 44.159626371596595, + "bugs": 0.09412972989735063 + }, + "__init__": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "empty": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "create_class_members": { + "h1": 2, + "h2": 6, + "N1": 6, + "N2": 12, + "vocabulary": 8, + "length": 18, + "calculated_length": 17.509775004326936, + "volume": 54.0, + "difficulty": 2.0, + "effort": 108.0, + "time": 6.0, + "bugs": 0.018 + }, + "get_annotation_ids": { + "h1": 6, + "h2": 15, + "N1": 12, + "N2": 19, + "vocabulary": 21, + "length": 31, + "calculated_length": 74.11313393845472, + "volume": 136.16184010614157, + "difficulty": 3.8, + "effort": 517.4149924033379, + "time": 28.745277355740996, + "bugs": 0.04538728003538052 + }, + "get_category_ids": { + "h1": 3, + "h2": 9, + "N1": 10, + "N2": 15, + "vocabulary": 12, + "length": 25, + "calculated_length": 33.28421251514428, + "volume": 89.62406251802891, + "difficulty": 2.5, + "effort": 224.06015629507226, + "time": 12.447786460837348, + "bugs": 0.029874687506009637 + }, + "get_image_ids": { + "h1": 4, + "h2": 10, + "N1": 7, + "N2": 11, + "vocabulary": 14, + "length": 18, + "calculated_length": 41.219280948873624, + "volume": 68.53238859703687, + "difficulty": 2.2, + "effort": 150.77125491348113, + "time": 8.37618082852673, + "bugs": 0.022844129532345624 + }, + "get_annotations": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "load_predictions": { + "h1": 8, + "h2": 28, + "N1": 17, + "N2": 32, + "vocabulary": 36, + "length": 49, + "calculated_length": 158.6059378176129, + "volume": 253.3263250706733, + "difficulty": 4.571428571428571, + "effort": 1158.0632003230778, + "time": 64.33684446239322, + "bugs": 0.0844421083568911 + }, + "_prepare_targets_and_predictions": { + "h1": 2, + "h2": 5, + "N1": 3, + "N2": 6, + "vocabulary": 7, + "length": 9, + "calculated_length": 13.60964047443681, + "volume": 25.26619429851844, + "difficulty": 1.2, + "effort": 30.319433158222125, + "time": 1.6844129532345624, + "bugs": 0.008422064766172813 + }, + "_compute_iou": { + "h1": 4, + "h2": 9, + "N1": 7, + "N2": 11, + "vocabulary": 13, + "length": 18, + "calculated_length": 36.52932501298081, + "volume": 66.60791492653966, + "difficulty": 2.4444444444444446, + "effort": 162.81934759820808, + "time": 9.04551931101156, + "bugs": 0.022202638308846556 + }, + "_evaluate_image": { + "h1": 11, + "h2": 35, + "N1": 27, + "N2": 48, + "vocabulary": 46, + "length": 75, + "calculated_length": 217.5786533980841, + "volume": 414.267146704276, + "difficulty": 7.542857142857143, + "effort": 3124.7579065693963, + "time": 173.59766147607758, + "bugs": 0.13808904890142534 + }, + "_accumulate": { + "h1": 13, + "h2": 50, + "N1": 38, + "N2": 66, + "vocabulary": 63, + "length": 104, + "calculated_length": 330.2985258245704, + "volume": 621.6371120439914, + "difficulty": 8.58, + "effort": 5333.646421337446, + "time": 296.31369007430254, + "bugs": 0.20721237068133044 + }, + "_pycocotools_summarize": { + "h1": 6, + "h2": 11, + "N1": 13, + "N2": 22, + "vocabulary": 17, + "length": 35, + "calculated_length": 53.563522809337215, + "volume": 143.0611994437619, + "difficulty": 6.0, + "effort": 858.3671966625714, + "time": 47.687066481253964, + "bugs": 0.04768706648125397 + }, + "evaluate": { + "h1": 1, + "h2": 1, + "N1": 1, + "N2": 1, + "vocabulary": 2, + "length": 2, + "calculated_length": 0.0, + "volume": 2.0, + "difficulty": 0.5, + "effort": 1.0, + "time": 0.05555555555555555, + "bugs": 0.0006666666666666666 + }, + "reset": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "update": { + "h1": 4, + "h2": 7, + "N1": 7, + "N2": 10, + "vocabulary": 11, + "length": 17, + "calculated_length": 27.651484454403228, + "volume": 58.81033751683406, + "difficulty": 2.857142857142857, + "effort": 168.02953576238303, + "time": 9.33497420902128, + "bugs": 0.019603445838944685 + }, + "_prepare_targets": { + "h1": 7, + "h2": 20, + "N1": 16, + "N2": 32, + "vocabulary": 27, + "length": 48, + "calculated_length": 106.09004635215048, + "volume": 228.2346001038465, + "difficulty": 5.6, + "effort": 1278.1137605815404, + "time": 71.0063200323078, + "bugs": 0.0760782000346155 + }, + "_prepare_predictions": { + "h1": 7, + "h2": 18, + "N1": 13, + "N2": 26, + "vocabulary": 25, + "length": 39, + "calculated_length": 94.71013448036484, + "volume": 181.11039140121426, + "difficulty": 5.055555555555555, + "effort": 915.6136454172498, + "time": 50.867424745402765, + "bugs": 0.06037013046707142 + }, + "compute": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + } + } + }, + "src\\supervision\\metrics\\mean_average_recall.py": { + "total": { + "h1": 16, + "h2": 117, + "N1": 85, + "N2": 163, + "vocabulary": 133, + "length": 248, + "calculated_length": 867.8326721912583, + "volume": 1749.710044004295, + "difficulty": 11.145299145299145, + "effort": 19501.0418579624, + "time": 1083.3912143312443, + "bugs": 0.583236681334765 + }, + "functions": { + "mAR_at_1": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "mAR_at_10": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "mAR_at_100": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "__str__": { + "h1": 3, + "h2": 16, + "N1": 12, + "N2": 24, + "vocabulary": 19, + "length": 36, + "calculated_length": 68.75488750216347, + "volume": 152.92539048396907, + "difficulty": 2.25, + "effort": 344.0821285889304, + "time": 19.115673810496133, + "bugs": 0.050975130161323025 + }, + "to_pandas": { + "h1": 1, + "h2": 4, + "N1": 3, + "N2": 6, + "vocabulary": 5, + "length": 9, + "calculated_length": 8.0, + "volume": 20.89735285398626, + "difficulty": 0.75, + "effort": 15.673014640489694, + "time": 0.8707230355827608, + "bugs": 0.0069657842846620865 + }, + "plot": { + "h1": 4, + "h2": 27, + "N1": 19, + "N2": 38, + "vocabulary": 31, + "length": 57, + "calculated_length": 136.38196255841368, + "volume": 282.3891896920519, + "difficulty": 2.814814814814815, + "effort": 794.8732746887387, + "time": 44.159626371596595, + "bugs": 0.09412972989735063 + }, + "__init__": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "reset": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "update": { + "h1": 2, + "h2": 4, + "N1": 3, + "N2": 4, + "vocabulary": 6, + "length": 7, + "calculated_length": 10.0, + "volume": 18.094737505048094, + "difficulty": 1.0, + "effort": 18.094737505048094, + "time": 1.0052631947248942, + "bugs": 0.006031579168349364 + }, + "compute": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "_compute": { + "h1": 5, + "h2": 11, + "N1": 9, + "N2": 16, + "vocabulary": 16, + "length": 25, + "calculated_length": 49.663388279447084, + "volume": 100.0, + "difficulty": 3.6363636363636362, + "effort": 363.6363636363636, + "time": 20.2020202020202, + "bugs": 0.03333333333333333 + }, + "_compute_average_recall_for_classes": { + "h1": 1, + "h2": 2, + "N1": 2, + "N2": 4, + "vocabulary": 3, + "length": 6, + "calculated_length": 2.0, + "volume": 9.509775004326938, + "difficulty": 1.0, + "effort": 9.509775004326938, + "time": 0.5283208335737188, + "bugs": 0.003169925001442313 + }, + "_match_detection_batch": { + "h1": 5, + "h2": 8, + "N1": 5, + "N2": 9, + "vocabulary": 13, + "length": 14, + "calculated_length": 35.60964047443681, + "volume": 51.80615605397529, + "difficulty": 2.8125, + "effort": 145.70481390180552, + "time": 8.09471188343364, + "bugs": 0.01726871868465843 + }, + "_compute_confusion_matrix": { + "h1": 2, + "h2": 8, + "N1": 5, + "N2": 10, + "vocabulary": 10, + "length": 15, + "calculated_length": 26.0, + "volume": 49.82892142331044, + "difficulty": 1.25, + "effort": 62.28615177913805, + "time": 3.4603417655076694, + "bugs": 0.016609640474436815 + }, + "_compute_recall": { + "h1": 5, + "h2": 8, + "N1": 6, + "N2": 10, + "vocabulary": 13, + "length": 16, + "calculated_length": 35.60964047443681, + "volume": 59.207035490257475, + "difficulty": 3.125, + "effort": 185.0219859070546, + "time": 10.27899921705859, + "bugs": 0.019735678496752493 + }, + "_detections_content": { + "h1": 4, + "h2": 11, + "N1": 7, + "N2": 14, + "vocabulary": 15, + "length": 21, + "calculated_length": 46.053747805010275, + "volume": 82.0447025077789, + "difficulty": 2.5454545454545454, + "effort": 208.84106092889172, + "time": 11.602281162716206, + "bugs": 0.02734823416925963 + }, + "_make_empty_content": { + "h1": 1, + "h2": 4, + "N1": 3, + "N2": 6, + "vocabulary": 5, + "length": 9, + "calculated_length": 8.0, + "volume": 20.89735285398626, + "difficulty": 0.75, + "effort": 15.673014640489694, + "time": 0.8707230355827608, + "bugs": 0.0069657842846620865 + }, + "_filter_detections_by_size": { + "h1": 3, + "h2": 12, + "N1": 8, + "N2": 16, + "vocabulary": 15, + "length": 24, + "calculated_length": 47.77443751081735, + "volume": 93.76537429460444, + "difficulty": 2.0, + "effort": 187.53074858920888, + "time": 10.418374921622716, + "bugs": 0.03125512476486815 + }, + "_filter_predictions_and_targets_by_size": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + } + } + }, + "src\\supervision\\metrics\\precision.py": { + "total": { + "h1": 16, + "h2": 127, + "N1": 92, + "N2": 177, + "vocabulary": 143, + "length": 269, + "calculated_length": 951.5629552200651, + "volume": 1926.0053895933866, + "difficulty": 11.149606299212598, + "effort": 21474.20182412784, + "time": 1193.0112124515465, + "bugs": 0.6420017965311289 + }, + "functions": { + "__init__": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "reset": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "update": { + "h1": 2, + "h2": 4, + "N1": 3, + "N2": 4, + "vocabulary": 6, + "length": 7, + "calculated_length": 10.0, + "volume": 18.094737505048094, + "difficulty": 1.0, + "effort": 18.094737505048094, + "time": 1.0052631947248942, + "bugs": 0.006031579168349364 + }, + "compute": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "_compute": { + "h1": 7, + "h2": 17, + "N1": 14, + "N2": 27, + "vocabulary": 24, + "length": 41, + "calculated_length": 89.13835275565901, + "volume": 187.98346252956745, + "difficulty": 5.5588235294117645, + "effort": 1044.9668946496543, + "time": 58.05371636942524, + "bugs": 0.06266115417652249 + }, + "_compute_precision_for_classes": { + "h1": 2, + "h2": 7, + "N1": 5, + "N2": 9, + "vocabulary": 9, + "length": 14, + "calculated_length": 21.651484454403228, + "volume": 44.37895002019238, + "difficulty": 1.2857142857142858, + "effort": 57.05865002596163, + "time": 3.169925001442313, + "bugs": 0.014792983340064125 + }, + "_match_detection_batch": { + "h1": 5, + "h2": 8, + "N1": 5, + "N2": 9, + "vocabulary": 13, + "length": 14, + "calculated_length": 35.60964047443681, + "volume": 51.80615605397529, + "difficulty": 2.8125, + "effort": 145.70481390180552, + "time": 8.09471188343364, + "bugs": 0.01726871868465843 + }, + "_compute_confusion_matrix": { + "h1": 2, + "h2": 8, + "N1": 5, + "N2": 10, + "vocabulary": 10, + "length": 15, + "calculated_length": 26.0, + "volume": 49.82892142331044, + "difficulty": 1.25, + "effort": 62.28615177913805, + "time": 3.4603417655076694, + "bugs": 0.016609640474436815 + }, + "_compute_precision": { + "h1": 5, + "h2": 8, + "N1": 5, + "N2": 8, + "vocabulary": 13, + "length": 13, + "calculated_length": 35.60964047443681, + "volume": 48.105716335834195, + "difficulty": 2.5, + "effort": 120.26429083958548, + "time": 6.681349491088082, + "bugs": 0.016035238778611398 + }, + "_detections_content": { + "h1": 4, + "h2": 11, + "N1": 7, + "N2": 14, + "vocabulary": 15, + "length": 21, + "calculated_length": 46.053747805010275, + "volume": 82.0447025077789, + "difficulty": 2.5454545454545454, + "effort": 208.84106092889172, + "time": 11.602281162716206, + "bugs": 0.02734823416925963 + }, + "_make_empty_content": { + "h1": 1, + "h2": 4, + "N1": 3, + "N2": 6, + "vocabulary": 5, + "length": 9, + "calculated_length": 8.0, + "volume": 20.89735285398626, + "difficulty": 0.75, + "effort": 15.673014640489694, + "time": 0.8707230355827608, + "bugs": 0.0069657842846620865 + }, + "_filter_detections_by_size": { + "h1": 3, + "h2": 12, + "N1": 8, + "N2": 16, + "vocabulary": 15, + "length": 24, + "calculated_length": 47.77443751081735, + "volume": 93.76537429460444, + "difficulty": 2.0, + "effort": 187.53074858920888, + "time": 10.418374921622716, + "bugs": 0.03125512476486815 + }, + "_filter_predictions_and_targets_by_size": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "precision_at_50": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "precision_at_75": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "__str__": { + "h1": 3, + "h2": 16, + "N1": 12, + "N2": 24, + "vocabulary": 19, + "length": 36, + "calculated_length": 68.75488750216347, + "volume": 152.92539048396907, + "difficulty": 2.25, + "effort": 344.0821285889304, + "time": 19.115673810496133, + "bugs": 0.050975130161323025 + }, + "to_pandas": { + "h1": 1, + "h2": 4, + "N1": 3, + "N2": 6, + "vocabulary": 5, + "length": 9, + "calculated_length": 8.0, + "volume": 20.89735285398626, + "difficulty": 0.75, + "effort": 15.673014640489694, + "time": 0.8707230355827608, + "bugs": 0.0069657842846620865 + }, + "plot": { + "h1": 4, + "h2": 26, + "N1": 19, + "N2": 38, + "vocabulary": 30, + "length": 57, + "calculated_length": 130.2114326716684, + "volume": 279.69276394968557, + "difficulty": 2.923076923076923, + "effort": 817.563463852927, + "time": 45.42019243627372, + "bugs": 0.09323092131656185 + } + } + }, + "src\\supervision\\metrics\\recall.py": { + "total": { + "h1": 15, + "h2": 118, + "N1": 85, + "N2": 163, + "vocabulary": 133, + "length": 248, + "calculated_length": 870.755238758825, + "volume": 1749.710044004295, + "difficulty": 10.360169491525424, + "effort": 18127.292616908904, + "time": 1007.0718120504947, + "bugs": 0.583236681334765 + }, + "functions": { + "__init__": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "reset": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "update": { + "h1": 2, + "h2": 4, + "N1": 3, + "N2": 4, + "vocabulary": 6, + "length": 7, + "calculated_length": 10.0, + "volume": 18.094737505048094, + "difficulty": 1.0, + "effort": 18.094737505048094, + "time": 1.0052631947248942, + "bugs": 0.006031579168349364 + }, + "compute": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "_compute": { + "h1": 4, + "h2": 10, + "N1": 8, + "N2": 15, + "vocabulary": 14, + "length": 23, + "calculated_length": 41.219280948873624, + "volume": 87.56916320732489, + "difficulty": 3.0, + "effort": 262.7074896219747, + "time": 14.59486053455415, + "bugs": 0.029189721069108297 + }, + "_compute_recall_for_classes": { + "h1": 2, + "h2": 5, + "N1": 4, + "N2": 7, + "vocabulary": 7, + "length": 11, + "calculated_length": 13.60964047443681, + "volume": 30.880904142633646, + "difficulty": 1.4, + "effort": 43.2332657996871, + "time": 2.401848099982617, + "bugs": 0.010293634714211216 + }, + "_match_detection_batch": { + "h1": 5, + "h2": 8, + "N1": 5, + "N2": 9, + "vocabulary": 13, + "length": 14, + "calculated_length": 35.60964047443681, + "volume": 51.80615605397529, + "difficulty": 2.8125, + "effort": 145.70481390180552, + "time": 8.09471188343364, + "bugs": 0.01726871868465843 + }, + "_compute_confusion_matrix": { + "h1": 2, + "h2": 8, + "N1": 5, + "N2": 10, + "vocabulary": 10, + "length": 15, + "calculated_length": 26.0, + "volume": 49.82892142331044, + "difficulty": 1.25, + "effort": 62.28615177913805, + "time": 3.4603417655076694, + "bugs": 0.016609640474436815 + }, + "_compute_recall": { + "h1": 5, + "h2": 8, + "N1": 5, + "N2": 8, + "vocabulary": 13, + "length": 13, + "calculated_length": 35.60964047443681, + "volume": 48.105716335834195, + "difficulty": 2.5, + "effort": 120.26429083958548, + "time": 6.681349491088082, + "bugs": 0.016035238778611398 + }, + "_detections_content": { + "h1": 4, + "h2": 11, + "N1": 7, + "N2": 14, + "vocabulary": 15, + "length": 21, + "calculated_length": 46.053747805010275, + "volume": 82.0447025077789, + "difficulty": 2.5454545454545454, + "effort": 208.84106092889172, + "time": 11.602281162716206, + "bugs": 0.02734823416925963 + }, + "_make_empty_content": { + "h1": 1, + "h2": 4, + "N1": 3, + "N2": 6, + "vocabulary": 5, + "length": 9, + "calculated_length": 8.0, + "volume": 20.89735285398626, + "difficulty": 0.75, + "effort": 15.673014640489694, + "time": 0.8707230355827608, + "bugs": 0.0069657842846620865 + }, + "_filter_detections_by_size": { + "h1": 3, + "h2": 12, + "N1": 8, + "N2": 16, + "vocabulary": 15, + "length": 24, + "calculated_length": 47.77443751081735, + "volume": 93.76537429460444, + "difficulty": 2.0, + "effort": 187.53074858920888, + "time": 10.418374921622716, + "bugs": 0.03125512476486815 + }, + "_filter_predictions_and_targets_by_size": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "recall_at_50": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "recall_at_75": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "__str__": { + "h1": 3, + "h2": 16, + "N1": 12, + "N2": 24, + "vocabulary": 19, + "length": 36, + "calculated_length": 68.75488750216347, + "volume": 152.92539048396907, + "difficulty": 2.25, + "effort": 344.0821285889304, + "time": 19.115673810496133, + "bugs": 0.050975130161323025 + }, + "to_pandas": { + "h1": 1, + "h2": 4, + "N1": 3, + "N2": 6, + "vocabulary": 5, + "length": 9, + "calculated_length": 8.0, + "volume": 20.89735285398626, + "difficulty": 0.75, + "effort": 15.673014640489694, + "time": 0.8707230355827608, + "bugs": 0.0069657842846620865 + }, + "plot": { + "h1": 4, + "h2": 26, + "N1": 19, + "N2": 38, + "vocabulary": 30, + "length": 57, + "calculated_length": 130.2114326716684, + "volume": 279.69276394968557, + "difficulty": 2.923076923076923, + "effort": 817.563463852927, + "time": 45.42019243627372, + "bugs": 0.09323092131656185 + } + } + }, + "src\\supervision\\metrics\\__init__.py": { + "total": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "functions": {} + }, + "src\\supervision\\metrics\\utils\\object_size.py": { + "total": { + "h1": 12, + "h2": 77, + "N1": 53, + "N2": 106, + "vocabulary": 89, + "length": 159, + "calculated_length": 525.5621136421613, + "volume": 1029.6416155236573, + "difficulty": 8.25974025974026, + "effort": 8504.572304844754, + "time": 472.4762391580419, + "bugs": 0.3432138718412191 + }, + "functions": { + "get_object_size_category": { + "h1": 1, + "h2": 4, + "N1": 3, + "N2": 6, + "vocabulary": 5, + "length": 9, + "calculated_length": 8.0, + "volume": 20.89735285398626, + "difficulty": 0.75, + "effort": 15.673014640489694, + "time": 0.8707230355827608, + "bugs": 0.0069657842846620865 + }, + "get_bbox_size_category": { + "h1": 7, + "h2": 17, + "N1": 11, + "N2": 22, + "vocabulary": 24, + "length": 33, + "calculated_length": 89.13835275565901, + "volume": 151.30376252379818, + "difficulty": 4.529411764705882, + "effort": 685.3170420195564, + "time": 38.07316900108647, + "bugs": 0.05043458750793273 + }, + "get_mask_size_category": { + "h1": 4, + "h2": 7, + "N1": 6, + "N2": 12, + "vocabulary": 11, + "length": 18, + "calculated_length": 27.651484454403228, + "volume": 62.26976913547136, + "difficulty": 3.4285714285714284, + "effort": 213.49635132161606, + "time": 11.860908406756447, + "bugs": 0.020756589711823786 + }, + "get_obb_size_category": { + "h1": 8, + "h2": 38, + "N1": 25, + "N2": 51, + "vocabulary": 46, + "length": 76, + "calculated_length": 223.42124551085624, + "volume": 419.790708660333, + "difficulty": 5.368421052631579, + "effort": 2253.6132780712614, + "time": 125.20073767062564, + "bugs": 0.139930236220111 + }, + "get_detection_size_category": { + "h1": 2, + "h2": 7, + "N1": 5, + "N2": 10, + "vocabulary": 9, + "length": 15, + "calculated_length": 21.651484454403228, + "volume": 47.548875021634686, + "difficulty": 1.4285714285714286, + "effort": 67.92696431662098, + "time": 3.7737202398122767, + "bugs": 0.01584962500721156 + } + } + }, + "src\\supervision\\metrics\\utils\\utils.py": { + "total": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "functions": { + "ensure_pandas_installed": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + } + } + }, + "src\\supervision\\metrics\\utils\\__init__.py": { + "total": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "functions": {} + }, + "src\\supervision\\tracker\\__init__.py": { + "total": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "functions": {} + }, + "src\\supervision\\tracker\\byte_tracker\\core.py": { + "total": { + "h1": 12, + "h2": 44, + "N1": 33, + "N2": 62, + "vocabulary": 56, + "length": 95, + "calculated_length": 283.234541228695, + "volume": 551.6987175954724, + "difficulty": 8.454545454545455, + "effort": 4664.361885125358, + "time": 259.13121584029767, + "bugs": 0.18389957253182415 + }, + "functions": { + "__init__": { + "h1": 3, + "h2": 6, + "N1": 3, + "N2": 6, + "vocabulary": 9, + "length": 9, + "calculated_length": 20.264662506490406, + "volume": 28.529325012980813, + "difficulty": 1.5, + "effort": 42.793987519471216, + "time": 2.377443751081734, + "bugs": 0.009509775004326938 + }, + "update_with_detections": { + "h1": 5, + "h2": 8, + "N1": 6, + "N2": 10, + "vocabulary": 13, + "length": 16, + "calculated_length": 35.60964047443681, + "volume": 59.207035490257475, + "difficulty": 3.125, + "effort": 185.0219859070546, + "time": 10.27899921705859, + "bugs": 0.019735678496752493 + }, + "reset": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "update_with_tensors": { + "h1": 6, + "h2": 17, + "N1": 16, + "N2": 30, + "vocabulary": 23, + "length": 46, + "calculated_length": 84.99664330558272, + "volume": 208.0838499786226, + "difficulty": 5.294117647058823, + "effort": 1101.6203822397667, + "time": 61.20113234665371, + "bugs": 0.06936128332620753 + }, + "joint_tracks": { + "h1": 2, + "h2": 4, + "N1": 2, + "N2": 4, + "vocabulary": 6, + "length": 6, + "calculated_length": 10.0, + "volume": 15.509775004326936, + "difficulty": 1.0, + "effort": 15.509775004326936, + "time": 0.861654166907052, + "bugs": 0.005169925001442312 + }, + "sub_tracks": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "remove_duplicate_tracks": { + "h1": 4, + "h2": 9, + "N1": 6, + "N2": 12, + "vocabulary": 13, + "length": 18, + "calculated_length": 36.52932501298081, + "volume": 66.60791492653966, + "difficulty": 2.6666666666666665, + "effort": 177.62110647077242, + "time": 9.867839248376246, + "bugs": 0.022202638308846556 + } + } + }, + "src\\supervision\\tracker\\byte_tracker\\kalman_filter.py": { + "total": { + "h1": 4, + "h2": 58, + "N1": 41, + "N2": 82, + "vocabulary": 62, + "length": 123, + "calculated_length": 347.76289771739914, + "volume": 732.3661461775857, + "difficulty": 2.8275862068965516, + "effort": 2070.828413329725, + "time": 115.0460229627625, + "bugs": 0.2441220487258619 + }, + "functions": { + "__init__": { + "h1": 3, + "h2": 6, + "N1": 6, + "N2": 12, + "vocabulary": 9, + "length": 18, + "calculated_length": 20.264662506490406, + "volume": 57.058650025961626, + "difficulty": 3.0, + "effort": 171.17595007788486, + "time": 9.509775004326936, + "bugs": 0.019019550008653876 + }, + "initiate": { + "h1": 1, + "h2": 16, + "N1": 12, + "N2": 24, + "vocabulary": 17, + "length": 36, + "calculated_length": 64.0, + "volume": 147.14866228501225, + "difficulty": 0.75, + "effort": 110.36149671375918, + "time": 6.13119426187551, + "bugs": 0.04904955409500408 + }, + "predict": { + "h1": 2, + "h2": 10, + "N1": 7, + "N2": 14, + "vocabulary": 12, + "length": 21, + "calculated_length": 35.219280948873624, + "volume": 75.28421251514429, + "difficulty": 1.4, + "effort": 105.397897521202, + "time": 5.855438751177889, + "bugs": 0.025094737505048096 + }, + "project": { + "h1": 2, + "h2": 6, + "N1": 4, + "N2": 8, + "vocabulary": 8, + "length": 12, + "calculated_length": 17.509775004326936, + "volume": 36.0, + "difficulty": 1.3333333333333333, + "effort": 48.0, + "time": 2.6666666666666665, + "bugs": 0.012 + }, + "multi_predict": { + "h1": 2, + "h2": 14, + "N1": 9, + "N2": 18, + "vocabulary": 16, + "length": 27, + "calculated_length": 55.30296890880645, + "volume": 108.0, + "difficulty": 1.2857142857142858, + "effort": 138.85714285714286, + "time": 7.714285714285714, + "bugs": 0.036 + }, + "update": { + "h1": 2, + "h2": 6, + "N1": 3, + "N2": 6, + "vocabulary": 8, + "length": 9, + "calculated_length": 17.509775004326936, + "volume": 27.0, + "difficulty": 1.0, + "effort": 27.0, + "time": 1.5, + "bugs": 0.009 + } + } + }, + "src\\supervision\\tracker\\byte_tracker\\matching.py": { + "total": { + "h1": 9, + "h2": 30, + "N1": 17, + "N2": 34, + "vocabulary": 39, + "length": 51, + "calculated_length": 175.7360428812364, + "volume": 269.55551316197466, + "difficulty": 5.1, + "effort": 1374.7331171260707, + "time": 76.37406206255949, + "bugs": 0.08985183772065822 + }, + "functions": { + "indices_to_matches": { + "h1": 2, + "h2": 6, + "N1": 3, + "N2": 6, + "vocabulary": 8, + "length": 9, + "calculated_length": 17.509775004326936, + "volume": 27.0, + "difficulty": 1.0, + "effort": 27.0, + "time": 1.5, + "bugs": 0.009 + }, + "linear_assignment": { + "h1": 3, + "h2": 5, + "N1": 3, + "N2": 6, + "vocabulary": 8, + "length": 9, + "calculated_length": 16.36452797660028, + "volume": 27.0, + "difficulty": 1.8, + "effort": 48.6, + "time": 2.7, + "bugs": 0.009 + }, + "iou_distance": { + "h1": 5, + "h2": 12, + "N1": 7, + "N2": 14, + "vocabulary": 17, + "length": 21, + "calculated_length": 54.62919048309069, + "volume": 85.83671966625714, + "difficulty": 2.9166666666666665, + "effort": 250.3570990265833, + "time": 13.908727723699073, + "bugs": 0.02861223988875238 + }, + "fuse_score": { + "h1": 3, + "h2": 7, + "N1": 4, + "N2": 8, + "vocabulary": 10, + "length": 12, + "calculated_length": 24.406371956566698, + "volume": 39.863137138648355, + "difficulty": 1.7142857142857142, + "effort": 68.33680652339717, + "time": 3.796489251299843, + "bugs": 0.013287712379549451 + } + } + }, + "src\\supervision\\tracker\\byte_tracker\\single_object_track.py": { + "total": { + "h1": 10, + "h2": 53, + "N1": 32, + "N2": 64, + "vocabulary": 63, + "length": 96, + "calculated_length": 336.79906504072324, + "volume": 573.818872655992, + "difficulty": 6.037735849056604, + "effort": 3464.566778300329, + "time": 192.47593212779606, + "bugs": 0.19127295755199733 + }, + "functions": { + "__init__": { + "h1": 1, + "h2": 4, + "N1": 3, + "N2": 6, + "vocabulary": 5, + "length": 9, + "calculated_length": 8.0, + "volume": 20.89735285398626, + "difficulty": 0.75, + "effort": 15.673014640489694, + "time": 0.8707230355827608, + "bugs": 0.0069657842846620865 + }, + "predict": { + "h1": 2, + "h2": 6, + "N1": 4, + "N2": 8, + "vocabulary": 8, + "length": 12, + "calculated_length": 17.509775004326936, + "volume": 36.0, + "difficulty": 1.3333333333333333, + "effort": 48.0, + "time": 2.6666666666666665, + "bugs": 0.012 + }, + "multi_predict": { + "h1": 3, + "h2": 7, + "N1": 4, + "N2": 8, + "vocabulary": 10, + "length": 12, + "calculated_length": 24.406371956566698, + "volume": 39.863137138648355, + "difficulty": 1.7142857142857142, + "effort": 68.33680652339717, + "time": 3.796489251299843, + "bugs": 0.013287712379549451 + }, + "activate": { + "h1": 1, + "h2": 3, + "N1": 2, + "N2": 4, + "vocabulary": 4, + "length": 6, + "calculated_length": 4.754887502163469, + "volume": 12.0, + "difficulty": 0.6666666666666666, + "effort": 8.0, + "time": 0.4444444444444444, + "bugs": 0.004 + }, + "re_activate": { + "h1": 1, + "h2": 4, + "N1": 3, + "N2": 6, + "vocabulary": 5, + "length": 9, + "calculated_length": 8.0, + "volume": 20.89735285398626, + "difficulty": 0.75, + "effort": 15.673014640489694, + "time": 0.8707230355827608, + "bugs": 0.0069657842846620865 + }, + "update": { + "h1": 3, + "h2": 9, + "N1": 6, + "N2": 12, + "vocabulary": 12, + "length": 18, + "calculated_length": 33.28421251514428, + "volume": 64.52932501298082, + "difficulty": 2.0, + "effort": 129.05865002596164, + "time": 7.169925001442313, + "bugs": 0.02150977500432694 + }, + "tlwh": { + "h1": 4, + "h2": 8, + "N1": 4, + "N2": 8, + "vocabulary": 12, + "length": 12, + "calculated_length": 32.0, + "volume": 43.01955000865388, + "difficulty": 2.0, + "effort": 86.03910001730776, + "time": 4.779950000961542, + "bugs": 0.014339850002884626 + }, + "tlbr": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "tlwh_to_xyah": { + "h1": 2, + "h2": 6, + "N1": 3, + "N2": 6, + "vocabulary": 8, + "length": 9, + "calculated_length": 17.509775004326936, + "volume": 27.0, + "difficulty": 1.0, + "effort": 27.0, + "time": 1.5, + "bugs": 0.009 + }, + "to_xyah": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "tlbr_to_tlwh": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "tlwh_to_tlbr": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "__repr__": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + } + } + }, + "src\\supervision\\tracker\\byte_tracker\\utils.py": { + "total": { + "h1": 3, + "h2": 5, + "N1": 3, + "N2": 5, + "vocabulary": 8, + "length": 8, + "calculated_length": 16.36452797660028, + "volume": 24.0, + "difficulty": 1.5, + "effort": 36.0, + "time": 2.0, + "bugs": 0.008 + }, + "functions": { + "__init__": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "reset": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "new_id": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "NO_ID": { + "h1": 1, + "h2": 1, + "N1": 1, + "N2": 1, + "vocabulary": 2, + "length": 2, + "calculated_length": 0.0, + "volume": 2.0, + "difficulty": 0.5, + "effort": 1.0, + "time": 0.05555555555555555, + "bugs": 0.0006666666666666666 + } + } + }, + "src\\supervision\\tracker\\byte_tracker\\__init__.py": { + "total": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "functions": {} + }, + "src\\supervision\\utils\\conversion.py": { + "total": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "functions": { + "ensure_cv2_image_for_class_method": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "ensure_cv2_image_for_annotation": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "ensure_cv2_image_for_standalone_function": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "ensure_pil_image_for_class_method": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "ensure_pil_image_for_annotation": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "ensure_cv2_image_for_processing": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "images_to_cv2": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "pillow_to_cv2": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "cv2_to_pillow": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + } + } + }, + "src\\supervision\\utils\\file.py": { + "total": { + "h1": 6, + "h2": 10, + "N1": 6, + "N2": 11, + "vocabulary": 16, + "length": 17, + "calculated_length": 48.72905595320056, + "volume": 68.0, + "difficulty": 3.3, + "effort": 224.39999999999998, + "time": 12.466666666666665, + "bugs": 0.02266666666666667 + }, + "functions": { + "default": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "list_files_with_extensions": { + "h1": 5, + "h2": 8, + "N1": 5, + "N2": 9, + "vocabulary": 13, + "length": 14, + "calculated_length": 35.60964047443681, + "volume": 51.80615605397529, + "difficulty": 2.8125, + "effort": 145.70481390180552, + "time": 8.09471188343364, + "bugs": 0.01726871868465843 + }, + "read_txt_file": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "save_text_file": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "read_json_file": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "save_json_file": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "read_yaml_file": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "save_yaml_file": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + } + } + }, + "src\\supervision\\utils\\image.py": { + "total": { + "h1": 16, + "h2": 130, + "N1": 93, + "N2": 177, + "vocabulary": 146, + "length": 270, + "calculated_length": 976.907815693699, + "volume": 1941.2526308976048, + "difficulty": 10.892307692307693, + "effort": 21144.720964238528, + "time": 1174.7067202354738, + "bugs": 0.6470842102992016 + }, + "functions": { + "crop_image": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "scale_image": { + "h1": 2, + "h2": 4, + "N1": 3, + "N2": 6, + "vocabulary": 6, + "length": 9, + "calculated_length": 10.0, + "volume": 23.264662506490403, + "difficulty": 1.5, + "effort": 34.89699375973561, + "time": 1.938721875540867, + "bugs": 0.007754887502163467 + }, + "resize_image": { + "h1": 3, + "h2": 8, + "N1": 5, + "N2": 10, + "vocabulary": 11, + "length": 15, + "calculated_length": 28.75488750216347, + "volume": 51.89147427955947, + "difficulty": 1.875, + "effort": 97.296514274174, + "time": 5.405361904120777, + "bugs": 0.01729715809318649 + }, + "letterbox_image": { + "h1": 2, + "h2": 13, + "N1": 8, + "N2": 16, + "vocabulary": 15, + "length": 24, + "calculated_length": 50.105716335834195, + "volume": 93.76537429460444, + "difficulty": 1.2307692307692308, + "effort": 115.40353759335932, + "time": 6.411307644075517, + "bugs": 0.03125512476486815 + }, + "overlay_image": { + "h1": 9, + "h2": 30, + "N1": 25, + "N2": 48, + "vocabulary": 39, + "length": 73, + "calculated_length": 175.7360428812364, + "volume": 385.83436197694414, + "difficulty": 7.2, + "effort": 2778.0074062339977, + "time": 154.33374479077764, + "bugs": 0.12861145399231472 + }, + "tint_image": { + "h1": 3, + "h2": 4, + "N1": 4, + "N2": 6, + "vocabulary": 7, + "length": 10, + "calculated_length": 12.75488750216347, + "volume": 28.07354922057604, + "difficulty": 2.25, + "effort": 63.16548574629609, + "time": 3.509193652572005, + "bugs": 0.009357849740192013 + }, + "grayscale_image": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "get_image_resolution_wh": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "__init__": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "__enter__": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "save_image": { + "h1": 2, + "h2": 4, + "N1": 2, + "N2": 4, + "vocabulary": 6, + "length": 6, + "calculated_length": 10.0, + "volume": 15.509775004326936, + "difficulty": 1.0, + "effort": 15.509775004326936, + "time": 0.861654166907052, + "bugs": 0.005169925001442312 + }, + "__exit__": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "create_tiles": { + "h1": 5, + "h2": 12, + "N1": 7, + "N2": 14, + "vocabulary": 17, + "length": 21, + "calculated_length": 54.62919048309069, + "volume": 85.83671966625714, + "difficulty": 2.9166666666666665, + "effort": 250.3570990265833, + "time": 13.908727723699073, + "bugs": 0.02861223988875238 + }, + "_negotiate_tiles_format": { + "h1": 2, + "h2": 4, + "N1": 2, + "N2": 4, + "vocabulary": 6, + "length": 6, + "calculated_length": 10.0, + "volume": 15.509775004326936, + "difficulty": 1.0, + "effort": 15.509775004326936, + "time": 0.861654166907052, + "bugs": 0.005169925001442312 + }, + "_calculate_aggregated_images_shape": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "_aggregate_images_shape": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "_establish_grid_size": { + "h1": 4, + "h2": 11, + "N1": 9, + "N2": 18, + "vocabulary": 15, + "length": 27, + "calculated_length": 46.053747805010275, + "volume": 105.48604608143, + "difficulty": 3.272727272727273, + "effort": 345.22705990286187, + "time": 19.179281105714548, + "bugs": 0.03516201536047667 + }, + "_negotiate_grid_size": { + "h1": 4, + "h2": 8, + "N1": 5, + "N2": 10, + "vocabulary": 12, + "length": 15, + "calculated_length": 32.0, + "volume": 53.77443751081735, + "difficulty": 2.5, + "effort": 134.43609377704337, + "time": 7.468671876502409, + "bugs": 0.017924812503605784 + }, + "_generate_tiles": { + "h1": 3, + "h2": 6, + "N1": 5, + "N2": 8, + "vocabulary": 9, + "length": 13, + "calculated_length": 20.264662506490406, + "volume": 41.20902501875006, + "difficulty": 2.0, + "effort": 82.41805003750012, + "time": 4.578780557638896, + "bugs": 0.013736341672916687 + }, + "_draw_texts": { + "h1": 1, + "h2": 4, + "N1": 3, + "N2": 6, + "vocabulary": 5, + "length": 9, + "calculated_length": 8.0, + "volume": 20.89735285398626, + "difficulty": 0.75, + "effort": 15.673014640489694, + "time": 0.8707230355827608, + "bugs": 0.0069657842846620865 + }, + "_prepare_default_titles_anchors": { + "h1": 4, + "h2": 9, + "N1": 6, + "N2": 12, + "vocabulary": 13, + "length": 18, + "calculated_length": 36.52932501298081, + "volume": 66.60791492653966, + "difficulty": 2.6666666666666665, + "effort": 177.62110647077242, + "time": 9.867839248376246, + "bugs": 0.022202638308846556 + }, + "_merge_tiles_elements": { + "h1": 2, + "h2": 6, + "N1": 5, + "N2": 8, + "vocabulary": 8, + "length": 13, + "calculated_length": 17.509775004326936, + "volume": 39.0, + "difficulty": 1.3333333333333333, + "effort": 52.0, + "time": 2.888888888888889, + "bugs": 0.013 + }, + "_generate_color_image": { + "h1": 2, + "h2": 3, + "N1": 2, + "N2": 3, + "vocabulary": 5, + "length": 5, + "calculated_length": 6.754887502163469, + "volume": 11.60964047443681, + "difficulty": 1.0, + "effort": 11.60964047443681, + "time": 0.6449800263576005, + "bugs": 0.0038698801581456034 + } + } + }, + "src\\supervision\\utils\\internal.py": { + "total": { + "h1": 6, + "h2": 15, + "N1": 9, + "N2": 15, + "vocabulary": 21, + "length": 24, + "calculated_length": 74.11313393845472, + "volume": 105.41561814669026, + "difficulty": 3.0, + "effort": 316.2468544400708, + "time": 17.569269691115046, + "bugs": 0.03513853938223009 + }, + "functions": { + "format_warning": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "warn_deprecated": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "deprecated_parameter": { + "h1": 2, + "h2": 4, + "N1": 2, + "N2": 4, + "vocabulary": 6, + "length": 6, + "calculated_length": 10.0, + "volume": 15.509775004326936, + "difficulty": 1.0, + "effort": 15.509775004326936, + "time": 0.861654166907052, + "bugs": 0.005169925001442312 + }, + "__init__": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "__get__": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "get_instance_variables": { + "h1": 3, + "h2": 7, + "N1": 5, + "N2": 7, + "vocabulary": 10, + "length": 12, + "calculated_length": 24.406371956566698, + "volume": 39.863137138648355, + "difficulty": 1.5, + "effort": 59.79470570797253, + "time": 3.321928094887363, + "bugs": 0.013287712379549451 + } + } + }, + "src\\supervision\\utils\\iterables.py": { + "total": { + "h1": 4, + "h2": 8, + "N1": 4, + "N2": 8, + "vocabulary": 12, + "length": 12, + "calculated_length": 32.0, + "volume": 43.01955000865388, + "difficulty": 2.0, + "effort": 86.03910001730776, + "time": 4.779950000961542, + "bugs": 0.014339850002884626 + }, + "functions": { + "create_batches": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "fill": { + "h1": 2, + "h2": 4, + "N1": 2, + "N2": 4, + "vocabulary": 6, + "length": 6, + "calculated_length": 10.0, + "volume": 15.509775004326936, + "difficulty": 1.0, + "effort": 15.509775004326936, + "time": 0.861654166907052, + "bugs": 0.005169925001442312 + }, + "find_duplicates": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + } + } + }, + "src\\supervision\\utils\\logger.py": { + "total": { + "h1": 3, + "h2": 5, + "N1": 3, + "N2": 5, + "vocabulary": 8, + "length": 8, + "calculated_length": 16.36452797660028, + "volume": 24.0, + "difficulty": 1.5, + "effort": 36.0, + "time": 2.0, + "bugs": 0.008 + }, + "functions": { + "_get_logger": { + "h1": 3, + "h2": 5, + "N1": 3, + "N2": 5, + "vocabulary": 8, + "length": 8, + "calculated_length": 16.36452797660028, + "volume": 24.0, + "difficulty": 1.5, + "effort": 36.0, + "time": 2.0, + "bugs": 0.008 + } + } + }, + "src\\supervision\\utils\\notebook.py": { + "total": { + "h1": 6, + "h2": 15, + "N1": 8, + "N2": 16, + "vocabulary": 21, + "length": 24, + "calculated_length": 74.11313393845472, + "volume": 105.41561814669026, + "difficulty": 3.2, + "effort": 337.32997806940887, + "time": 18.74055433718938, + "bugs": 0.03513853938223009 + }, + "functions": { + "plot_image": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "plot_images_grid": { + "h1": 6, + "h2": 13, + "N1": 7, + "N2": 14, + "vocabulary": 19, + "length": 21, + "calculated_length": 63.61549134016113, + "volume": 89.20647778231529, + "difficulty": 3.230769230769231, + "effort": 288.20554360440326, + "time": 16.011419089133515, + "bugs": 0.029735492594105097 + } + } + }, + "src\\supervision\\utils\\video.py": { + "total": { + "h1": 13, + "h2": 54, + "N1": 42, + "N2": 74, + "vocabulary": 67, + "length": 116, + "calculated_length": 358.86964145266154, + "volume": 703.6663460931015, + "difficulty": 8.907407407407407, + "effort": 6267.842823532997, + "time": 348.2134901962776, + "bugs": 0.2345554486977005 + }, + "functions": { + "from_video_path": { + "h1": 1, + "h2": 1, + "N1": 1, + "N2": 1, + "vocabulary": 2, + "length": 2, + "calculated_length": 0.0, + "volume": 2.0, + "difficulty": 0.5, + "effort": 1.0, + "time": 0.05555555555555555, + "bugs": 0.0006666666666666666 + }, + "resolution_wh": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "__init__": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "__enter__": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "write_frame": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "__exit__": { + "h1": 1, + "h2": 2, + "N1": 1, + "N2": 2, + "vocabulary": 3, + "length": 3, + "calculated_length": 2.0, + "volume": 4.754887502163469, + "difficulty": 0.5, + "effort": 2.3774437510817346, + "time": 0.1320802083934297, + "bugs": 0.0015849625007211565 + }, + "_mux_audio": { + "h1": 4, + "h2": 7, + "N1": 4, + "N2": 8, + "vocabulary": 11, + "length": 12, + "calculated_length": 27.651484454403228, + "volume": 41.51317942364757, + "difficulty": 2.2857142857142856, + "effort": 94.88726725405158, + "time": 5.27151484744731, + "bugs": 0.01383772647454919 + }, + "_validate_and_setup_video": { + "h1": 5, + "h2": 10, + "N1": 9, + "N2": 16, + "vocabulary": 15, + "length": 25, + "calculated_length": 44.82892142331043, + "volume": 97.67226489021297, + "difficulty": 4.0, + "effort": 390.6890595608519, + "time": 21.70494775338066, + "bugs": 0.03255742163007099 + }, + "get_video_frames_generator": { + "h1": 6, + "h2": 9, + "N1": 7, + "N2": 12, + "vocabulary": 15, + "length": 19, + "calculated_length": 44.039100017307746, + "volume": 74.23092131656186, + "difficulty": 4.0, + "effort": 296.92368526624745, + "time": 16.4957602925693, + "bugs": 0.024743640438853954 + }, + "process_video": { + "h1": 5, + "h2": 14, + "N1": 13, + "N2": 23, + "vocabulary": 19, + "length": 36, + "calculated_length": 64.91260938324326, + "volume": 152.92539048396907, + "difficulty": 4.107142857142857, + "effort": 628.0864252020158, + "time": 34.89369028900088, + "bugs": 0.050975130161323025 + }, + "fps": { + "h1": 5, + "h2": 7, + "N1": 5, + "N2": 8, + "vocabulary": 12, + "length": 13, + "calculated_length": 31.26112492884004, + "volume": 46.604512509375034, + "difficulty": 2.857142857142857, + "effort": 133.15575002678582, + "time": 7.397541668154768, + "bugs": 0.015534837503125011 + }, + "tick": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "reset": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + } + } + }, + "src\\supervision\\utils\\__init__.py": { + "total": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "functions": {} + }, + "src\\supervision\\validators\\__init__.py": { + "total": { + "h1": 11, + "h2": 113, + "N1": 65, + "N2": 122, + "vocabulary": 124, + "length": 187, + "calculated_length": 808.7339705579266, + "volume": 1300.4347100423458, + "difficulty": 5.938053097345133, + "effort": 7722.050357862072, + "time": 429.002797659004, + "bugs": 0.43347823668078195 + }, + "functions": { + "_validate_xyxy": { + "h1": 3, + "h2": 8, + "N1": 4, + "N2": 8, + "vocabulary": 11, + "length": 12, + "calculated_length": 28.75488750216347, + "volume": 41.51317942364757, + "difficulty": 1.5, + "effort": 62.26976913547136, + "time": 3.4594316186372978, + "bugs": 0.01383772647454919 + }, + "validate_xyxy": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "_validate_mask": { + "h1": 6, + "h2": 14, + "N1": 8, + "N2": 15, + "vocabulary": 20, + "length": 23, + "calculated_length": 68.81274391313339, + "volume": 99.40434618240934, + "difficulty": 3.2142857142857144, + "effort": 319.51396987203003, + "time": 17.75077610400167, + "bugs": 0.033134782060803114 + }, + "validate_mask": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "_validate_class_id": { + "h1": 5, + "h2": 9, + "N1": 5, + "N2": 9, + "vocabulary": 14, + "length": 14, + "calculated_length": 40.13896548741762, + "volume": 53.30296890880645, + "difficulty": 2.5, + "effort": 133.25742227201613, + "time": 7.403190126223119, + "bugs": 0.017767656302935482 + }, + "validate_class_id": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "_validate_confidence": { + "h1": 5, + "h2": 9, + "N1": 5, + "N2": 9, + "vocabulary": 14, + "length": 14, + "calculated_length": 40.13896548741762, + "volume": 53.30296890880645, + "difficulty": 2.5, + "effort": 133.25742227201613, + "time": 7.403190126223119, + "bugs": 0.017767656302935482 + }, + "validate_confidence": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "_validate_keypoint_confidence": { + "h1": 6, + "h2": 14, + "N1": 8, + "N2": 15, + "vocabulary": 20, + "length": 23, + "calculated_length": 68.81274391313339, + "volume": 99.40434618240934, + "difficulty": 3.2142857142857144, + "effort": 319.51396987203003, + "time": 17.75077610400167, + "bugs": 0.033134782060803114 + }, + "validate_key_point_confidence": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "validate_keypoint_confidence": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "_validate_tracker_id": { + "h1": 5, + "h2": 9, + "N1": 5, + "N2": 9, + "vocabulary": 14, + "length": 14, + "calculated_length": 40.13896548741762, + "volume": 53.30296890880645, + "difficulty": 2.5, + "effort": 133.25742227201613, + "time": 7.403190126223119, + "bugs": 0.017767656302935482 + }, + "validate_tracker_id": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "_validate_data": { + "h1": 4, + "h2": 10, + "N1": 7, + "N2": 14, + "vocabulary": 14, + "length": 21, + "calculated_length": 41.219280948873624, + "volume": 79.95445336320968, + "difficulty": 2.8, + "effort": 223.8724694169871, + "time": 12.437359412054839, + "bugs": 0.026651484454403226 + }, + "validate_data": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "_validate_xy": { + "h1": 4, + "h2": 8, + "N1": 4, + "N2": 8, + "vocabulary": 12, + "length": 12, + "calculated_length": 32.0, + "volume": 43.01955000865388, + "difficulty": 2.0, + "effort": 86.03910001730776, + "time": 4.779950000961542, + "bugs": 0.014339850002884626 + }, + "validate_xy": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "_validate_visible": { + "h1": 6, + "h2": 14, + "N1": 8, + "N2": 15, + "vocabulary": 20, + "length": 23, + "calculated_length": 68.81274391313339, + "volume": 99.40434618240934, + "difficulty": 3.2142857142857144, + "effort": 319.51396987203003, + "time": 17.75077610400167, + "bugs": 0.033134782060803114 + }, + "_validate_detections_fields": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "validate_detections_fields": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "_validate_keypoints_fields": { + "h1": 2, + "h2": 5, + "N1": 3, + "N2": 6, + "vocabulary": 7, + "length": 9, + "calculated_length": 13.60964047443681, + "volume": 25.26619429851844, + "difficulty": 1.2, + "effort": 30.319433158222125, + "time": 1.6844129532345624, + "bugs": 0.008422064766172813 + }, + "validate_key_points_fields": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "validate_keypoints_fields": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + }, + "_validate_resolution": { + "h1": 5, + "h2": 13, + "N1": 8, + "N2": 14, + "vocabulary": 18, + "length": 22, + "calculated_length": 59.715356810271004, + "volume": 91.73835003173087, + "difficulty": 2.6923076923076925, + "effort": 246.98786547004468, + "time": 13.721548081669148, + "bugs": 0.030579450010576957 + }, + "validate_resolution": { + "h1": 0, + "h2": 0, + "N1": 0, + "N2": 0, + "vocabulary": 0, + "length": 0, + "calculated_length": 0, + "volume": 0, + "difficulty": 0, + "effort": 0, + "time": 0.0, + "bugs": 0.0 + } + } + } +} \ No newline at end of file diff --git a/metrics-before-radon/hal_por_arquivo_antes.csv b/metrics-before-radon/hal_por_arquivo_antes.csv new file mode 100644 index 0000000000..4aa930ff4c --- /dev/null +++ b/metrics-before-radon/hal_por_arquivo_antes.csv @@ -0,0 +1,81 @@ +arquivo,escopo,nome,h1,h2,N1,N2,vocabulary,length,calculated_length,volume,difficulty,effort,time,bugs +src/supervision/config.py,arquivo,,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/annotators/base.py,arquivo,,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/annotators/__init__.py,arquivo,,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/assets/list.py,arquivo,,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/assets/__init__.py,arquivo,,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/classification/__init__.py,arquivo,,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/dataset/__init__.py,arquivo,,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/dataset/formats/__init__.py,arquivo,,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/__init__.py,arquivo,,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/tools/__init__.py,arquivo,,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/utils/__init__.py,arquivo,,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/draw/base.py,arquivo,,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/draw/__init__.py,arquivo,,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/geometry/__init__.py,arquivo,,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/keypoint/annotators.py,arquivo,,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/keypoint/core.py,arquivo,,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/keypoint/__init__.py,arquivo,,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/key_points/skeletons.py,arquivo,,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/key_points/__init__.py,arquivo,,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/core.py,arquivo,,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/__init__.py,arquivo,,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/utils/utils.py,arquivo,,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/utils/__init__.py,arquivo,,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/tracker/__init__.py,arquivo,,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/tracker/byte_tracker/__init__.py,arquivo,,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/utils/conversion.py,arquivo,,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/utils/__init__.py,arquivo,,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/__init__.py,arquivo,,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/tracker/byte_tracker/utils.py,arquivo,,3,5,3,5,8,8,16.3645,24.0,1.5,36.0,2.0,0.008 +src/supervision/utils/logger.py,arquivo,,3,5,3,5,8,8,16.3645,24.0,1.5,36.0,2.0,0.008 +src/supervision/assets/downloader.py,arquivo,,3,7,5,7,10,12,24.4064,39.8631,1.5,59.7947,3.3219,0.0133 +src/supervision/utils/iterables.py,arquivo,,4,8,4,8,12,12,32.0,43.0196,2.0,86.0391,4.78,0.0143 +src/supervision/geometry/utils.py,arquivo,,4,10,6,11,14,17,41.2193,64.725,2.2,142.3951,7.9108,0.0216 +src/supervision/utils/file.py,arquivo,,6,10,6,11,16,17,48.7291,68.0,3.3,224.4,12.4667,0.0227 +src/supervision/utils/internal.py,arquivo,,6,15,9,15,21,24,74.1131,105.4156,3.0,316.2469,17.5693,0.0351 +src/supervision/detection/tools/json_sink.py,arquivo,,5,15,9,17,20,26,70.213,112.3701,2.8333,318.382,17.6879,0.0375 +src/supervision/utils/notebook.py,arquivo,,6,15,8,16,21,24,74.1131,105.4156,3.2,337.33,18.7406,0.0351 +src/supervision/detection/tools/transformers.py,arquivo,,4,15,10,20,19,30,66.6034,127.4378,2.6667,339.8342,18.8797,0.0425 +src/supervision/classification/core.py,arquivo,,7,22,13,22,29,35,117.759,170.0293,3.5,595.1027,33.0613,0.0567 +src/supervision/detection/tools/smoother.py,arquivo,,6,19,12,24,25,36,96.2204,167.1788,3.7895,633.5197,35.1955,0.0557 +src/supervision/dataset/utils.py,arquivo,,8,21,11,22,29,33,116.2387,160.3134,4.1905,671.7894,37.3216,0.0534 +src/supervision/detection/tools/csv_sink.py,arquivo,,7,23,15,27,30,42,123.6934,206.0894,4.1087,846.7586,47.0421,0.0687 +src/supervision/detection/utils/vlms.py,arquivo,,7,20,16,31,27,47,106.09,223.4797,5.425,1212.3774,67.3543,0.0745 +src/supervision/detection/tools/polygon_zone.py,arquivo,,8,23,16,31,31,47,128.0419,232.8472,5.3913,1255.3503,69.7417,0.0776 +src/supervision/tracker/byte_tracker/matching.py,arquivo,,9,30,17,34,39,51,175.736,269.5555,5.1,1374.7331,76.3741,0.0899 +src/supervision/dataset/formats/pascal_voc.py,arquivo,,8,33,20,38,41,58,190.465,310.738,4.6061,1431.2781,79.5155,0.1036 +src/supervision/geometry/core.py,arquivo,,5,40,28,56,45,84,224.4868,461.3157,3.5,1614.6048,89.7003,0.1538 +src/supervision/tracker/byte_tracker/kalman_filter.py,arquivo,,4,58,41,82,62,123,347.7629,732.3661,2.8276,2070.8284,115.046,0.2441 +src/supervision/detection/utils/polygons.py,arquivo,,10,26,20,40,36,60,155.4307,310.1955,7.6923,2386.1192,132.5622,0.1034 +src/supervision/tracker/byte_tracker/single_object_track.py,arquivo,,10,53,32,64,63,96,336.7991,573.8189,6.0377,3464.5668,192.4759,0.1913 +src/supervision/dataset/core.py,arquivo,,9,65,43,81,74,124,419.9832,769.9722,5.6077,4317.7673,239.876,0.2567 +src/supervision/dataset/formats/coco.py,arquivo,,15,49,30,56,64,86,333.7241,516.0,8.5714,4422.8571,245.7143,0.172 +src/supervision/tracker/byte_tracker/core.py,arquivo,,12,44,33,62,56,95,283.2345,551.6987,8.4545,4664.3619,259.1312,0.1839 +src/supervision/utils/video.py,arquivo,,13,54,42,74,67,116,358.8696,703.6663,8.9074,6267.8428,348.2135,0.2346 +src/supervision/dataset/formats/yolo.py,arquivo,,14,71,48,87,85,135,489.935,865.2678,8.5775,7421.8039,412.3224,0.2884 +src/supervision/validators/__init__.py,arquivo,,11,113,65,122,124,187,808.734,1300.4347,5.9381,7722.0504,429.0028,0.4335 +src/supervision/metrics/utils/object_size.py,arquivo,,12,77,53,106,89,159,525.5621,1029.6416,8.2597,8504.5723,472.4762,0.3432 +src/supervision/detection/utils/boxes.py,arquivo,,12,77,60,105,89,165,525.5621,1068.496,8.1818,8742.2401,485.68,0.3562 +src/supervision/draw/color.py,arquivo,,13,78,60,110,91,170,538.3671,1106.3251,9.1667,10141.3133,563.4063,0.3688 +src/supervision/detection/utils/masks.py,arquivo,,14,87,61,117,101,178,613.8391,1185.1616,9.4138,11156.8665,619.8259,0.3951 +src/supervision/detection/utils/internal.py,arquivo,,15,96,65,121,111,186,690.7598,1263.7614,9.4531,11946.494,663.6941,0.4213 +src/supervision/draw/utils.py,arquivo,,13,57,57,109,70,166,380.5804,1017.461,12.4298,12646.8615,702.6034,0.3392 +src/supervision/detection/tools/inference_slicer.py,arquivo,,15,99,66,127,114,193,714.9097,1318.7478,9.6212,12687.9521,704.8862,0.4396 +src/supervision/detection/utils/converters.py,arquivo,,17,116,77,148,133,225,865.0127,1587.4385,10.8448,17215.4974,956.4165,0.5291 +src/supervision/metrics/recall.py,arquivo,,15,118,85,163,133,248,870.7552,1749.71,10.3602,18127.2926,1007.0718,0.5832 +src/supervision/metrics/mean_average_recall.py,arquivo,,16,117,85,163,133,248,867.8327,1749.71,11.1453,19501.0419,1083.3912,0.5832 +src/supervision/utils/image.py,arquivo,,16,130,93,177,146,270,976.9078,1941.2526,10.8923,21144.721,1174.7067,0.6471 +src/supervision/metrics/precision.py,arquivo,,16,127,92,177,143,269,951.563,1926.0054,11.1496,21474.2018,1193.0112,0.642 +src/supervision/metrics/f1_score.py,arquivo,,16,132,96,185,148,281,993.86,2025.8564,11.2121,22714.1475,1261.8971,0.6753 +src/supervision/metrics/detection.py,arquivo,,18,137,96,180,155,276,1047.489,2008.2103,11.8248,23746.7208,1319.2623,0.6694 +src/supervision/key_points/core.py,arquivo,,14,153,115,214,167,329,1163.6833,2429.2387,9.7908,23784.3111,1321.3506,0.8097 +src/supervision/detection/vlm.py,arquivo,,16,149,112,207,165,319,1139.6561,2349.8568,11.1141,26116.5291,1450.9183,0.7833 +src/supervision/key_points/annotators.py,arquivo,,18,121,97,180,139,277,912.2411,1971.9467,13.3884,26401.2696,1466.7372,0.6573 +src/supervision/annotators/utils.py,arquivo,,18,135,110,213,153,323,1030.4288,2344.1363,14.2,33286.7351,1849.2631,0.7814 +src/supervision/detection/line_zone.py,arquivo,,19,146,116,219,165,335,1130.425,2467.7179,14.25,35164.9807,1953.61,0.8226 +src/supervision/detection/core.py,arquivo,,18,263,181,347,281,528,2189.2943,4294.9771,11.8745,51000.8117,2833.3784,1.4317 +src/supervision/detection/compact_mask.py,arquivo,,19,207,169,324,226,493,1673.2624,3855.3482,14.8696,57327.3519,3184.8529,1.2851 +src/supervision/detection/utils/iou_and_nms.py,arquivo,,20,337,218,417,357,635,2916.0944,5384.6605,12.3739,66629.1815,3701.6212,1.7949 +src/supervision/metrics/mean_average_precision.py,arquivo,,21,291,224,404,312,628,2474.0374,5203.2326,14.5773,75849.1844,4213.8436,1.7344 +src/supervision/annotators/core.py,arquivo,,22,382,434,825,404,1259,3374.6853,10900.6883,23.7565,258962.6857,14386.8159,3.6336 diff --git a/metrics-before-radon/hal_por_funcao_antes.csv b/metrics-before-radon/hal_por_funcao_antes.csv new file mode 100644 index 0000000000..1fdfcada0c --- /dev/null +++ b/metrics-before-radon/hal_por_funcao_antes.csv @@ -0,0 +1,636 @@ +arquivo,escopo,nome,h1,h2,N1,N2,vocabulary,length,calculated_length,volume,difficulty,effort,time,bugs +src/supervision/annotators/base.py,funcao,annotate,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/annotators/core.py,funcao,_normalize_color_input,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/annotators/core.py,funcao,__init__,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/annotators/core.py,funcao,_adjust_labels_in_frame,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/annotators/core.py,funcao,annotate,7,25,19,35,32,54,135.7479,270.0,4.9,1323.0,73.5,0.09 +src/supervision/annotators/core.py,funcao,_paint_masks_by_area,4,12,11,22,16,33,51.0196,132.0,3.6667,484.0,26.8889,0.044 +src/supervision/annotators/core.py,funcao,_get_label_properties,5,20,14,27,25,41,98.0482,190.3981,3.375,642.5936,35.6996,0.0635 +src/supervision/annotators/core.py,funcao,_draw_labels,6,24,22,43,30,65,125.5489,318.9479,5.375,1714.3449,95.2414,0.1063 +src/supervision/annotators/core.py,funcao,draw_rounded_rectangle,4,8,17,32,12,49,32.0,175.6632,8.0,1405.3053,78.0725,0.0586 +src/supervision/annotators/core.py,funcao,_load_font,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/annotators/core.py,funcao,_load_icon,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/annotators/core.py,funcao,calculate_border_coordinates,5,30,47,94,35,141,158.8164,723.2289,7.8333,5665.2931,314.7385,0.2411 +src/supervision/annotators/core.py,funcao,_validate_custom_values,4,10,7,11,14,18,41.2193,68.5324,2.2,150.7713,8.3762,0.0228 +src/supervision/annotators/core.py,funcao,validate_custom_values,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/annotators/core.py,funcao,calculate_crop_coordinates,5,30,47,94,35,141,158.8164,723.2289,7.8333,5665.2931,314.7385,0.2411 +src/supervision/annotators/core.py,funcao,_use_obb,4,13,9,17,17,26,56.1057,106.274,2.6154,277.9475,15.4415,0.0354 +src/supervision/annotators/core.py,funcao,_use_mask,4,13,9,17,17,26,56.1057,106.274,2.6154,277.9475,15.4415,0.0354 +src/supervision/annotators/core.py,funcao,_mask_from_xyxy,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/annotators/core.py,funcao,_mask_from_obb,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/annotators/core.py,funcao,_mask_from_mask,2,3,2,4,5,6,6.7549,13.9316,1.3333,18.5754,1.032,0.0046 +src/supervision/annotators/utils.py,funcao,list,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/annotators/utils.py,funcao,resolve_color_idx,4,11,7,14,15,21,46.0537,82.0447,2.5455,208.8411,11.6023,0.0273 +src/supervision/annotators/utils.py,funcao,resolve_text_background_xyxy,5,30,47,94,35,141,158.8164,723.2289,7.8333,5665.2931,314.7385,0.2411 +src/supervision/annotators/utils.py,funcao,get_color_by_index,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/annotators/utils.py,funcao,resolve_color,2,7,3,7,9,10,21.6515,31.6993,1.0,31.6993,1.7611,0.0106 +src/supervision/annotators/utils.py,funcao,wrap_text,5,13,8,14,18,22,59.7154,91.7384,2.6923,246.9879,13.7215,0.0306 +src/supervision/annotators/utils.py,funcao,_validate_labels,3,6,3,6,9,9,20.2647,28.5293,1.5,42.794,2.3774,0.0095 +src/supervision/annotators/utils.py,funcao,validate_labels,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/annotators/utils.py,funcao,get_labels_text,2,5,3,6,7,9,13.6096,25.2662,1.2,30.3194,1.6844,0.0084 +src/supervision/annotators/utils.py,funcao,snap_boxes,6,23,14,26,29,40,119.5517,194.3192,3.3913,658.9957,36.6109,0.0648 +src/supervision/annotators/utils.py,funcao,__init__,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/annotators/utils.py,funcao,put,7,12,9,17,19,26,62.671,110.4461,4.9583,547.6287,30.4238,0.0368 +src/supervision/annotators/utils.py,funcao,get,1,1,1,2,2,3,0,3.0,1.0,3.0,0.1667,0.001 +src/supervision/annotators/utils.py,funcao,hex_to_rgba,3,6,3,6,9,9,20.2647,28.5293,1.5,42.794,2.3774,0.0095 +src/supervision/annotators/utils.py,funcao,rgba_to_hex,4,8,5,8,12,13,32.0,46.6045,2.0,93.209,5.1783,0.0155 +src/supervision/annotators/utils.py,funcao,is_valid_hex,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/annotators/utils.py,funcao,calculate_dynamic_kernel_size,2,6,3,6,8,9,17.5098,27.0,1.0,27.0,1.5,0.009 +src/supervision/annotators/utils.py,funcao,calculate_dynamic_pixel_size,2,6,3,6,8,9,17.5098,27.0,1.0,27.0,1.5,0.009 +src/supervision/assets/downloader.py,funcao,is_md5_hash_matching,2,3,2,3,5,5,6.7549,11.6096,1.0,11.6096,0.645,0.0039 +src/supervision/assets/downloader.py,funcao,download_assets,2,4,3,4,6,7,10.0,18.0947,1.0,18.0947,1.0053,0.006 +src/supervision/assets/list.py,funcao,__new__,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/assets/list.py,funcao,list,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/classification/core.py,funcao,_validate_class_ids,3,5,3,5,8,8,16.3645,24.0,1.5,36.0,2.0,0.008 +src/supervision/classification/core.py,funcao,_validate_confidence,4,7,4,7,11,11,27.6515,38.0537,2.0,76.1075,4.2282,0.0127 +src/supervision/classification/core.py,funcao,__post_init__,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/classification/core.py,funcao,__len__,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/classification/core.py,funcao,from_clip,2,3,2,3,5,5,6.7549,11.6096,1.0,11.6096,0.645,0.0039 +src/supervision/classification/core.py,funcao,from_ultralytics,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/classification/core.py,funcao,from_timm,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/classification/core.py,funcao,get_top_k,2,3,2,3,5,5,6.7549,11.6096,1.0,11.6096,0.645,0.0039 +src/supervision/dataset/core.py,funcao,__len__,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/dataset/core.py,funcao,split,1,4,2,4,5,6,8.0,13.9316,0.5,6.9658,0.387,0.0046 +src/supervision/dataset/core.py,funcao,__init__,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/dataset/core.py,funcao,_get_image,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/dataset/core.py,funcao,__getitem__,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/dataset/core.py,funcao,__iter__,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/dataset/core.py,funcao,__eq__,3,7,6,10,10,16,24.4064,53.1508,2.1429,113.8947,6.3275,0.0177 +src/supervision/dataset/core.py,funcao,merge,6,15,9,16,21,25,74.1131,109.8079,3.2,351.3854,19.5214,0.0366 +src/supervision/dataset/core.py,funcao,as_pascal_voc,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/dataset/core.py,funcao,from_pascal_voc,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/dataset/core.py,funcao,from_yolo,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/dataset/core.py,funcao,as_yolo,4,14,8,17,18,25,61.303,104.2481,2.4286,253.174,14.0652,0.0347 +src/supervision/dataset/core.py,funcao,from_coco,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/dataset/core.py,funcao,as_coco,1,3,2,4,4,6,4.7549,12.0,0.6667,8.0,0.4444,0.004 +src/supervision/dataset/core.py,funcao,as_folder_structure,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/dataset/core.py,funcao,from_folder_structure,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/dataset/utils.py,funcao,mask_to_rle,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/dataset/utils.py,funcao,rle_to_mask,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/dataset/utils.py,funcao,approximate_mask_with_polygons,2,7,4,8,9,12,21.6515,38.0391,1.1429,43.4733,2.4152,0.0127 +src/supervision/dataset/utils.py,funcao,merge_class_lists,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/dataset/utils.py,funcao,build_class_index_mapping,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/dataset/utils.py,funcao,map_detections_class_id,3,6,3,6,9,9,20.2647,28.5293,1.5,42.794,2.3774,0.0095 +src/supervision/dataset/utils.py,funcao,save_dataset_images,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/dataset/utils.py,funcao,train_test_split,2,4,2,4,6,6,10.0,15.5098,1.0,15.5098,0.8617,0.0052 +src/supervision/dataset/formats/coco.py,funcao,coco_categories_to_classes,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/dataset/formats/coco.py,funcao,build_coco_class_index_mapping,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/dataset/formats/coco.py,funcao,classes_to_coco_categories,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/dataset/formats/coco.py,funcao,group_coco_annotations_by_image_id,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/dataset/formats/coco.py,funcao,coco_annotations_to_masks,4,7,5,7,11,12,27.6515,41.5132,2.0,83.0264,4.6126,0.0138 +src/supervision/dataset/formats/coco.py,funcao,coco_annotations_to_detections,2,3,2,3,5,5,6.7549,11.6096,1.0,11.6096,0.645,0.0039 +src/supervision/dataset/formats/coco.py,funcao,detections_to_coco_annotations,9,22,13,26,31,39,126.6368,193.2137,5.3182,1027.5454,57.0859,0.0644 +src/supervision/dataset/formats/coco.py,funcao,get_coco_class_index_mapping,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/dataset/formats/coco.py,funcao,load_coco_annotations,4,7,4,8,11,12,27.6515,41.5132,2.2857,94.8873,5.2715,0.0138 +src/supervision/dataset/formats/coco.py,funcao,_with_seg_mask,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/dataset/formats/coco.py,funcao,save_coco_annotations,3,6,4,8,9,12,20.2647,38.0391,2.0,76.0782,4.2266,0.0127 +src/supervision/dataset/formats/pascal_voc.py,funcao,object_to_pascal_voc,2,4,3,6,6,9,10.0,23.2647,1.5,34.897,1.9387,0.0078 +src/supervision/dataset/formats/pascal_voc.py,funcao,detections_to_pascal_voc,3,4,3,5,7,8,12.7549,22.4588,1.875,42.1103,2.3395,0.0075 +src/supervision/dataset/formats/pascal_voc.py,funcao,load_pascal_voc_annotations,2,3,2,3,5,5,6.7549,11.6096,1.0,11.6096,0.645,0.0039 +src/supervision/dataset/formats/pascal_voc.py,funcao,detections_from_xml_obj,5,11,6,12,16,18,49.6634,72.0,2.7273,196.3636,10.9091,0.024 +src/supervision/dataset/formats/pascal_voc.py,funcao,_with_poly_mask,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/dataset/formats/pascal_voc.py,funcao,parse_polygon_points,2,4,2,4,6,6,10.0,15.5098,1.0,15.5098,0.8617,0.0052 +src/supervision/dataset/formats/pascal_voc.py,funcao,_get_required_text,2,5,3,6,7,9,13.6096,25.2662,1.2,30.3194,1.6844,0.0084 +src/supervision/dataset/formats/yolo.py,funcao,_parse_box,3,13,8,16,16,24,52.8606,96.0,1.8462,177.2308,9.8462,0.032 +src/supervision/dataset/formats/yolo.py,funcao,_box_to_polygon,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/dataset/formats/yolo.py,funcao,_parse_polygon,1,1,1,1,2,2,0,2.0,0.5,1.0,0.0556,0.0007 +src/supervision/dataset/formats/yolo.py,funcao,_polygons_to_masks,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/dataset/formats/yolo.py,funcao,_with_seg_mask,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/dataset/formats/yolo.py,funcao,_extract_class_names,2,5,4,5,7,9,13.6096,25.2662,1.0,25.2662,1.4037,0.0084 +src/supervision/dataset/formats/yolo.py,funcao,_image_name_to_annotation_name,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/dataset/formats/yolo.py,funcao,yolo_annotations_to_detections,5,13,8,14,18,22,59.7154,91.7384,2.6923,246.9879,13.7215,0.0306 +src/supervision/dataset/formats/yolo.py,funcao,load_yolo_annotations,4,8,6,10,12,16,32.0,57.3594,2.5,143.3985,7.9666,0.0191 +src/supervision/dataset/formats/yolo.py,funcao,object_to_yolo,5,13,10,19,18,29,59.7154,120.9278,3.6538,441.8517,24.5473,0.0403 +src/supervision/dataset/formats/yolo.py,funcao,detections_to_yolo_annotations,7,14,9,18,21,27,72.9545,118.5926,4.5,533.6666,29.6481,0.0395 +src/supervision/dataset/formats/yolo.py,funcao,save_yolo_annotations,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/dataset/formats/yolo.py,funcao,save_data_yaml,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/compact_mask.py,funcao,_rle_area,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/compact_mask.py,funcao,_rle_split_cols,8,19,21,40,27,61,104.7106,290.0481,8.4211,2442.5106,135.695,0.0967 +src/supervision/detection/compact_mask.py,funcao,_rle_scale_col,6,14,13,24,20,37,68.8127,159.9113,5.1429,822.4012,45.689,0.0533 +src/supervision/detection/compact_mask.py,funcao,_rle_join_cols,8,16,12,20,24,32,88.0,146.7188,5.0,733.594,40.7552,0.0489 +src/supervision/detection/compact_mask.py,funcao,_rle_resize,6,25,16,32,31,48,131.6062,237.8014,3.84,913.1575,50.731,0.0793 +src/supervision/detection/compact_mask.py,funcao,_resize_crop,4,10,5,10,14,15,41.2193,57.1103,2.0,114.2206,6.3456,0.019 +src/supervision/detection/compact_mask.py,funcao,__init__,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/compact_mask.py,funcao,from_dense,5,13,14,28,18,42,59.7154,175.1369,5.3846,943.0446,52.3914,0.0584 +src/supervision/detection/compact_mask.py,funcao,to_dense,1,4,2,4,5,6,8.0,13.9316,0.5,6.9658,0.387,0.0046 +src/supervision/detection/compact_mask.py,funcao,crop,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/compact_mask.py,funcao,__len__,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/compact_mask.py,funcao,__iter__,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/compact_mask.py,funcao,shape,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/compact_mask.py,funcao,offsets,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/compact_mask.py,funcao,bbox_xyxy,3,9,5,10,12,15,33.2842,53.7744,1.6667,89.6241,4.9791,0.0179 +src/supervision/detection/compact_mask.py,funcao,dtype,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/compact_mask.py,funcao,area,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/compact_mask.py,funcao,sum,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/detection/compact_mask.py,funcao,__getitem__,3,10,5,10,13,15,37.9742,55.5066,1.5,83.2599,4.6255,0.0185 +src/supervision/detection/compact_mask.py,funcao,__array__,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/detection/compact_mask.py,funcao,__eq__,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/compact_mask.py,funcao,merge,2,3,2,3,5,5,6.7549,11.6096,1.0,11.6096,0.645,0.0039 +src/supervision/detection/compact_mask.py,funcao,repack,5,12,12,21,17,33,54.6292,134.8863,4.375,590.1274,32.7849,0.045 +src/supervision/detection/compact_mask.py,funcao,with_offset,10,37,35,68,47,103,225.9691,572.1227,9.1892,5257.3433,292.0746,0.1907 +src/supervision/detection/compact_mask.py,funcao,resize,8,31,25,50,39,75,177.5801,396.4052,6.4516,2557.4527,142.0807,0.1321 +src/supervision/detection/core.py,funcao,__post_init__,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/core.py,funcao,__len__,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/core.py,funcao,__iter__,1,5,4,8,6,12,11.6096,31.0196,0.8,24.8156,1.3786,0.0103 +src/supervision/detection/core.py,funcao,__eq__,1,1,1,1,2,2,0,2.0,0.5,1.0,0.0556,0.0007 +src/supervision/detection/core.py,funcao,from_yolov5,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/core.py,funcao,from_ultralytics,3,10,8,16,13,24,37.9742,88.8106,2.4,213.1453,11.8414,0.0296 +src/supervision/detection/core.py,funcao,from_yolo_nas,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/detection/core.py,funcao,from_tensorflow,1,4,2,4,5,6,8.0,13.9316,0.5,6.9658,0.387,0.0046 +src/supervision/detection/core.py,funcao,from_deepsparse,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/detection/core.py,funcao,from_mmdetection,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/detection/core.py,funcao,from_transformers,3,11,7,14,14,21,42.8086,79.9545,1.9091,152.6403,8.48,0.0267 +src/supervision/detection/core.py,funcao,from_detectron2,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/core.py,funcao,from_inference,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/detection/core.py,funcao,from_sam,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/detection/core.py,funcao,from_sam3,4,13,11,18,17,29,56.1057,118.5364,2.7692,328.2547,18.2364,0.0395 +src/supervision/detection/core.py,funcao,from_azure_analyze_image,7,14,10,20,21,30,72.9545,131.7695,5.0,658.8476,36.6026,0.0439 +src/supervision/detection/core.py,funcao,from_paddledet,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/detection/core.py,funcao,from_lmm,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/core.py,funcao,from_vlm,3,16,12,24,19,36,68.7549,152.9254,2.25,344.0821,19.1157,0.051 +src/supervision/detection/core.py,funcao,from_easyocr,3,6,3,6,9,9,20.2647,28.5293,1.5,42.794,2.3774,0.0095 +src/supervision/detection/core.py,funcao,from_ncnn,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/detection/core.py,funcao,empty,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/core.py,funcao,is_empty,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/detection/core.py,funcao,merge,3,8,5,9,11,14,28.7549,48.432,1.6875,81.7291,4.5405,0.0161 +src/supervision/detection/core.py,funcao,get_anchors_coordinates,4,32,23,46,36,69,168.0,356.7248,2.875,1025.5839,56.9769,0.1189 +src/supervision/detection/core.py,funcao,__getitem__,2,7,5,10,9,15,21.6515,47.5489,1.4286,67.927,3.7737,0.0158 +src/supervision/detection/core.py,funcao,__setitem__,1,1,1,1,2,2,0,2.0,0.5,1.0,0.0556,0.0007 +src/supervision/detection/core.py,funcao,area,2,4,2,4,6,6,10.0,15.5098,1.0,15.5098,0.8617,0.0052 +src/supervision/detection/core.py,funcao,box_area,2,6,3,6,8,9,17.5098,27.0,1.0,27.0,1.5,0.009 +src/supervision/detection/core.py,funcao,box_aspect_ratio,2,6,3,6,8,9,17.5098,27.0,1.0,27.0,1.5,0.009 +src/supervision/detection/core.py,funcao,with_nms,4,9,8,13,13,21,36.5293,77.7092,2.8889,224.4933,12.4719,0.0259 +src/supervision/detection/core.py,funcao,with_nmm,4,9,8,13,13,21,36.5293,77.7092,2.8889,224.4933,12.4719,0.0259 +src/supervision/detection/core.py,funcao,_merge_obb_corners,3,7,5,8,10,13,24.4064,43.1851,1.7143,74.0315,4.1129,0.0144 +src/supervision/detection/core.py,funcao,_merge_detection_group,9,22,13,26,31,39,126.6368,193.2137,5.3182,1027.5454,57.0859,0.0644 +src/supervision/detection/core.py,funcao,merge_inner_detection_object_pair,10,36,26,52,46,78,219.3366,430.8378,7.2222,3111.6066,172.867,0.1436 +src/supervision/detection/core.py,funcao,merge_inner_detections_objects,3,6,4,8,9,12,20.2647,38.0391,2.0,76.0782,4.2266,0.0127 +src/supervision/detection/core.py,funcao,merge_inner_detections_objects_without_iou,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/core.py,funcao,_validate_fields_both_defined_or_none,2,5,3,6,7,9,13.6096,25.2662,1.2,30.3194,1.6844,0.0084 +src/supervision/detection/core.py,funcao,validate_fields_both_defined_or_none,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/line_zone.py,funcao,__init__,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/detection/line_zone.py,funcao,in_count,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/line_zone.py,funcao,out_count,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/line_zone.py,funcao,in_count_per_class,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/line_zone.py,funcao,out_count_per_class,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/line_zone.py,funcao,trigger,10,17,11,21,27,32,102.7061,152.1564,6.1765,939.7895,52.2105,0.0507 +src/supervision/detection/line_zone.py,funcao,_calculate_region_of_interest_limits,5,9,10,19,14,29,40.139,110.4133,5.2778,582.7368,32.3743,0.0368 +src/supervision/detection/line_zone.py,funcao,_compute_anchor_sides,5,10,7,13,15,20,44.8289,78.1378,3.25,253.9479,14.1082,0.026 +src/supervision/detection/line_zone.py,funcao,_update_class_id_to_name,3,5,5,10,8,15,16.3645,45.0,3.0,135.0,7.5,0.015 +src/supervision/detection/line_zone.py,funcao,annotate,7,32,28,54,39,82,179.6515,433.403,5.9062,2559.7864,142.2104,0.1445 +src/supervision/detection/line_zone.py,funcao,_get_line_angle,5,10,8,16,15,24,44.8289,93.7654,4.0,375.0615,20.8367,0.0313 +src/supervision/detection/line_zone.py,funcao,_calculate_anchor_in_frame,5,30,20,40,35,60,158.8164,307.757,3.3333,1025.8566,56.992,0.1026 +src/supervision/detection/line_zone.py,funcao,_draw_basic_label,3,5,4,8,8,12,16.3645,36.0,2.4,86.4,4.8,0.012 +src/supervision/detection/line_zone.py,funcao,_draw_oriented_label,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/detection/line_zone.py,funcao,_make_label_image,6,13,10,17,19,27,63.6155,114.694,3.9231,449.9536,24.9974,0.0382 +src/supervision/detection/vlm.py,funcao,list,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/vlm.py,funcao,from_value,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/vlm.py,funcao,_validate_vlm_parameters,2,4,3,5,6,8,10.0,20.6797,1.25,25.8496,1.4361,0.0069 +src/supervision/detection/vlm.py,funcao,validate_vlm_parameters,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/vlm.py,funcao,from_paligemma,6,10,6,12,16,18,48.7291,72.0,3.6,259.2,14.4,0.024 +src/supervision/detection/vlm.py,funcao,recover_truncated_qwen_2_5_vl_response,3,11,12,20,14,32,42.8086,121.8354,2.7273,332.2782,18.4599,0.0406 +src/supervision/detection/vlm.py,funcao,from_qwen_2_5_vl,12,23,18,33,35,51,147.0615,261.5934,8.6087,2251.9783,125.1099,0.0872 +src/supervision/detection/vlm.py,funcao,from_qwen_3_vl,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/vlm.py,funcao,from_deepseek_vl_2,5,16,11,22,21,33,75.6096,144.9465,3.4375,498.2535,27.6808,0.0483 +src/supervision/detection/vlm.py,funcao,from_florence_2,7,18,14,26,25,40,94.7101,185.7542,5.0556,939.0909,52.1717,0.0619 +src/supervision/detection/vlm.py,funcao,from_google_gemini_2_0,7,17,10,19,24,29,89.1384,132.9639,3.9118,520.1235,28.8958,0.0443 +src/supervision/detection/vlm.py,funcao,from_google_gemini_2_5,11,36,29,54,47,83,224.171,461.0309,8.25,3803.5047,211.3058,0.1537 +src/supervision/detection/vlm.py,funcao,from_moondream,6,14,9,16,20,25,68.8127,108.0482,3.4286,370.451,20.5806,0.036 +src/supervision/detection/tools/csv_sink.py,funcao,writerow,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/tools/csv_sink.py,funcao,__init__,1,3,2,4,4,6,4.7549,12.0,0.6667,8.0,0.4444,0.004 +src/supervision/detection/tools/csv_sink.py,funcao,__enter__,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/tools/csv_sink.py,funcao,__exit__,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/tools/csv_sink.py,funcao,open,2,3,2,3,5,5,6.7549,11.6096,1.0,11.6096,0.645,0.0039 +src/supervision/detection/tools/csv_sink.py,funcao,close,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/tools/csv_sink.py,funcao,_slice_value,2,6,3,6,8,9,17.5098,27.0,1.0,27.0,1.5,0.009 +src/supervision/detection/tools/csv_sink.py,funcao,parse_detection_data,1,4,3,6,5,9,8.0,20.8974,0.75,15.673,0.8707,0.007 +src/supervision/detection/tools/csv_sink.py,funcao,append,2,3,3,4,5,7,6.7549,16.2535,1.3333,21.6713,1.204,0.0054 +src/supervision/detection/tools/csv_sink.py,funcao,parse_field_names,2,4,2,4,6,6,10.0,15.5098,1.0,15.5098,0.8617,0.0052 +src/supervision/detection/tools/inference_slicer.py,funcao,move_detections,3,5,3,6,8,9,16.3645,27.0,1.8,48.6,2.7,0.009 +src/supervision/detection/tools/inference_slicer.py,funcao,__init__,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/detection/tools/inference_slicer.py,funcao,__call__,9,20,16,30,29,46,114.9679,223.4671,6.75,1508.4031,83.8002,0.0745 +src/supervision/detection/tools/inference_slicer.py,funcao,_run_callback,7,27,15,31,34,46,148.0334,234.0233,4.0185,940.4269,52.2459,0.078 +src/supervision/detection/tools/inference_slicer.py,funcao,_normalize_slice_wh,4,10,6,12,14,18,41.2193,68.5324,2.4,164.4777,9.1377,0.0228 +src/supervision/detection/tools/inference_slicer.py,funcao,_normalize_overlap_wh,4,10,6,12,14,18,41.2193,68.5324,2.4,164.4777,9.1377,0.0228 +src/supervision/detection/tools/inference_slicer.py,funcao,_generate_offset,8,16,13,22,24,35,88.0,160.4737,5.5,882.6053,49.0336,0.0535 +src/supervision/detection/tools/inference_slicer.py,funcao,_validate_overlap,3,9,6,12,12,18,33.2842,64.5293,2.0,129.0587,7.1699,0.0215 +src/supervision/detection/tools/json_sink.py,funcao,__init__,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/detection/tools/json_sink.py,funcao,__enter__,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/tools/json_sink.py,funcao,__exit__,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/tools/json_sink.py,funcao,open,2,3,2,3,5,5,6.7549,11.6096,1.0,11.6096,0.645,0.0039 +src/supervision/detection/tools/json_sink.py,funcao,_json_default,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/tools/json_sink.py,funcao,write_and_close,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/tools/json_sink.py,funcao,_slice_value,2,6,3,6,8,9,17.5098,27.0,1.0,27.0,1.5,0.009 +src/supervision/detection/tools/json_sink.py,funcao,parse_detection_data,1,4,3,6,5,9,8.0,20.8974,0.75,15.673,0.8707,0.007 +src/supervision/detection/tools/json_sink.py,funcao,append,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/tools/polygon_zone.py,funcao,__init__,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/tools/polygon_zone.py,funcao,trigger,5,15,11,22,20,33,70.213,142.6236,3.6667,522.9533,29.053,0.0475 +src/supervision/detection/tools/polygon_zone.py,funcao,annotate,2,4,2,4,6,6,10.0,15.5098,1.0,15.5098,0.8617,0.0052 +src/supervision/detection/tools/smoother.py,funcao,__init__,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/detection/tools/smoother.py,funcao,update_with_detections,2,4,3,6,6,9,10.0,23.2647,1.5,34.897,1.9387,0.0078 +src/supervision/detection/tools/smoother.py,funcao,get_track,3,6,4,8,9,12,20.2647,38.0391,2.0,76.0782,4.2266,0.0127 +src/supervision/detection/tools/smoother.py,funcao,get_smoothed_detections,4,7,4,8,11,12,27.6515,41.5132,2.2857,94.8873,5.2715,0.0138 +src/supervision/detection/tools/transformers.py,funcao,process_transformers_detection_result,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/tools/transformers.py,funcao,process_transformers_v4_segmentation_result,2,4,4,8,6,12,10.0,31.0196,2.0,62.0391,3.4466,0.0103 +src/supervision/detection/tools/transformers.py,funcao,process_transformers_v5_segmentation_result,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/detection/tools/transformers.py,funcao,process_transformers_v5_semantic_or_instance_segmentation_result,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/detection/tools/transformers.py,funcao,process_transformers_v4_panoptic_segmentation_result,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/detection/tools/transformers.py,funcao,process_transformers_v5_panoptic_segmentation_result,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/detection/tools/transformers.py,funcao,png_string_to_segmentation_array,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/tools/transformers.py,funcao,append_class_names_to_data,2,3,2,4,5,6,6.7549,13.9316,1.3333,18.5754,1.032,0.0046 +src/supervision/detection/utils/boxes.py,funcao,clip_boxes,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/utils/boxes.py,funcao,pad_boxes,3,6,3,6,9,9,20.2647,28.5293,1.5,42.794,2.3774,0.0095 +src/supervision/detection/utils/boxes.py,funcao,denormalize_boxes,2,7,4,8,9,12,21.6515,38.0391,1.1429,43.4733,2.4152,0.0127 +src/supervision/detection/utils/boxes.py,funcao,move_boxes,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/detection/utils/boxes.py,funcao,move_oriented_boxes,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/detection/utils/boxes.py,funcao,obb_polygon_area,5,16,13,20,21,33,75.6096,144.9465,3.125,452.9577,25.1643,0.0483 +src/supervision/detection/utils/boxes.py,funcao,xyxyxyxy_to_xyxy,3,8,9,12,11,21,28.7549,72.6481,2.25,163.4581,9.081,0.0242 +src/supervision/detection/utils/boxes.py,funcao,scale_boxes,4,12,8,16,16,24,51.0196,96.0,2.6667,256.0,14.2222,0.032 +src/supervision/detection/utils/boxes.py,funcao,spread_out_boxes,10,24,21,39,34,60,143.2584,305.2478,8.125,2480.1381,137.7855,0.1017 +src/supervision/detection/utils/converters.py,funcao,xyxy_to_polygons,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/utils/converters.py,funcao,polygon_to_mask,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/utils/converters.py,funcao,xywh_to_xyxy,1,4,2,4,5,6,8.0,13.9316,0.5,6.9658,0.387,0.0046 +src/supervision/detection/utils/converters.py,funcao,xyxy_to_xywh,1,4,2,4,5,6,8.0,13.9316,0.5,6.9658,0.387,0.0046 +src/supervision/detection/utils/converters.py,funcao,xcycwh_to_xyxy,3,13,8,16,16,24,52.8606,96.0,1.8462,177.2308,9.8462,0.032 +src/supervision/detection/utils/converters.py,funcao,xyxy_to_xcycarh,5,11,8,16,16,24,49.6634,96.0,3.6364,349.0909,19.3939,0.032 +src/supervision/detection/utils/converters.py,funcao,mask_to_xyxy,4,10,8,13,14,21,41.2193,79.9545,2.6,207.8816,11.549,0.0267 +src/supervision/detection/utils/converters.py,funcao,xyxy_to_mask,4,9,7,14,13,21,36.5293,77.7092,3.1111,241.7621,13.4312,0.0259 +src/supervision/detection/utils/converters.py,funcao,mask_to_polygons,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/detection/utils/converters.py,funcao,_base48_decode,11,23,17,32,34,49,142.0957,249.2857,7.6522,1907.5774,105.9765,0.0831 +src/supervision/detection/utils/converters.py,funcao,_base48_encode,6,10,8,15,16,23,48.7291,92.0,4.5,414.0,23.0,0.0307 +src/supervision/detection/utils/converters.py,funcao,_delta_decode,2,4,2,4,6,6,10.0,15.5098,1.0,15.5098,0.8617,0.0052 +src/supervision/detection/utils/converters.py,funcao,_delta_encode,1,4,2,4,5,6,8.0,13.9316,0.5,6.9658,0.387,0.0046 +src/supervision/detection/utils/converters.py,funcao,is_compressed_rle,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/utils/converters.py,funcao,_mask_to_rle_counts,3,5,3,6,8,9,16.3645,27.0,1.8,48.6,2.7,0.009 +src/supervision/detection/utils/converters.py,funcao,_rle_counts_to_mask,5,9,5,10,14,15,40.139,57.1103,2.7778,158.6398,8.8133,0.019 +src/supervision/detection/utils/converters.py,funcao,rle_to_mask,2,4,2,4,6,6,10.0,15.5098,1.0,15.5098,0.8617,0.0052 +src/supervision/detection/utils/converters.py,funcao,mask_to_rle,2,4,2,4,6,6,10.0,15.5098,1.0,15.5098,0.8617,0.0052 +src/supervision/detection/utils/converters.py,funcao,polygon_to_xyxy,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/utils/internal.py,funcao,extract_ultralytics_masks,5,22,13,25,27,38,109.7171,180.6857,2.8409,513.3117,28.5173,0.0602 +src/supervision/detection/utils/internal.py,funcao,process_roboflow_result,12,34,27,51,46,78,215.9933,430.8378,9.0,3877.5405,215.4189,0.1436 +src/supervision/detection/utils/internal.py,funcao,is_data_equal,2,4,2,4,6,6,10.0,15.5098,1.0,15.5098,0.8617,0.0052 +src/supervision/detection/utils/internal.py,funcao,is_metadata_equal,2,8,4,8,10,12,26.0,39.8631,1.0,39.8631,2.2146,0.0133 +src/supervision/detection/utils/internal.py,funcao,merge_data,3,7,6,10,10,16,24.4064,53.1508,2.1429,113.8947,6.3275,0.0177 +src/supervision/detection/utils/internal.py,funcao,merge_metadata,6,13,8,13,19,21,63.6155,89.2065,3.0,267.6194,14.8677,0.0297 +src/supervision/detection/utils/internal.py,funcao,get_data_item,2,4,2,4,6,6,10.0,15.5098,1.0,15.5098,0.8617,0.0052 +src/supervision/detection/utils/internal.py,funcao,cross_product,1,4,3,6,5,9,8.0,20.8974,0.75,15.673,0.8707,0.007 +src/supervision/detection/utils/iou_and_nms.py,funcao,list,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/utils/iou_and_nms.py,funcao,from_value,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/utils/iou_and_nms.py,funcao,box_iou,6,27,15,30,33,45,143.8917,226.9977,3.3333,756.6591,42.0366,0.0757 +src/supervision/detection/utils/iou_and_nms.py,funcao,box_iou_batch,6,27,15,30,33,45,143.8917,226.9977,3.3333,756.6591,42.0366,0.0757 +src/supervision/detection/utils/iou_and_nms.py,funcao,_jaccard,4,34,19,38,38,57,180.9737,299.1319,2.2353,668.6477,37.1471,0.0997 +src/supervision/detection/utils/iou_and_nms.py,funcao,box_iou_batch_with_jaccard,2,7,4,8,9,12,21.6515,38.0391,1.1429,43.4733,2.4152,0.0127 +src/supervision/detection/utils/iou_and_nms.py,funcao,_polygon_areas,3,9,6,10,12,16,33.2842,57.3594,1.6667,95.599,5.3111,0.0191 +src/supervision/detection/utils/iou_and_nms.py,funcao,_aabb_envelopes,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/utils/iou_and_nms.py,funcao,_overlapping_envelope_pairs,2,6,3,6,8,9,17.5098,27.0,1.0,27.0,1.5,0.009 +src/supervision/detection/utils/iou_and_nms.py,funcao,oriented_box_iou_batch,12,30,21,40,42,61,190.2263,328.9314,8.0,2631.4509,146.1917,0.1096 +src/supervision/detection/utils/iou_and_nms.py,funcao,compact_mask_iou_batch,9,37,28,56,46,84,221.2791,463.9792,6.8108,3160.0746,175.5597,0.1547 +src/supervision/detection/utils/iou_and_nms.py,funcao,_mask_iou_batch_split,7,16,9,18,23,27,83.6515,122.1362,3.9375,480.9112,26.7173,0.0407 +src/supervision/detection/utils/iou_and_nms.py,funcao,mask_iou_batch,11,40,29,57,51,86,250.9309,487.8286,7.8375,3823.3565,212.4087,0.1626 +src/supervision/detection/utils/iou_and_nms.py,funcao,mask_non_max_suppression,6,11,10,18,17,28,53.5635,114.449,4.9091,561.8403,31.2134,0.0381 +src/supervision/detection/utils/iou_and_nms.py,funcao,_prepare_predictions_for_nms,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/detection/utils/iou_and_nms.py,funcao,_nms_loop_from_iou_matrix,6,12,7,12,18,19,58.5293,79.2286,3.0,237.6857,13.2048,0.0264 +src/supervision/detection/utils/iou_and_nms.py,funcao,box_non_max_suppression,1,3,2,3,4,5,4.7549,10.0,0.5,5.0,0.2778,0.0033 +src/supervision/detection/utils/iou_and_nms.py,funcao,_group_overlapping_masks,6,9,8,12,15,20,44.0391,78.1378,4.0,312.5512,17.364,0.026 +src/supervision/detection/utils/iou_and_nms.py,funcao,mask_non_max_merge,1,6,3,6,7,9,15.5098,25.2662,0.5,12.6331,0.7018,0.0084 +src/supervision/detection/utils/iou_and_nms.py,funcao,_greedy_nmm_via_iou_callback,5,7,6,9,12,15,31.2611,53.7744,3.2143,172.8464,9.6026,0.0179 +src/supervision/detection/utils/iou_and_nms.py,funcao,_non_max_merge_per_category,1,6,3,6,7,9,15.5098,25.2662,0.5,12.6331,0.7018,0.0084 +src/supervision/detection/utils/iou_and_nms.py,funcao,_group_overlapping_boxes,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/detection/utils/iou_and_nms.py,funcao,box_non_max_merge,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/utils/iou_and_nms.py,funcao,oriented_box_non_max_suppression,6,23,14,27,29,41,119.5517,199.1772,3.5217,701.4502,38.9695,0.0664 +src/supervision/detection/utils/iou_and_nms.py,funcao,_group_overlapping_oriented_boxes,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/detection/utils/iou_and_nms.py,funcao,oriented_box_non_max_merge,6,23,14,27,29,41,119.5517,199.1772,3.5217,701.4502,38.9695,0.0664 +src/supervision/detection/utils/masks.py,funcao,move_masks,6,27,17,32,33,49,143.8917,247.1753,3.5556,878.8456,48.8248,0.0824 +src/supervision/detection/utils/masks.py,funcao,calculate_masks_centroids,3,16,12,24,19,36,68.7549,152.9254,2.25,344.0821,19.1157,0.051 +src/supervision/detection/utils/masks.py,funcao,contains_holes,3,5,3,5,8,8,16.3645,24.0,1.5,36.0,2.0,0.008 +src/supervision/detection/utils/masks.py,funcao,contains_multiple_segments,3,7,4,8,10,12,24.4064,39.8631,1.7143,68.3368,3.7965,0.0133 +src/supervision/detection/utils/masks.py,funcao,resize_masks,3,5,6,12,8,18,16.3645,54.0,3.6,194.4,10.8,0.018 +src/supervision/detection/utils/masks.py,funcao,filter_segments_by_distance,9,27,19,36,36,55,156.9113,284.3459,6.0,1706.0753,94.782,0.0948 +src/supervision/detection/utils/polygons.py,funcao,filter_polygons_by_area,5,12,10,20,17,30,54.6292,122.6239,4.1667,510.9329,28.3852,0.0409 +src/supervision/detection/utils/polygons.py,funcao,approximate_polygon,8,14,10,20,22,30,77.303,133.7829,5.7143,764.474,42.4708,0.0446 +src/supervision/detection/utils/vlms.py,funcao,edit_distance,6,18,15,29,24,44,90.5684,201.7384,4.8333,975.0687,54.1705,0.0672 +src/supervision/detection/utils/vlms.py,funcao,fuzzy_match_index,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/draw/color.py,funcao,_validate_color_hex,3,5,3,5,8,8,16.3645,24.0,1.5,36.0,2.0,0.008 +src/supervision/draw/color.py,funcao,from_hex,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/draw/color.py,funcao,from_rgb_tuple,3,9,8,13,12,21,33.2842,75.2842,2.1667,163.1158,9.062,0.0251 +src/supervision/draw/color.py,funcao,from_bgr_tuple,3,9,8,13,12,21,33.2842,75.2842,2.1667,163.1158,9.062,0.0251 +src/supervision/draw/color.py,funcao,from_rgba_tuple,3,11,10,17,14,27,42.8086,102.7986,2.3182,238.3058,13.2392,0.0343 +src/supervision/draw/color.py,funcao,from_bgra_tuple,3,11,10,17,14,27,42.8086,102.7986,2.3182,238.3058,13.2392,0.0343 +src/supervision/draw/color.py,funcao,as_hex,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/draw/color.py,funcao,as_rgb,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/draw/color.py,funcao,as_bgr,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/draw/color.py,funcao,as_rgba,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/draw/color.py,funcao,as_bgra,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/draw/color.py,funcao,WHITE,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/draw/color.py,funcao,BLACK,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/draw/color.py,funcao,GREY,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/draw/color.py,funcao,RED,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/draw/color.py,funcao,GREEN,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/draw/color.py,funcao,BLUE,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/draw/color.py,funcao,YELLOW,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/draw/color.py,funcao,ROBOFLOW,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/draw/color.py,funcao,__hash__,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/draw/color.py,funcao,__repr__,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/draw/color.py,funcao,__eq__,2,9,5,13,11,18,30.5293,62.2698,1.4444,89.9452,4.997,0.0208 +src/supervision/draw/color.py,funcao,DEFAULT,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/draw/color.py,funcao,LEGACY,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/draw/color.py,funcao,from_matplotlib,3,8,5,10,11,15,28.7549,51.8915,1.875,97.2965,5.4054,0.0173 +src/supervision/draw/color.py,funcao,by_idx,2,3,2,4,5,6,6.7549,13.9316,1.3333,18.5754,1.032,0.0046 +src/supervision/draw/color.py,funcao,__len__,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/draw/color.py,funcao,unify_to_bgr,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/draw/utils.py,funcao,draw_line,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/draw/utils.py,funcao,draw_rectangle,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/draw/utils.py,funcao,draw_filled_rectangle,3,2,4,6,5,10,6.7549,23.2193,4.5,104.4868,5.8048,0.0077 +src/supervision/draw/utils.py,funcao,draw_rounded_rectangle,4,8,17,32,12,49,32.0,175.6632,8.0,1405.3053,78.0725,0.0586 +src/supervision/draw/utils.py,funcao,draw_polygon,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/draw/utils.py,funcao,draw_filled_polygon,2,2,2,4,4,6,4.0,12.0,2.0,24.0,1.3333,0.004 +src/supervision/draw/utils.py,funcao,draw_text,4,11,9,18,15,27,46.0537,105.486,3.2727,345.2271,19.1793,0.0352 +src/supervision/draw/utils.py,funcao,draw_image,10,30,23,45,40,68,180.426,361.8911,7.5,2714.1833,150.788,0.1206 +src/supervision/draw/utils.py,funcao,calculate_optimal_text_scale,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/draw/utils.py,funcao,calculate_optimal_line_thickness,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/geometry/core.py,funcao,list,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/geometry/core.py,funcao,as_xy_int_tuple,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/geometry/core.py,funcao,as_xy_float_tuple,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/geometry/core.py,funcao,magnitude,3,7,5,10,10,15,24.4064,49.8289,2.1429,106.7763,5.932,0.0166 +src/supervision/geometry/core.py,funcao,center,2,5,4,8,7,12,13.6096,33.6883,1.6,53.9012,2.9945,0.0112 +src/supervision/geometry/core.py,funcao,cross_product,2,8,7,14,10,21,26.0,69.7605,1.75,122.0809,6.7823,0.0233 +src/supervision/geometry/core.py,funcao,from_xyxy,1,4,2,4,5,6,8.0,13.9316,0.5,6.9658,0.387,0.0046 +src/supervision/geometry/core.py,funcao,top_left,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/geometry/core.py,funcao,bottom_right,1,4,2,4,5,6,8.0,13.9316,0.5,6.9658,0.387,0.0046 +src/supervision/geometry/core.py,funcao,pad,3,8,6,12,11,18,28.7549,62.2698,2.25,140.107,7.7837,0.0208 +src/supervision/geometry/core.py,funcao,as_xyxy_int_tuple,1,4,2,4,5,6,8.0,13.9316,0.5,6.9658,0.387,0.0046 +src/supervision/geometry/utils.py,funcao,get_polygon_center,4,10,6,11,14,17,41.2193,64.725,2.2,142.3951,7.9108,0.0216 +src/supervision/key_points/annotators.py,funcao,annotate,4,8,6,9,12,15,32.0,53.7744,2.25,120.9925,6.7218,0.0179 +src/supervision/key_points/annotators.py,funcao,__init__,1,3,2,4,4,6,4.7549,12.0,0.6667,8.0,0.4444,0.004 +src/supervision/key_points/annotators.py,funcao,_get_covariances,2,4,2,4,6,6,10.0,15.5098,1.0,15.5098,0.8617,0.0052 +src/supervision/key_points/annotators.py,funcao,_decompose_covariance,4,7,5,7,11,12,27.6515,41.5132,2.0,83.0264,4.6126,0.0138 +src/supervision/key_points/annotators.py,funcao,_iter_ellipse_params,5,9,6,11,14,17,40.139,64.725,3.0556,197.7709,10.9873,0.0216 +src/supervision/key_points/annotators.py,funcao,get_text_bounding_box,3,9,8,16,12,24,33.2842,86.0391,2.6667,229.4376,12.7465,0.0287 +src/supervision/key_points/annotators.py,funcao,_resolve_labels,3,5,4,8,8,12,16.3645,36.0,2.4,86.4,4.8,0.012 +src/supervision/key_points/annotators.py,funcao,_resolve_color_list,2,3,2,4,5,6,6.7549,13.9316,1.3333,18.5754,1.032,0.0046 +src/supervision/key_points/core.py,funcao,_optional_array_equal,3,7,6,12,10,18,24.4064,59.7947,2.5714,153.7578,8.5421,0.0199 +src/supervision/key_points/core.py,funcao,_normalize_row_index,2,11,5,11,13,16,40.0537,59.207,1.0,59.207,3.2893,0.0197 +src/supervision/key_points/core.py,funcao,__init__,1,4,3,6,5,9,8.0,20.8974,0.75,15.673,0.8707,0.007 +src/supervision/key_points/core.py,funcao,__post_init__,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/key_points/core.py,funcao,confidence,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/key_points/core.py,funcao,__len__,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/key_points/core.py,funcao,__iter__,1,3,2,4,4,6,4.7549,12.0,0.6667,8.0,0.4444,0.004 +src/supervision/key_points/core.py,funcao,__eq__,1,1,1,1,2,2,0,2.0,0.5,1.0,0.0556,0.0007 +src/supervision/key_points/core.py,funcao,from_inference,2,3,2,3,5,5,6.7549,11.6096,1.0,11.6096,0.645,0.0039 +src/supervision/key_points/core.py,funcao,from_mediapipe,4,10,6,11,14,17,41.2193,64.725,2.2,142.3951,7.9108,0.0216 +src/supervision/key_points/core.py,funcao,from_ultralytics,2,4,2,4,6,6,10.0,15.5098,1.0,15.5098,0.8617,0.0052 +src/supervision/key_points/core.py,funcao,from_yolo_nas,4,9,5,10,13,15,36.5293,55.5066,2.2222,123.348,6.8527,0.0185 +src/supervision/key_points/core.py,funcao,from_detectron2,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/key_points/core.py,funcao,from_transformers,2,4,2,4,6,6,10.0,15.5098,1.0,15.5098,0.8617,0.0052 +src/supervision/key_points/core.py,funcao,_get_by_2d_bool_mask,7,23,19,37,30,56,123.6934,274.7859,5.6304,1547.1639,85.9536,0.0916 +src/supervision/key_points/core.py,funcao,__getitem__,5,39,31,62,44,93,217.7403,507.7271,3.9744,2017.8899,112.105,0.1692 +src/supervision/key_points/core.py,funcao,__setitem__,1,1,1,1,2,2,0,2.0,0.5,1.0,0.0556,0.0007 +src/supervision/key_points/core.py,funcao,empty,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/key_points/core.py,funcao,is_empty,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/key_points/core.py,funcao,with_nms,8,14,15,22,22,37,77.303,164.999,6.2857,1037.1364,57.6187,0.055 +src/supervision/key_points/core.py,funcao,as_detections,5,9,8,12,14,20,40.139,76.1471,3.3333,253.8237,14.1013,0.0254 +src/supervision/metrics/core.py,funcao,update,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/core.py,funcao,reset,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/core.py,funcao,compute,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/detection.py,funcao,_assert_supported_target,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/metrics/detection.py,funcao,detections_to_tensor,7,20,13,24,27,37,106.09,175.9308,4.2,738.9095,41.0505,0.0586 +src/supervision/metrics/detection.py,funcao,_validate_input_tensors,5,14,9,16,19,25,64.9126,106.1982,2.8571,303.4234,16.8569,0.0354 +src/supervision/metrics/detection.py,funcao,validate_input_tensors,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/detection.py,funcao,__eq__,3,8,5,11,11,16,28.7549,55.3509,2.0625,114.1612,6.3423,0.0185 +src/supervision/metrics/detection.py,funcao,from_detections,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/detection.py,funcao,from_tensors,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/metrics/detection.py,funcao,evaluate_detection_batch,10,38,31,60,48,91,232.6405,508.2316,7.8947,4012.3546,222.9086,0.1694 +src/supervision/metrics/detection.py,funcao,_drop_extra_matches,2,3,3,4,5,7,6.7549,16.2535,1.3333,21.6713,1.204,0.0054 +src/supervision/metrics/detection.py,funcao,benchmark,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/detection.py,funcao,plot,9,23,15,27,32,42,132.5713,210.0,5.2826,1109.3478,61.6304,0.07 +src/supervision/metrics/detection.py,funcao,compute_average_precision,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/detection.py,funcao,_match_detection_batch,5,8,5,9,13,14,35.6096,51.8062,2.8125,145.7048,8.0947,0.0173 +src/supervision/metrics/detection.py,funcao,_average_precisions_per_class,6,15,10,19,21,29,74.1131,127.3772,3.8,484.0334,26.8907,0.0425 +src/supervision/metrics/f1_score.py,funcao,__init__,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/f1_score.py,funcao,reset,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/f1_score.py,funcao,update,2,4,3,4,6,7,10.0,18.0947,1.0,18.0947,1.0053,0.006 +src/supervision/metrics/f1_score.py,funcao,compute,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/f1_score.py,funcao,_compute,7,17,14,27,24,41,89.1384,187.9835,5.5588,1044.9669,58.0537,0.0627 +src/supervision/metrics/f1_score.py,funcao,_compute_f1_for_classes,2,7,5,9,9,14,21.6515,44.379,1.2857,57.0587,3.1699,0.0148 +src/supervision/metrics/f1_score.py,funcao,_match_detection_batch,5,8,5,9,13,14,35.6096,51.8062,2.8125,145.7048,8.0947,0.0173 +src/supervision/metrics/f1_score.py,funcao,_compute_confusion_matrix,2,8,5,10,10,15,26.0,49.8289,1.25,62.2862,3.4603,0.0166 +src/supervision/metrics/f1_score.py,funcao,_compute_f1,6,13,9,16,19,25,63.6155,106.1982,3.6923,392.1164,21.7842,0.0354 +src/supervision/metrics/f1_score.py,funcao,_detections_content,4,11,7,14,15,21,46.0537,82.0447,2.5455,208.8411,11.6023,0.0273 +src/supervision/metrics/f1_score.py,funcao,_make_empty_content,1,4,3,6,5,9,8.0,20.8974,0.75,15.673,0.8707,0.007 +src/supervision/metrics/f1_score.py,funcao,_filter_detections_by_size,3,12,8,16,15,24,47.7744,93.7654,2.0,187.5307,10.4184,0.0313 +src/supervision/metrics/f1_score.py,funcao,_filter_predictions_and_targets_by_size,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/f1_score.py,funcao,f1_50,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/f1_score.py,funcao,f1_75,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/f1_score.py,funcao,__str__,3,16,12,24,19,36,68.7549,152.9254,2.25,344.0821,19.1157,0.051 +src/supervision/metrics/f1_score.py,funcao,to_pandas,1,4,3,6,5,9,8.0,20.8974,0.75,15.673,0.8707,0.007 +src/supervision/metrics/f1_score.py,funcao,plot,4,26,19,38,30,57,130.2114,279.6928,2.9231,817.5635,45.4202,0.0932 +src/supervision/metrics/mean_average_precision.py,funcao,map50_95,2,5,4,6,7,10,13.6096,28.0735,1.2,33.6883,1.8716,0.0094 +src/supervision/metrics/mean_average_precision.py,funcao,map50,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/mean_average_precision.py,funcao,map75,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/mean_average_precision.py,funcao,__str__,2,7,4,9,9,13,21.6515,41.209,1.2857,52.983,2.9435,0.0137 +src/supervision/metrics/mean_average_precision.py,funcao,to_pandas,1,4,3,6,5,9,8.0,20.8974,0.75,15.673,0.8707,0.007 +src/supervision/metrics/mean_average_precision.py,funcao,plot,4,27,19,38,31,57,136.382,282.3892,2.8148,794.8733,44.1596,0.0941 +src/supervision/metrics/mean_average_precision.py,funcao,__init__,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/mean_average_precision.py,funcao,empty,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/mean_average_precision.py,funcao,create_class_members,2,6,6,12,8,18,17.5098,54.0,2.0,108.0,6.0,0.018 +src/supervision/metrics/mean_average_precision.py,funcao,get_annotation_ids,6,15,12,19,21,31,74.1131,136.1618,3.8,517.415,28.7453,0.0454 +src/supervision/metrics/mean_average_precision.py,funcao,get_category_ids,3,9,10,15,12,25,33.2842,89.6241,2.5,224.0602,12.4478,0.0299 +src/supervision/metrics/mean_average_precision.py,funcao,get_image_ids,4,10,7,11,14,18,41.2193,68.5324,2.2,150.7713,8.3762,0.0228 +src/supervision/metrics/mean_average_precision.py,funcao,get_annotations,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/metrics/mean_average_precision.py,funcao,load_predictions,8,28,17,32,36,49,158.6059,253.3263,4.5714,1158.0632,64.3368,0.0844 +src/supervision/metrics/mean_average_precision.py,funcao,_prepare_targets_and_predictions,2,5,3,6,7,9,13.6096,25.2662,1.2,30.3194,1.6844,0.0084 +src/supervision/metrics/mean_average_precision.py,funcao,_compute_iou,4,9,7,11,13,18,36.5293,66.6079,2.4444,162.8193,9.0455,0.0222 +src/supervision/metrics/mean_average_precision.py,funcao,_evaluate_image,11,35,27,48,46,75,217.5787,414.2671,7.5429,3124.7579,173.5977,0.1381 +src/supervision/metrics/mean_average_precision.py,funcao,_accumulate,13,50,38,66,63,104,330.2985,621.6371,8.58,5333.6464,296.3137,0.2072 +src/supervision/metrics/mean_average_precision.py,funcao,_pycocotools_summarize,6,11,13,22,17,35,53.5635,143.0612,6.0,858.3672,47.6871,0.0477 +src/supervision/metrics/mean_average_precision.py,funcao,evaluate,1,1,1,1,2,2,0,2.0,0.5,1.0,0.0556,0.0007 +src/supervision/metrics/mean_average_precision.py,funcao,reset,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/mean_average_precision.py,funcao,update,4,7,7,10,11,17,27.6515,58.8103,2.8571,168.0295,9.335,0.0196 +src/supervision/metrics/mean_average_precision.py,funcao,_prepare_targets,7,20,16,32,27,48,106.09,228.2346,5.6,1278.1138,71.0063,0.0761 +src/supervision/metrics/mean_average_precision.py,funcao,_prepare_predictions,7,18,13,26,25,39,94.7101,181.1104,5.0556,915.6136,50.8674,0.0604 +src/supervision/metrics/mean_average_precision.py,funcao,compute,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/metrics/mean_average_recall.py,funcao,mAR_at_1,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/mean_average_recall.py,funcao,mAR_at_10,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/mean_average_recall.py,funcao,mAR_at_100,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/mean_average_recall.py,funcao,__str__,3,16,12,24,19,36,68.7549,152.9254,2.25,344.0821,19.1157,0.051 +src/supervision/metrics/mean_average_recall.py,funcao,to_pandas,1,4,3,6,5,9,8.0,20.8974,0.75,15.673,0.8707,0.007 +src/supervision/metrics/mean_average_recall.py,funcao,plot,4,27,19,38,31,57,136.382,282.3892,2.8148,794.8733,44.1596,0.0941 +src/supervision/metrics/mean_average_recall.py,funcao,__init__,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/mean_average_recall.py,funcao,reset,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/mean_average_recall.py,funcao,update,2,4,3,4,6,7,10.0,18.0947,1.0,18.0947,1.0053,0.006 +src/supervision/metrics/mean_average_recall.py,funcao,compute,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/mean_average_recall.py,funcao,_compute,5,11,9,16,16,25,49.6634,100.0,3.6364,363.6364,20.202,0.0333 +src/supervision/metrics/mean_average_recall.py,funcao,_compute_average_recall_for_classes,1,2,2,4,3,6,2.0,9.5098,1.0,9.5098,0.5283,0.0032 +src/supervision/metrics/mean_average_recall.py,funcao,_match_detection_batch,5,8,5,9,13,14,35.6096,51.8062,2.8125,145.7048,8.0947,0.0173 +src/supervision/metrics/mean_average_recall.py,funcao,_compute_confusion_matrix,2,8,5,10,10,15,26.0,49.8289,1.25,62.2862,3.4603,0.0166 +src/supervision/metrics/mean_average_recall.py,funcao,_compute_recall,5,8,6,10,13,16,35.6096,59.207,3.125,185.022,10.279,0.0197 +src/supervision/metrics/mean_average_recall.py,funcao,_detections_content,4,11,7,14,15,21,46.0537,82.0447,2.5455,208.8411,11.6023,0.0273 +src/supervision/metrics/mean_average_recall.py,funcao,_make_empty_content,1,4,3,6,5,9,8.0,20.8974,0.75,15.673,0.8707,0.007 +src/supervision/metrics/mean_average_recall.py,funcao,_filter_detections_by_size,3,12,8,16,15,24,47.7744,93.7654,2.0,187.5307,10.4184,0.0313 +src/supervision/metrics/mean_average_recall.py,funcao,_filter_predictions_and_targets_by_size,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/precision.py,funcao,__init__,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/precision.py,funcao,reset,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/precision.py,funcao,update,2,4,3,4,6,7,10.0,18.0947,1.0,18.0947,1.0053,0.006 +src/supervision/metrics/precision.py,funcao,compute,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/precision.py,funcao,_compute,7,17,14,27,24,41,89.1384,187.9835,5.5588,1044.9669,58.0537,0.0627 +src/supervision/metrics/precision.py,funcao,_compute_precision_for_classes,2,7,5,9,9,14,21.6515,44.379,1.2857,57.0587,3.1699,0.0148 +src/supervision/metrics/precision.py,funcao,_match_detection_batch,5,8,5,9,13,14,35.6096,51.8062,2.8125,145.7048,8.0947,0.0173 +src/supervision/metrics/precision.py,funcao,_compute_confusion_matrix,2,8,5,10,10,15,26.0,49.8289,1.25,62.2862,3.4603,0.0166 +src/supervision/metrics/precision.py,funcao,_compute_precision,5,8,5,8,13,13,35.6096,48.1057,2.5,120.2643,6.6813,0.016 +src/supervision/metrics/precision.py,funcao,_detections_content,4,11,7,14,15,21,46.0537,82.0447,2.5455,208.8411,11.6023,0.0273 +src/supervision/metrics/precision.py,funcao,_make_empty_content,1,4,3,6,5,9,8.0,20.8974,0.75,15.673,0.8707,0.007 +src/supervision/metrics/precision.py,funcao,_filter_detections_by_size,3,12,8,16,15,24,47.7744,93.7654,2.0,187.5307,10.4184,0.0313 +src/supervision/metrics/precision.py,funcao,_filter_predictions_and_targets_by_size,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/precision.py,funcao,precision_at_50,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/precision.py,funcao,precision_at_75,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/precision.py,funcao,__str__,3,16,12,24,19,36,68.7549,152.9254,2.25,344.0821,19.1157,0.051 +src/supervision/metrics/precision.py,funcao,to_pandas,1,4,3,6,5,9,8.0,20.8974,0.75,15.673,0.8707,0.007 +src/supervision/metrics/precision.py,funcao,plot,4,26,19,38,30,57,130.2114,279.6928,2.9231,817.5635,45.4202,0.0932 +src/supervision/metrics/recall.py,funcao,__init__,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/recall.py,funcao,reset,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/recall.py,funcao,update,2,4,3,4,6,7,10.0,18.0947,1.0,18.0947,1.0053,0.006 +src/supervision/metrics/recall.py,funcao,compute,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/recall.py,funcao,_compute,4,10,8,15,14,23,41.2193,87.5692,3.0,262.7075,14.5949,0.0292 +src/supervision/metrics/recall.py,funcao,_compute_recall_for_classes,2,5,4,7,7,11,13.6096,30.8809,1.4,43.2333,2.4018,0.0103 +src/supervision/metrics/recall.py,funcao,_match_detection_batch,5,8,5,9,13,14,35.6096,51.8062,2.8125,145.7048,8.0947,0.0173 +src/supervision/metrics/recall.py,funcao,_compute_confusion_matrix,2,8,5,10,10,15,26.0,49.8289,1.25,62.2862,3.4603,0.0166 +src/supervision/metrics/recall.py,funcao,_compute_recall,5,8,5,8,13,13,35.6096,48.1057,2.5,120.2643,6.6813,0.016 +src/supervision/metrics/recall.py,funcao,_detections_content,4,11,7,14,15,21,46.0537,82.0447,2.5455,208.8411,11.6023,0.0273 +src/supervision/metrics/recall.py,funcao,_make_empty_content,1,4,3,6,5,9,8.0,20.8974,0.75,15.673,0.8707,0.007 +src/supervision/metrics/recall.py,funcao,_filter_detections_by_size,3,12,8,16,15,24,47.7744,93.7654,2.0,187.5307,10.4184,0.0313 +src/supervision/metrics/recall.py,funcao,_filter_predictions_and_targets_by_size,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/recall.py,funcao,recall_at_50,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/recall.py,funcao,recall_at_75,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/metrics/recall.py,funcao,__str__,3,16,12,24,19,36,68.7549,152.9254,2.25,344.0821,19.1157,0.051 +src/supervision/metrics/recall.py,funcao,to_pandas,1,4,3,6,5,9,8.0,20.8974,0.75,15.673,0.8707,0.007 +src/supervision/metrics/recall.py,funcao,plot,4,26,19,38,30,57,130.2114,279.6928,2.9231,817.5635,45.4202,0.0932 +src/supervision/metrics/utils/object_size.py,funcao,get_object_size_category,1,4,3,6,5,9,8.0,20.8974,0.75,15.673,0.8707,0.007 +src/supervision/metrics/utils/object_size.py,funcao,get_bbox_size_category,7,17,11,22,24,33,89.1384,151.3038,4.5294,685.317,38.0732,0.0504 +src/supervision/metrics/utils/object_size.py,funcao,get_mask_size_category,4,7,6,12,11,18,27.6515,62.2698,3.4286,213.4964,11.8609,0.0208 +src/supervision/metrics/utils/object_size.py,funcao,get_obb_size_category,8,38,25,51,46,76,223.4212,419.7907,5.3684,2253.6133,125.2007,0.1399 +src/supervision/metrics/utils/object_size.py,funcao,get_detection_size_category,2,7,5,10,9,15,21.6515,47.5489,1.4286,67.927,3.7737,0.0158 +src/supervision/metrics/utils/utils.py,funcao,ensure_pandas_installed,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/tracker/byte_tracker/core.py,funcao,__init__,3,6,3,6,9,9,20.2647,28.5293,1.5,42.794,2.3774,0.0095 +src/supervision/tracker/byte_tracker/core.py,funcao,update_with_detections,5,8,6,10,13,16,35.6096,59.207,3.125,185.022,10.279,0.0197 +src/supervision/tracker/byte_tracker/core.py,funcao,reset,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/tracker/byte_tracker/core.py,funcao,update_with_tensors,6,17,16,30,23,46,84.9966,208.0838,5.2941,1101.6204,61.2011,0.0694 +src/supervision/tracker/byte_tracker/core.py,funcao,joint_tracks,2,4,2,4,6,6,10.0,15.5098,1.0,15.5098,0.8617,0.0052 +src/supervision/tracker/byte_tracker/core.py,funcao,sub_tracks,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/tracker/byte_tracker/core.py,funcao,remove_duplicate_tracks,4,9,6,12,13,18,36.5293,66.6079,2.6667,177.6211,9.8678,0.0222 +src/supervision/tracker/byte_tracker/kalman_filter.py,funcao,__init__,3,6,6,12,9,18,20.2647,57.0587,3.0,171.176,9.5098,0.019 +src/supervision/tracker/byte_tracker/kalman_filter.py,funcao,initiate,1,16,12,24,17,36,64.0,147.1487,0.75,110.3615,6.1312,0.049 +src/supervision/tracker/byte_tracker/kalman_filter.py,funcao,predict,2,10,7,14,12,21,35.2193,75.2842,1.4,105.3979,5.8554,0.0251 +src/supervision/tracker/byte_tracker/kalman_filter.py,funcao,project,2,6,4,8,8,12,17.5098,36.0,1.3333,48.0,2.6667,0.012 +src/supervision/tracker/byte_tracker/kalman_filter.py,funcao,multi_predict,2,14,9,18,16,27,55.303,108.0,1.2857,138.8571,7.7143,0.036 +src/supervision/tracker/byte_tracker/kalman_filter.py,funcao,update,2,6,3,6,8,9,17.5098,27.0,1.0,27.0,1.5,0.009 +src/supervision/tracker/byte_tracker/matching.py,funcao,indices_to_matches,2,6,3,6,8,9,17.5098,27.0,1.0,27.0,1.5,0.009 +src/supervision/tracker/byte_tracker/matching.py,funcao,linear_assignment,3,5,3,6,8,9,16.3645,27.0,1.8,48.6,2.7,0.009 +src/supervision/tracker/byte_tracker/matching.py,funcao,iou_distance,5,12,7,14,17,21,54.6292,85.8367,2.9167,250.3571,13.9087,0.0286 +src/supervision/tracker/byte_tracker/matching.py,funcao,fuse_score,3,7,4,8,10,12,24.4064,39.8631,1.7143,68.3368,3.7965,0.0133 +src/supervision/tracker/byte_tracker/single_object_track.py,funcao,__init__,1,4,3,6,5,9,8.0,20.8974,0.75,15.673,0.8707,0.007 +src/supervision/tracker/byte_tracker/single_object_track.py,funcao,predict,2,6,4,8,8,12,17.5098,36.0,1.3333,48.0,2.6667,0.012 +src/supervision/tracker/byte_tracker/single_object_track.py,funcao,multi_predict,3,7,4,8,10,12,24.4064,39.8631,1.7143,68.3368,3.7965,0.0133 +src/supervision/tracker/byte_tracker/single_object_track.py,funcao,activate,1,3,2,4,4,6,4.7549,12.0,0.6667,8.0,0.4444,0.004 +src/supervision/tracker/byte_tracker/single_object_track.py,funcao,re_activate,1,4,3,6,5,9,8.0,20.8974,0.75,15.673,0.8707,0.007 +src/supervision/tracker/byte_tracker/single_object_track.py,funcao,update,3,9,6,12,12,18,33.2842,64.5293,2.0,129.0587,7.1699,0.0215 +src/supervision/tracker/byte_tracker/single_object_track.py,funcao,tlwh,4,8,4,8,12,12,32.0,43.0196,2.0,86.0391,4.78,0.0143 +src/supervision/tracker/byte_tracker/single_object_track.py,funcao,tlbr,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/tracker/byte_tracker/single_object_track.py,funcao,tlwh_to_xyah,2,6,3,6,8,9,17.5098,27.0,1.0,27.0,1.5,0.009 +src/supervision/tracker/byte_tracker/single_object_track.py,funcao,to_xyah,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/tracker/byte_tracker/single_object_track.py,funcao,tlbr_to_tlwh,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/tracker/byte_tracker/single_object_track.py,funcao,tlwh_to_tlbr,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/tracker/byte_tracker/single_object_track.py,funcao,__repr__,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/tracker/byte_tracker/utils.py,funcao,__init__,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/tracker/byte_tracker/utils.py,funcao,reset,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/tracker/byte_tracker/utils.py,funcao,new_id,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/tracker/byte_tracker/utils.py,funcao,NO_ID,1,1,1,1,2,2,0,2.0,0.5,1.0,0.0556,0.0007 +src/supervision/utils/conversion.py,funcao,ensure_cv2_image_for_class_method,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/utils/conversion.py,funcao,ensure_cv2_image_for_annotation,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/utils/conversion.py,funcao,ensure_cv2_image_for_standalone_function,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/utils/conversion.py,funcao,ensure_pil_image_for_class_method,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/utils/conversion.py,funcao,ensure_pil_image_for_annotation,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/utils/conversion.py,funcao,ensure_cv2_image_for_processing,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/utils/conversion.py,funcao,images_to_cv2,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/utils/conversion.py,funcao,pillow_to_cv2,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/utils/conversion.py,funcao,cv2_to_pillow,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/utils/file.py,funcao,default,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/utils/file.py,funcao,list_files_with_extensions,5,8,5,9,13,14,35.6096,51.8062,2.8125,145.7048,8.0947,0.0173 +src/supervision/utils/file.py,funcao,read_txt_file,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/utils/file.py,funcao,save_text_file,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/utils/file.py,funcao,read_json_file,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/utils/file.py,funcao,save_json_file,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/utils/file.py,funcao,read_yaml_file,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/utils/file.py,funcao,save_yaml_file,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/utils/image.py,funcao,crop_image,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/utils/image.py,funcao,scale_image,2,4,3,6,6,9,10.0,23.2647,1.5,34.897,1.9387,0.0078 +src/supervision/utils/image.py,funcao,resize_image,3,8,5,10,11,15,28.7549,51.8915,1.875,97.2965,5.4054,0.0173 +src/supervision/utils/image.py,funcao,letterbox_image,2,13,8,16,15,24,50.1057,93.7654,1.2308,115.4035,6.4113,0.0313 +src/supervision/utils/image.py,funcao,overlay_image,9,30,25,48,39,73,175.736,385.8344,7.2,2778.0074,154.3337,0.1286 +src/supervision/utils/image.py,funcao,tint_image,3,4,4,6,7,10,12.7549,28.0735,2.25,63.1655,3.5092,0.0094 +src/supervision/utils/image.py,funcao,grayscale_image,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/utils/image.py,funcao,get_image_resolution_wh,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/utils/image.py,funcao,__init__,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/utils/image.py,funcao,__enter__,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/utils/image.py,funcao,save_image,2,4,2,4,6,6,10.0,15.5098,1.0,15.5098,0.8617,0.0052 +src/supervision/utils/image.py,funcao,__exit__,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/utils/image.py,funcao,create_tiles,5,12,7,14,17,21,54.6292,85.8367,2.9167,250.3571,13.9087,0.0286 +src/supervision/utils/image.py,funcao,_negotiate_tiles_format,2,4,2,4,6,6,10.0,15.5098,1.0,15.5098,0.8617,0.0052 +src/supervision/utils/image.py,funcao,_calculate_aggregated_images_shape,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/utils/image.py,funcao,_aggregate_images_shape,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/utils/image.py,funcao,_establish_grid_size,4,11,9,18,15,27,46.0537,105.486,3.2727,345.2271,19.1793,0.0352 +src/supervision/utils/image.py,funcao,_negotiate_grid_size,4,8,5,10,12,15,32.0,53.7744,2.5,134.4361,7.4687,0.0179 +src/supervision/utils/image.py,funcao,_generate_tiles,3,6,5,8,9,13,20.2647,41.209,2.0,82.4181,4.5788,0.0137 +src/supervision/utils/image.py,funcao,_draw_texts,1,4,3,6,5,9,8.0,20.8974,0.75,15.673,0.8707,0.007 +src/supervision/utils/image.py,funcao,_prepare_default_titles_anchors,4,9,6,12,13,18,36.5293,66.6079,2.6667,177.6211,9.8678,0.0222 +src/supervision/utils/image.py,funcao,_merge_tiles_elements,2,6,5,8,8,13,17.5098,39.0,1.3333,52.0,2.8889,0.013 +src/supervision/utils/image.py,funcao,_generate_color_image,2,3,2,3,5,5,6.7549,11.6096,1.0,11.6096,0.645,0.0039 +src/supervision/utils/internal.py,funcao,format_warning,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/utils/internal.py,funcao,warn_deprecated,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/utils/internal.py,funcao,deprecated_parameter,2,4,2,4,6,6,10.0,15.5098,1.0,15.5098,0.8617,0.0052 +src/supervision/utils/internal.py,funcao,__init__,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/utils/internal.py,funcao,__get__,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/utils/internal.py,funcao,get_instance_variables,3,7,5,7,10,12,24.4064,39.8631,1.5,59.7947,3.3219,0.0133 +src/supervision/utils/iterables.py,funcao,create_batches,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/utils/iterables.py,funcao,fill,2,4,2,4,6,6,10.0,15.5098,1.0,15.5098,0.8617,0.0052 +src/supervision/utils/iterables.py,funcao,find_duplicates,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/utils/logger.py,funcao,_get_logger,3,5,3,5,8,8,16.3645,24.0,1.5,36.0,2.0,0.008 +src/supervision/utils/notebook.py,funcao,plot_image,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/utils/notebook.py,funcao,plot_images_grid,6,13,7,14,19,21,63.6155,89.2065,3.2308,288.2055,16.0114,0.0297 +src/supervision/utils/video.py,funcao,from_video_path,1,1,1,1,2,2,0,2.0,0.5,1.0,0.0556,0.0007 +src/supervision/utils/video.py,funcao,resolution_wh,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/utils/video.py,funcao,__init__,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/utils/video.py,funcao,__enter__,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/utils/video.py,funcao,write_frame,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/utils/video.py,funcao,__exit__,1,2,1,2,3,3,2.0,4.7549,0.5,2.3774,0.1321,0.0016 +src/supervision/utils/video.py,funcao,_mux_audio,4,7,4,8,11,12,27.6515,41.5132,2.2857,94.8873,5.2715,0.0138 +src/supervision/utils/video.py,funcao,_validate_and_setup_video,5,10,9,16,15,25,44.8289,97.6723,4.0,390.6891,21.7049,0.0326 +src/supervision/utils/video.py,funcao,get_video_frames_generator,6,9,7,12,15,19,44.0391,74.2309,4.0,296.9237,16.4958,0.0247 +src/supervision/utils/video.py,funcao,process_video,5,14,13,23,19,36,64.9126,152.9254,4.1071,628.0864,34.8937,0.051 +src/supervision/utils/video.py,funcao,fps,5,7,5,8,12,13,31.2611,46.6045,2.8571,133.1558,7.3975,0.0155 +src/supervision/utils/video.py,funcao,tick,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/utils/video.py,funcao,reset,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/validators/__init__.py,funcao,_validate_xyxy,3,8,4,8,11,12,28.7549,41.5132,1.5,62.2698,3.4594,0.0138 +src/supervision/validators/__init__.py,funcao,validate_xyxy,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/validators/__init__.py,funcao,_validate_mask,6,14,8,15,20,23,68.8127,99.4043,3.2143,319.514,17.7508,0.0331 +src/supervision/validators/__init__.py,funcao,validate_mask,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/validators/__init__.py,funcao,_validate_class_id,5,9,5,9,14,14,40.139,53.303,2.5,133.2574,7.4032,0.0178 +src/supervision/validators/__init__.py,funcao,validate_class_id,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/validators/__init__.py,funcao,_validate_confidence,5,9,5,9,14,14,40.139,53.303,2.5,133.2574,7.4032,0.0178 +src/supervision/validators/__init__.py,funcao,validate_confidence,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/validators/__init__.py,funcao,_validate_keypoint_confidence,6,14,8,15,20,23,68.8127,99.4043,3.2143,319.514,17.7508,0.0331 +src/supervision/validators/__init__.py,funcao,validate_key_point_confidence,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/validators/__init__.py,funcao,validate_keypoint_confidence,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/validators/__init__.py,funcao,_validate_tracker_id,5,9,5,9,14,14,40.139,53.303,2.5,133.2574,7.4032,0.0178 +src/supervision/validators/__init__.py,funcao,validate_tracker_id,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/validators/__init__.py,funcao,_validate_data,4,10,7,14,14,21,41.2193,79.9545,2.8,223.8725,12.4374,0.0267 +src/supervision/validators/__init__.py,funcao,validate_data,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/validators/__init__.py,funcao,_validate_xy,4,8,4,8,12,12,32.0,43.0196,2.0,86.0391,4.78,0.0143 +src/supervision/validators/__init__.py,funcao,validate_xy,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/validators/__init__.py,funcao,_validate_visible,6,14,8,15,20,23,68.8127,99.4043,3.2143,319.514,17.7508,0.0331 +src/supervision/validators/__init__.py,funcao,_validate_detections_fields,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/validators/__init__.py,funcao,validate_detections_fields,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/validators/__init__.py,funcao,_validate_keypoints_fields,2,5,3,6,7,9,13.6096,25.2662,1.2,30.3194,1.6844,0.0084 +src/supervision/validators/__init__.py,funcao,validate_key_points_fields,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/validators/__init__.py,funcao,validate_keypoints_fields,0,0,0,0,0,0,0,0,0,0,0,0 +src/supervision/validators/__init__.py,funcao,_validate_resolution,5,13,8,14,18,22,59.7154,91.7384,2.6923,246.9879,13.7215,0.0306 +src/supervision/validators/__init__.py,funcao,validate_resolution,0,0,0,0,0,0,0,0,0,0,0,0 diff --git a/metrics-before-radon/mi_antes.json b/metrics-before-radon/mi_antes.json new file mode 100644 index 0000000000..48712f696e --- /dev/null +++ b/metrics-before-radon/mi_antes.json @@ -0,0 +1,322 @@ +{ + "src\\supervision\\config.py": { + "mi": 100.0, + "rank": "A" + }, + "src\\supervision\\__init__.py": { + "mi": 63.74014936937565, + "rank": "A" + }, + "src\\supervision\\annotators\\base.py": { + "mi": 100.0, + "rank": "A" + }, + "src\\supervision\\annotators\\core.py": { + "mi": 0.5164146998336829, + "rank": "C" + }, + "src\\supervision\\annotators\\utils.py": { + "mi": 48.682299587593235, + "rank": "A" + }, + "src\\supervision\\annotators\\__init__.py": { + "mi": 100.0, + "rank": "A" + }, + "src\\supervision\\assets\\downloader.py": { + "mi": 81.65419137342202, + "rank": "A" + }, + "src\\supervision\\assets\\list.py": { + "mi": 100.0, + "rank": "A" + }, + "src\\supervision\\assets\\__init__.py": { + "mi": 100.0, + "rank": "A" + }, + "src\\supervision\\classification\\core.py": { + "mi": 58.06429475373086, + "rank": "A" + }, + "src\\supervision\\classification\\__init__.py": { + "mi": 100.0, + "rank": "A" + }, + "src\\supervision\\dataset\\core.py": { + "mi": 41.66201117496284, + "rank": "A" + }, + "src\\supervision\\dataset\\utils.py": { + "mi": 59.65711155220216, + "rank": "A" + }, + "src\\supervision\\dataset\\__init__.py": { + "mi": 100.0, + "rank": "A" + }, + "src\\supervision\\dataset\\formats\\coco.py": { + "mi": 53.87729296809499, + "rank": "A" + }, + "src\\supervision\\dataset\\formats\\pascal_voc.py": { + "mi": 60.165233236403246, + "rank": "A" + }, + "src\\supervision\\dataset\\formats\\yolo.py": { + "mi": 50.12873587118398, + "rank": "A" + }, + "src\\supervision\\dataset\\formats\\__init__.py": { + "mi": 100.0, + "rank": "A" + }, + "src\\supervision\\detection\\compact_mask.py": { + "mi": 25.26843613160484, + "rank": "A" + }, + "src\\supervision\\detection\\core.py": { + "mi": 15.237819770001131, + "rank": "B" + }, + "src\\supervision\\detection\\line_zone.py": { + "mi": 41.436056464248445, + "rank": "A" + }, + "src\\supervision\\detection\\vlm.py": { + "mi": 30.819235233015647, + "rank": "A" + }, + "src\\supervision\\detection\\__init__.py": { + "mi": 100.0, + "rank": "A" + }, + "src\\supervision\\detection\\tools\\csv_sink.py": { + "mi": 65.84774008907647, + "rank": "A" + }, + "src\\supervision\\detection\\tools\\inference_slicer.py": { + "mi": 48.797899939958214, + "rank": "A" + }, + "src\\supervision\\detection\\tools\\json_sink.py": { + "mi": 66.2655996887249, + "rank": "A" + }, + "src\\supervision\\detection\\tools\\polygon_zone.py": { + "mi": 72.02688936120569, + "rank": "A" + }, + "src\\supervision\\detection\\tools\\smoother.py": { + "mi": 58.7494965444356, + "rank": "A" + }, + "src\\supervision\\detection\\tools\\transformers.py": { + "mi": 70.0376428384057, + "rank": "A" + }, + "src\\supervision\\detection\\tools\\__init__.py": { + "mi": 100.0, + "rank": "A" + }, + "src\\supervision\\detection\\utils\\boxes.py": { + "mi": 35.682912967703025, + "rank": "A" + }, + "src\\supervision\\detection\\utils\\converters.py": { + "mi": 26.896168601464833, + "rank": "A" + }, + "src\\supervision\\detection\\utils\\internal.py": { + "mi": 44.26394876975708, + "rank": "A" + }, + "src\\supervision\\detection\\utils\\iou_and_nms.py": { + "mi": 27.21117341874286, + "rank": "A" + }, + "src\\supervision\\detection\\utils\\masks.py": { + "mi": 50.86542248256843, + "rank": "A" + }, + "src\\supervision\\detection\\utils\\polygons.py": { + "mi": 63.29136737707571, + "rank": "A" + }, + "src\\supervision\\detection\\utils\\vlms.py": { + "mi": 67.2801534822581, + "rank": "A" + }, + "src\\supervision\\detection\\utils\\__init__.py": { + "mi": 100.0, + "rank": "A" + }, + "src\\supervision\\draw\\base.py": { + "mi": 100.0, + "rank": "A" + }, + "src\\supervision\\draw\\color.py": { + "mi": 45.50893596792294, + "rank": "A" + }, + "src\\supervision\\draw\\utils.py": { + "mi": 62.74342158480082, + "rank": "A" + }, + "src\\supervision\\draw\\__init__.py": { + "mi": 100.0, + "rank": "A" + }, + "src\\supervision\\geometry\\core.py": { + "mi": 61.798795509769285, + "rank": "A" + }, + "src\\supervision\\geometry\\utils.py": { + "mi": 71.90618369506942, + "rank": "A" + }, + "src\\supervision\\geometry\\__init__.py": { + "mi": 100.0, + "rank": "A" + }, + "src\\supervision\\keypoint\\annotators.py": { + "mi": 100.0, + "rank": "A" + }, + "src\\supervision\\keypoint\\core.py": { + "mi": 100.0, + "rank": "A" + }, + "src\\supervision\\keypoint\\__init__.py": { + "mi": 100.0, + "rank": "A" + }, + "src\\supervision\\key_points\\annotators.py": { + "mi": 35.96042639704176, + "rank": "A" + }, + "src\\supervision\\key_points\\core.py": { + "mi": 31.50113985312914, + "rank": "A" + }, + "src\\supervision\\key_points\\skeletons.py": { + "mi": 100.0, + "rank": "A" + }, + "src\\supervision\\key_points\\__init__.py": { + "mi": 100.0, + "rank": "A" + }, + "src\\supervision\\metrics\\core.py": { + "mi": 100.0, + "rank": "A" + }, + "src\\supervision\\metrics\\detection.py": { + "mi": 36.88635140244115, + "rank": "A" + }, + "src\\supervision\\metrics\\f1_score.py": { + "mi": 39.18733465418227, + "rank": "A" + }, + "src\\supervision\\metrics\\mean_average_precision.py": { + "mi": 11.372199326424749, + "rank": "B" + }, + "src\\supervision\\metrics\\mean_average_recall.py": { + "mi": 40.35567038143837, + "rank": "A" + }, + "src\\supervision\\metrics\\precision.py": { + "mi": 39.36348041973617, + "rank": "A" + }, + "src\\supervision\\metrics\\recall.py": { + "mi": 40.19381802268339, + "rank": "A" + }, + "src\\supervision\\metrics\\__init__.py": { + "mi": 100.0, + "rank": "A" + }, + "src\\supervision\\metrics\\utils\\object_size.py": { + "mi": 55.24992048623798, + "rank": "A" + }, + "src\\supervision\\metrics\\utils\\utils.py": { + "mi": 100.0, + "rank": "A" + }, + "src\\supervision\\metrics\\utils\\__init__.py": { + "mi": 100.0, + "rank": "A" + }, + "src\\supervision\\tracker\\__init__.py": { + "mi": 100.0, + "rank": "A" + }, + "src\\supervision\\tracker\\byte_tracker\\core.py": { + "mi": 49.8551182058887, + "rank": "A" + }, + "src\\supervision\\tracker\\byte_tracker\\kalman_filter.py": { + "mi": 67.80339634909727, + "rank": "A" + }, + "src\\supervision\\tracker\\byte_tracker\\matching.py": { + "mi": 45.303415801323766, + "rank": "A" + }, + "src\\supervision\\tracker\\byte_tracker\\single_object_track.py": { + "mi": 47.71094969688634, + "rank": "A" + }, + "src\\supervision\\tracker\\byte_tracker\\utils.py": { + "mi": 90.14540124941266, + "rank": "A" + }, + "src\\supervision\\tracker\\byte_tracker\\__init__.py": { + "mi": 100.0, + "rank": "A" + }, + "src\\supervision\\utils\\conversion.py": { + "mi": 100.0, + "rank": "A" + }, + "src\\supervision\\utils\\file.py": { + "mi": 58.74379408220088, + "rank": "A" + }, + "src\\supervision\\utils\\image.py": { + "mi": 40.17591006834741, + "rank": "A" + }, + "src\\supervision\\utils\\internal.py": { + "mi": 68.84898914903948, + "rank": "A" + }, + "src\\supervision\\utils\\iterables.py": { + "mi": 61.66267771103371, + "rank": "A" + }, + "src\\supervision\\utils\\logger.py": { + "mi": 86.56239735560584, + "rank": "A" + }, + "src\\supervision\\utils\\notebook.py": { + "mi": 74.31672637457959, + "rank": "A" + }, + "src\\supervision\\utils\\video.py": { + "mi": 51.64693640752495, + "rank": "A" + }, + "src\\supervision\\utils\\__init__.py": { + "mi": 100.0, + "rank": "A" + }, + "src\\supervision\\validators\\__init__.py": { + "mi": 39.7549289317202, + "rank": "A" + } +} \ No newline at end of file diff --git a/metrics-before-radon/mi_por_arquivo_antes.csv b/metrics-before-radon/mi_por_arquivo_antes.csv new file mode 100644 index 0000000000..b964c7563c --- /dev/null +++ b/metrics-before-radon/mi_por_arquivo_antes.csv @@ -0,0 +1,81 @@ +arquivo,mi,rank_mi +src/supervision/annotators/core.py,0.5164,C +src/supervision/metrics/mean_average_precision.py,11.3722,B +src/supervision/detection/core.py,15.2378,B +src/supervision/detection/compact_mask.py,25.2684,A +src/supervision/detection/utils/converters.py,26.8962,A +src/supervision/detection/utils/iou_and_nms.py,27.2112,A +src/supervision/detection/vlm.py,30.8192,A +src/supervision/key_points/core.py,31.5011,A +src/supervision/detection/utils/boxes.py,35.6829,A +src/supervision/key_points/annotators.py,35.9604,A +src/supervision/metrics/detection.py,36.8864,A +src/supervision/metrics/f1_score.py,39.1873,A +src/supervision/metrics/precision.py,39.3635,A +src/supervision/validators/__init__.py,39.7549,A +src/supervision/utils/image.py,40.1759,A +src/supervision/metrics/recall.py,40.1938,A +src/supervision/metrics/mean_average_recall.py,40.3557,A +src/supervision/detection/line_zone.py,41.4361,A +src/supervision/dataset/core.py,41.662,A +src/supervision/detection/utils/internal.py,44.2639,A +src/supervision/tracker/byte_tracker/matching.py,45.3034,A +src/supervision/draw/color.py,45.5089,A +src/supervision/tracker/byte_tracker/single_object_track.py,47.7109,A +src/supervision/annotators/utils.py,48.6823,A +src/supervision/detection/tools/inference_slicer.py,48.7979,A +src/supervision/tracker/byte_tracker/core.py,49.8551,A +src/supervision/dataset/formats/yolo.py,50.1287,A +src/supervision/detection/utils/masks.py,50.8654,A +src/supervision/utils/video.py,51.6469,A +src/supervision/dataset/formats/coco.py,53.8773,A +src/supervision/metrics/utils/object_size.py,55.2499,A +src/supervision/classification/core.py,58.0643,A +src/supervision/utils/file.py,58.7438,A +src/supervision/detection/tools/smoother.py,58.7495,A +src/supervision/dataset/utils.py,59.6571,A +src/supervision/dataset/formats/pascal_voc.py,60.1652,A +src/supervision/utils/iterables.py,61.6627,A +src/supervision/geometry/core.py,61.7988,A +src/supervision/draw/utils.py,62.7434,A +src/supervision/detection/utils/polygons.py,63.2914,A +src/supervision/__init__.py,63.7401,A +src/supervision/detection/tools/csv_sink.py,65.8477,A +src/supervision/detection/tools/json_sink.py,66.2656,A +src/supervision/detection/utils/vlms.py,67.2802,A +src/supervision/tracker/byte_tracker/kalman_filter.py,67.8034,A +src/supervision/utils/internal.py,68.849,A +src/supervision/detection/tools/transformers.py,70.0376,A +src/supervision/geometry/utils.py,71.9062,A +src/supervision/detection/tools/polygon_zone.py,72.0269,A +src/supervision/utils/notebook.py,74.3167,A +src/supervision/assets/downloader.py,81.6542,A +src/supervision/utils/logger.py,86.5624,A +src/supervision/tracker/byte_tracker/utils.py,90.1454,A +src/supervision/config.py,100.0,A +src/supervision/annotators/base.py,100.0,A +src/supervision/annotators/__init__.py,100.0,A +src/supervision/assets/list.py,100.0,A +src/supervision/assets/__init__.py,100.0,A +src/supervision/classification/__init__.py,100.0,A +src/supervision/dataset/__init__.py,100.0,A +src/supervision/dataset/formats/__init__.py,100.0,A +src/supervision/detection/__init__.py,100.0,A +src/supervision/detection/tools/__init__.py,100.0,A +src/supervision/detection/utils/__init__.py,100.0,A +src/supervision/draw/base.py,100.0,A +src/supervision/draw/__init__.py,100.0,A +src/supervision/geometry/__init__.py,100.0,A +src/supervision/keypoint/annotators.py,100.0,A +src/supervision/keypoint/core.py,100.0,A +src/supervision/keypoint/__init__.py,100.0,A +src/supervision/key_points/skeletons.py,100.0,A +src/supervision/key_points/__init__.py,100.0,A +src/supervision/metrics/core.py,100.0,A +src/supervision/metrics/__init__.py,100.0,A +src/supervision/metrics/utils/utils.py,100.0,A +src/supervision/metrics/utils/__init__.py,100.0,A +src/supervision/tracker/__init__.py,100.0,A +src/supervision/tracker/byte_tracker/__init__.py,100.0,A +src/supervision/utils/conversion.py,100.0,A +src/supervision/utils/__init__.py,100.0,A diff --git a/metrics-before-radon/raw_antes.json b/metrics-before-radon/raw_antes.json new file mode 100644 index 0000000000..302283a314 --- /dev/null +++ b/metrics-before-radon/raw_antes.json @@ -0,0 +1,722 @@ +{ + "src\\supervision\\config.py": { + "loc": 13, + "lloc": 6, + "sloc": 3, + "comments": 10, + "multi": 0, + "blank": 0, + "single_comments": 10 + }, + "src\\supervision\\__init__.py": { + "loc": 287, + "lloc": 39, + "sloc": 283, + "comments": 1, + "multi": 0, + "blank": 3, + "single_comments": 1 + }, + "src\\supervision\\annotators\\base.py": { + "loc": 12, + "lloc": 7, + "sloc": 9, + "comments": 0, + "multi": 0, + "blank": 3, + "single_comments": 0 + }, + "src\\supervision\\annotators\\core.py": { + "loc": 3294, + "lloc": 1020, + "sloc": 1730, + "comments": 28, + "multi": 1141, + "blank": 405, + "single_comments": 18 + }, + "src\\supervision\\annotators\\utils.py": { + "loc": 487, + "lloc": 195, + "sloc": 266, + "comments": 5, + "multi": 129, + "blank": 90, + "single_comments": 2 + }, + "src\\supervision\\annotators\\__init__.py": { + "loc": 0, + "lloc": 0, + "sloc": 0, + "comments": 0, + "multi": 0, + "blank": 0, + "single_comments": 0 + }, + "src\\supervision\\assets\\downloader.py": { + "loc": 95, + "lloc": 42, + "sloc": 46, + "comments": 0, + "multi": 25, + "blank": 24, + "single_comments": 0 + }, + "src\\supervision\\assets\\list.py": { + "loc": 82, + "lloc": 35, + "sloc": 66, + "comments": 2, + "multi": 0, + "blank": 16, + "single_comments": 0 + }, + "src\\supervision\\assets\\__init__.py": { + "loc": 4, + "lloc": 3, + "sloc": 3, + "comments": 0, + "multi": 0, + "blank": 1, + "single_comments": 0 + }, + "src\\supervision\\classification\\core.py": { + "loc": 200, + "lloc": 64, + "sloc": 60, + "comments": 0, + "multi": 94, + "blank": 46, + "single_comments": 0 + }, + "src\\supervision\\classification\\__init__.py": { + "loc": 0, + "lloc": 0, + "sloc": 0, + "comments": 0, + "multi": 0, + "blank": 0, + "single_comments": 0 + }, + "src\\supervision\\dataset\\core.py": { + "loc": 969, + "lloc": 267, + "sloc": 448, + "comments": 2, + "multi": 389, + "blank": 128, + "single_comments": 4 + }, + "src\\supervision\\dataset\\utils.py": { + "loc": 164, + "lloc": 80, + "sloc": 117, + "comments": 3, + "multi": 10, + "blank": 34, + "single_comments": 3 + }, + "src\\supervision\\dataset\\__init__.py": { + "loc": 0, + "lloc": 0, + "sloc": 0, + "comments": 0, + "multi": 0, + "blank": 0, + "single_comments": 0 + }, + "src\\supervision\\dataset\\formats\\coco.py": { + "loc": 621, + "lloc": 194, + "sloc": 339, + "comments": 13, + "multi": 187, + "blank": 82, + "single_comments": 13 + }, + "src\\supervision\\dataset\\formats\\pascal_voc.py": { + "loc": 355, + "lloc": 155, + "sloc": 197, + "comments": 15, + "multi": 88, + "blank": 55, + "single_comments": 15 + }, + "src\\supervision\\dataset\\formats\\yolo.py": { + "loc": 477, + "lloc": 185, + "sloc": 319, + "comments": 2, + "multi": 99, + "blank": 57, + "single_comments": 2 + }, + "src\\supervision\\dataset\\formats\\__init__.py": { + "loc": 0, + "lloc": 0, + "sloc": 0, + "comments": 0, + "multi": 0, + "blank": 0, + "single_comments": 0 + }, + "src\\supervision\\detection\\compact_mask.py": { + "loc": 1306, + "lloc": 434, + "sloc": 477, + "comments": 68, + "multi": 545, + "blank": 224, + "single_comments": 60 + }, + "src\\supervision\\detection\\core.py": { + "loc": 2934, + "lloc": 612, + "sloc": 1748, + "comments": 21, + "multi": 640, + "blank": 534, + "single_comments": 12 + }, + "src\\supervision\\detection\\line_zone.py": { + "loc": 873, + "lloc": 307, + "sloc": 525, + "comments": 2, + "multi": 224, + "blank": 122, + "single_comments": 2 + }, + "src\\supervision\\detection\\vlm.py": { + "loc": 918, + "lloc": 415, + "sloc": 565, + "comments": 13, + "multi": 190, + "blank": 153, + "single_comments": 10 + }, + "src\\supervision\\detection\\__init__.py": { + "loc": 0, + "lloc": 0, + "sloc": 0, + "comments": 0, + "multi": 0, + "blank": 0, + "single_comments": 0 + }, + "src\\supervision\\detection\\tools\\csv_sink.py": { + "loc": 241, + "lloc": 85, + "sloc": 116, + "comments": 0, + "multi": 88, + "blank": 37, + "single_comments": 0 + }, + "src\\supervision\\detection\\tools\\inference_slicer.py": { + "loc": 471, + "lloc": 191, + "sloc": 295, + "comments": 4, + "multi": 107, + "blank": 65, + "single_comments": 4 + }, + "src\\supervision\\detection\\tools\\json_sink.py": { + "loc": 215, + "lloc": 71, + "sloc": 87, + "comments": 0, + "multi": 92, + "blank": 36, + "single_comments": 0 + }, + "src\\supervision\\detection\\tools\\polygon_zone.py": { + "loc": 203, + "lloc": 61, + "sloc": 105, + "comments": 0, + "multi": 70, + "blank": 28, + "single_comments": 0 + }, + "src\\supervision\\detection\\tools\\smoother.py": { + "loc": 184, + "lloc": 57, + "sloc": 58, + "comments": 6, + "multi": 82, + "blank": 38, + "single_comments": 6 + }, + "src\\supervision\\detection\\tools\\transformers.py": { + "loc": 250, + "lloc": 68, + "sloc": 109, + "comments": 0, + "multi": 100, + "blank": 41, + "single_comments": 0 + }, + "src\\supervision\\detection\\tools\\__init__.py": { + "loc": 0, + "lloc": 0, + "sloc": 0, + "comments": 0, + "multi": 0, + "blank": 0, + "single_comments": 0 + }, + "src\\supervision\\detection\\utils\\boxes.py": { + "loc": 417, + "lloc": 100, + "sloc": 108, + "comments": 5, + "multi": 234, + "blank": 71, + "single_comments": 4 + }, + "src\\supervision\\detection\\utils\\converters.py": { + "loc": 738, + "lloc": 195, + "sloc": 189, + "comments": 6, + "multi": 399, + "blank": 146, + "single_comments": 4 + }, + "src\\supervision\\detection\\utils\\internal.py": { + "loc": 417, + "lloc": 202, + "sloc": 274, + "comments": 1, + "multi": 78, + "blank": 64, + "single_comments": 1 + }, + "src\\supervision\\detection\\utils\\iou_and_nms.py": { + "loc": 1453, + "lloc": 527, + "sloc": 700, + "comments": 40, + "multi": 502, + "blank": 215, + "single_comments": 36 + }, + "src\\supervision\\detection\\utils\\masks.py": { + "loc": 426, + "lloc": 153, + "sloc": 304, + "comments": 7, + "multi": 54, + "blank": 64, + "single_comments": 4 + }, + "src\\supervision\\detection\\utils\\polygons.py": { + "loc": 116, + "lloc": 29, + "sloc": 37, + "comments": 2, + "multi": 57, + "blank": 20, + "single_comments": 2 + }, + "src\\supervision\\detection\\utils\\vlms.py": { + "loc": 100, + "lloc": 26, + "sloc": 33, + "comments": 0, + "multi": 51, + "blank": 16, + "single_comments": 0 + }, + "src\\supervision\\detection\\utils\\__init__.py": { + "loc": 0, + "lloc": 0, + "sloc": 0, + "comments": 0, + "multi": 0, + "blank": 0, + "single_comments": 0 + }, + "src\\supervision\\draw\\base.py": { + "loc": 14, + "lloc": 6, + "sloc": 5, + "comments": 0, + "multi": 6, + "blank": 3, + "single_comments": 0 + }, + "src\\supervision\\draw\\color.py": { + "loc": 572, + "lloc": 166, + "sloc": 217, + "comments": 3, + "multi": 237, + "blank": 118, + "single_comments": 0 + }, + "src\\supervision\\draw\\utils.py": { + "loc": 420, + "lloc": 94, + "sloc": 209, + "comments": 6, + "multi": 140, + "blank": 65, + "single_comments": 6 + }, + "src\\supervision\\draw\\__init__.py": { + "loc": 0, + "lloc": 0, + "sloc": 0, + "comments": 0, + "multi": 0, + "blank": 0, + "single_comments": 0 + }, + "src\\supervision\\geometry\\core.py": { + "loc": 202, + "lloc": 82, + "sloc": 77, + "comments": 0, + "multi": 86, + "blank": 39, + "single_comments": 0 + }, + "src\\supervision\\geometry\\utils.py": { + "loc": 51, + "lloc": 15, + "sloc": 14, + "comments": 2, + "multi": 23, + "blank": 12, + "single_comments": 2 + }, + "src\\supervision\\geometry\\__init__.py": { + "loc": 0, + "lloc": 0, + "sloc": 0, + "comments": 0, + "multi": 0, + "blank": 0, + "single_comments": 0 + }, + "src\\supervision\\keypoint\\annotators.py": { + "loc": 13, + "lloc": 3, + "sloc": 11, + "comments": 1, + "multi": 0, + "blank": 2, + "single_comments": 0 + }, + "src\\supervision\\keypoint\\core.py": { + "loc": 8, + "lloc": 3, + "sloc": 6, + "comments": 1, + "multi": 0, + "blank": 2, + "single_comments": 0 + }, + "src\\supervision\\keypoint\\__init__.py": { + "loc": 13, + "lloc": 4, + "sloc": 11, + "comments": 0, + "multi": 0, + "blank": 2, + "single_comments": 0 + }, + "src\\supervision\\key_points\\annotators.py": { + "loc": 972, + "lloc": 332, + "sloc": 471, + "comments": 0, + "multi": 380, + "blank": 117, + "single_comments": 4 + }, + "src\\supervision\\key_points\\core.py": { + "loc": 1294, + "lloc": 367, + "sloc": 702, + "comments": 11, + "multi": 359, + "blank": 227, + "single_comments": 6 + }, + "src\\supervision\\key_points\\skeletons.py": { + "loc": 2646, + "lloc": 15, + "sloc": 2636, + "comments": 0, + "multi": 0, + "blank": 10, + "single_comments": 0 + }, + "src\\supervision\\key_points\\__init__.py": { + "loc": 0, + "lloc": 0, + "sloc": 0, + "comments": 0, + "multi": 0, + "blank": 0, + "single_comments": 0 + }, + "src\\supervision\\metrics\\core.py": { + "loc": 72, + "lloc": 28, + "sloc": 22, + "comments": 0, + "multi": 35, + "blank": 15, + "single_comments": 0 + }, + "src\\supervision\\metrics\\detection.py": { + "loc": 1120, + "lloc": 359, + "sloc": 546, + "comments": 27, + "multi": 415, + "blank": 134, + "single_comments": 25 + }, + "src\\supervision\\metrics\\f1_score.py": { + "loc": 722, + "lloc": 334, + "sloc": 442, + "comments": 12, + "multi": 166, + "blank": 100, + "single_comments": 14 + }, + "src\\supervision\\metrics\\mean_average_precision.py": { + "loc": 1520, + "lloc": 660, + "sloc": 954, + "comments": 138, + "multi": 222, + "blank": 204, + "single_comments": 140 + }, + "src\\supervision\\metrics\\mean_average_recall.py": { + "loc": 706, + "lloc": 321, + "sloc": 439, + "comments": 4, + "multi": 158, + "blank": 103, + "single_comments": 6 + }, + "src\\supervision\\metrics\\precision.py": { + "loc": 735, + "lloc": 333, + "sloc": 450, + "comments": 11, + "multi": 170, + "blank": 102, + "single_comments": 13 + }, + "src\\supervision\\metrics\\recall.py": { + "loc": 689, + "lloc": 322, + "sloc": 428, + "comments": 3, + "multi": 155, + "blank": 101, + "single_comments": 5 + }, + "src\\supervision\\metrics\\__init__.py": { + "loc": 40, + "lloc": 8, + "sloc": 39, + "comments": 0, + "multi": 0, + "blank": 1, + "single_comments": 0 + }, + "src\\supervision\\metrics\\utils\\object_size.py": { + "loc": 241, + "lloc": 85, + "sloc": 86, + "comments": 1, + "multi": 110, + "blank": 44, + "single_comments": 1 + }, + "src\\supervision\\metrics\\utils\\utils.py": { + "loc": 9, + "lloc": 5, + "sloc": 9, + "comments": 1, + "multi": 0, + "blank": 0, + "single_comments": 0 + }, + "src\\supervision\\metrics\\utils\\__init__.py": { + "loc": 0, + "lloc": 0, + "sloc": 0, + "comments": 0, + "multi": 0, + "blank": 0, + "single_comments": 0 + }, + "src\\supervision\\tracker\\__init__.py": { + "loc": 0, + "lloc": 0, + "sloc": 0, + "comments": 0, + "multi": 0, + "blank": 0, + "single_comments": 0 + }, + "src\\supervision\\tracker\\byte_tracker\\core.py": { + "loc": 405, + "lloc": 199, + "sloc": 264, + "comments": 5, + "multi": 63, + "blank": 66, + "single_comments": 12 + }, + "src\\supervision\\tracker\\byte_tracker\\kalman_filter.py": { + "loc": 193, + "lloc": 65, + "sloc": 113, + "comments": 0, + "multi": 49, + "blank": 31, + "single_comments": 0 + }, + "src\\supervision\\tracker\\byte_tracker\\matching.py": { + "loc": 75, + "lloc": 45, + "sloc": 58, + "comments": 0, + "multi": 0, + "blank": 17, + "single_comments": 0 + }, + "src\\supervision\\tracker\\byte_tracker\\single_object_track.py": { + "loc": 186, + "lloc": 137, + "sloc": 140, + "comments": 0, + "multi": 15, + "blank": 30, + "single_comments": 1 + }, + "src\\supervision\\tracker\\byte_tracker\\utils.py": { + "loc": 37, + "lloc": 19, + "sloc": 16, + "comments": 0, + "multi": 12, + "blank": 8, + "single_comments": 1 + }, + "src\\supervision\\tracker\\byte_tracker\\__init__.py": { + "loc": 0, + "lloc": 0, + "sloc": 0, + "comments": 0, + "multi": 0, + "blank": 0, + "single_comments": 0 + }, + "src\\supervision\\utils\\conversion.py": { + "loc": 178, + "lloc": 74, + "sloc": 92, + "comments": 5, + "multi": 41, + "blank": 43, + "single_comments": 2 + }, + "src\\supervision\\utils\\file.py": { + "loc": 211, + "lloc": 72, + "sloc": 67, + "comments": 2, + "multi": 104, + "blank": 40, + "single_comments": 0 + }, + "src\\supervision\\utils\\image.py": { + "loc": 924, + "lloc": 280, + "sloc": 653, + "comments": 8, + "multi": 145, + "blank": 126, + "single_comments": 0 + }, + "src\\supervision\\utils\\internal.py": { + "loc": 208, + "lloc": 57, + "sloc": 77, + "comments": 0, + "multi": 90, + "blank": 41, + "single_comments": 0 + }, + "src\\supervision\\utils\\iterables.py": { + "loc": 103, + "lloc": 30, + "sloc": 28, + "comments": 0, + "multi": 56, + "blank": 19, + "single_comments": 0 + }, + "src\\supervision\\utils\\logger.py": { + "loc": 63, + "lloc": 24, + "sloc": 25, + "comments": 0, + "multi": 23, + "blank": 15, + "single_comments": 0 + }, + "src\\supervision\\utils\\notebook.py": { + "loc": 117, + "lloc": 36, + "sloc": 45, + "comments": 0, + "multi": 50, + "blank": 22, + "single_comments": 0 + }, + "src\\supervision\\utils\\video.py": { + "loc": 509, + "lloc": 206, + "sloc": 295, + "comments": 10, + "multi": 136, + "blank": 70, + "single_comments": 8 + }, + "src\\supervision\\utils\\__init__.py": { + "loc": 0, + "lloc": 0, + "sloc": 0, + "comments": 0, + "multi": 0, + "blank": 0, + "single_comments": 0 + }, + "src\\supervision\\validators\\__init__.py": { + "loc": 363, + "lloc": 151, + "sloc": 291, + "comments": 15, + "multi": 8, + "blank": 61, + "single_comments": 3 + } +} \ No newline at end of file diff --git a/metrics-before-radon/raw_por_arquivo_e_total_antes.csv b/metrics-before-radon/raw_por_arquivo_e_total_antes.csv new file mode 100644 index 0000000000..1256cb864d --- /dev/null +++ b/metrics-before-radon/raw_por_arquivo_e_total_antes.csv @@ -0,0 +1,82 @@ +arquivo,loc,lloc,sloc,comments,multi,blank,single_comments +src/supervision/annotators/__init__.py,0,0,0,0,0,0,0 +src/supervision/classification/__init__.py,0,0,0,0,0,0,0 +src/supervision/dataset/__init__.py,0,0,0,0,0,0,0 +src/supervision/dataset/formats/__init__.py,0,0,0,0,0,0,0 +src/supervision/detection/__init__.py,0,0,0,0,0,0,0 +src/supervision/detection/tools/__init__.py,0,0,0,0,0,0,0 +src/supervision/detection/utils/__init__.py,0,0,0,0,0,0,0 +src/supervision/draw/__init__.py,0,0,0,0,0,0,0 +src/supervision/geometry/__init__.py,0,0,0,0,0,0,0 +src/supervision/key_points/__init__.py,0,0,0,0,0,0,0 +src/supervision/metrics/utils/__init__.py,0,0,0,0,0,0,0 +src/supervision/tracker/__init__.py,0,0,0,0,0,0,0 +src/supervision/tracker/byte_tracker/__init__.py,0,0,0,0,0,0,0 +src/supervision/utils/__init__.py,0,0,0,0,0,0,0 +src/supervision/config.py,13,6,3,10,0,0,10 +src/supervision/assets/__init__.py,4,3,3,0,0,1,0 +src/supervision/draw/base.py,14,6,5,0,6,3,0 +src/supervision/keypoint/core.py,8,3,6,1,0,2,0 +src/supervision/annotators/base.py,12,7,9,0,0,3,0 +src/supervision/metrics/utils/utils.py,9,5,9,1,0,0,0 +src/supervision/keypoint/annotators.py,13,3,11,1,0,2,0 +src/supervision/keypoint/__init__.py,13,4,11,0,0,2,0 +src/supervision/geometry/utils.py,51,15,14,2,23,12,2 +src/supervision/tracker/byte_tracker/utils.py,37,19,16,0,12,8,1 +src/supervision/metrics/core.py,72,28,22,0,35,15,0 +src/supervision/utils/logger.py,63,24,25,0,23,15,0 +src/supervision/utils/iterables.py,103,30,28,0,56,19,0 +src/supervision/detection/utils/vlms.py,100,26,33,0,51,16,0 +src/supervision/detection/utils/polygons.py,116,29,37,2,57,20,2 +src/supervision/metrics/__init__.py,40,8,39,0,0,1,0 +src/supervision/utils/notebook.py,117,36,45,0,50,22,0 +src/supervision/assets/downloader.py,95,42,46,0,25,24,0 +src/supervision/detection/tools/smoother.py,184,57,58,6,82,38,6 +src/supervision/tracker/byte_tracker/matching.py,75,45,58,0,0,17,0 +src/supervision/classification/core.py,200,64,60,0,94,46,0 +src/supervision/assets/list.py,82,35,66,2,0,16,0 +src/supervision/utils/file.py,211,72,67,2,104,40,0 +src/supervision/geometry/core.py,202,82,77,0,86,39,0 +src/supervision/utils/internal.py,208,57,77,0,90,41,0 +src/supervision/metrics/utils/object_size.py,241,85,86,1,110,44,1 +src/supervision/detection/tools/json_sink.py,215,71,87,0,92,36,0 +src/supervision/utils/conversion.py,178,74,92,5,41,43,2 +src/supervision/detection/tools/polygon_zone.py,203,61,105,0,70,28,0 +src/supervision/detection/utils/boxes.py,417,100,108,5,234,71,4 +src/supervision/detection/tools/transformers.py,250,68,109,0,100,41,0 +src/supervision/tracker/byte_tracker/kalman_filter.py,193,65,113,0,49,31,0 +src/supervision/detection/tools/csv_sink.py,241,85,116,0,88,37,0 +src/supervision/dataset/utils.py,164,80,117,3,10,34,3 +src/supervision/tracker/byte_tracker/single_object_track.py,186,137,140,0,15,30,1 +src/supervision/detection/utils/converters.py,738,195,189,6,399,146,4 +src/supervision/dataset/formats/pascal_voc.py,355,155,197,15,88,55,15 +src/supervision/draw/utils.py,420,94,209,6,140,65,6 +src/supervision/draw/color.py,572,166,217,3,237,118,0 +src/supervision/tracker/byte_tracker/core.py,405,199,264,5,63,66,12 +src/supervision/annotators/utils.py,487,195,266,5,129,90,2 +src/supervision/detection/utils/internal.py,417,202,274,1,78,64,1 +src/supervision/__init__.py,287,39,283,1,0,3,1 +src/supervision/validators/__init__.py,363,151,291,15,8,61,3 +src/supervision/detection/tools/inference_slicer.py,471,191,295,4,107,65,4 +src/supervision/utils/video.py,509,206,295,10,136,70,8 +src/supervision/detection/utils/masks.py,426,153,304,7,54,64,4 +src/supervision/dataset/formats/yolo.py,477,185,319,2,99,57,2 +src/supervision/dataset/formats/coco.py,621,194,339,13,187,82,13 +src/supervision/metrics/recall.py,689,322,428,3,155,101,5 +src/supervision/metrics/mean_average_recall.py,706,321,439,4,158,103,6 +src/supervision/metrics/f1_score.py,722,334,442,12,166,100,14 +src/supervision/dataset/core.py,969,267,448,2,389,128,4 +src/supervision/metrics/precision.py,735,333,450,11,170,102,13 +src/supervision/key_points/annotators.py,972,332,471,0,380,117,4 +src/supervision/detection/compact_mask.py,1306,434,477,68,545,224,60 +src/supervision/detection/line_zone.py,873,307,525,2,224,122,2 +src/supervision/metrics/detection.py,1120,359,546,27,415,134,25 +src/supervision/detection/vlm.py,918,415,565,13,190,153,10 +src/supervision/utils/image.py,924,280,653,8,145,126,0 +src/supervision/detection/utils/iou_and_nms.py,1453,527,700,40,502,215,36 +src/supervision/key_points/core.py,1294,367,702,11,359,227,6 +src/supervision/metrics/mean_average_precision.py,1520,660,954,138,222,204,140 +src/supervision/annotators/core.py,3294,1020,1730,28,1141,405,18 +src/supervision/detection/core.py,2934,612,1748,21,640,534,12 +src/supervision/key_points/skeletons.py,2646,15,2636,0,0,10,0 +TOTAL,33953,10762,19554,522,9129,4808,462 diff --git a/src/supervision/annotators/core.py b/src/supervision/annotators/core.py index 8336e11ab8..d189f1da39 100644 --- a/src/supervision/annotators/core.py +++ b/src/supervision/annotators/core.py @@ -1,5 +1,6 @@ from __future__ import annotations +from dataclasses import dataclass from functools import lru_cache from math import sqrt from typing import Any, cast, overload @@ -80,24 +81,22 @@ def _normalize_color_input(color: Color | ColorPalette | str) -> Color | ColorPa CV2_FONT = cv2.FONT_HERSHEY_SIMPLEX +@dataclass +class _LabelAnnotatorConfig: + color: Color | ColorPalette + color_lookup: ColorLookup + text_color: Color | ColorPalette + text_padding: int + text_anchor: Position + text_offset: tuple[int, int] + border_radius: int + smart_position: bool + max_line_length: int | None + + class _BaseLabelAnnotator(BaseAnnotator): """ Base class for annotators that add labels to detections. - - Attributes: - color: The color to use for the label background. - color_lookup: The method used to determine the color of the label. - text_color: The color to use for the label text. - text_padding: The padding around the label text, in pixels. - text_anchor: The position of the text relative to the detection - bounding box. - text_offset: A tuple of 2D coordinates `(x, y)` to - offset the text position from the anchor point, in pixels. - border_radius: The radius of the label background corners, in pixels. - smart_position: Whether to intelligently adjust the label position to - avoid overlapping with other elements. - max_line_length: Maximum number of characters per line before - wrapping the text. None means no wrapping. """ def __init__( @@ -134,15 +133,89 @@ def __init__( max_line_length: Maximum number of characters per line before wrapping the text. None means no wrapping. """ - self.color: Color | ColorPalette = _normalize_color_input(color) - self.color_lookup: ColorLookup = color_lookup - self.text_color: Color | ColorPalette = _normalize_color_input(text_color) - self.text_padding: int = text_padding - self.text_anchor: Position = text_position - self.text_offset: tuple[int, int] = text_offset - self.border_radius: int = border_radius - self.smart_position = smart_position - self.max_line_length: int | None = max_line_length + self._config: _LabelAnnotatorConfig = _LabelAnnotatorConfig( + color=_normalize_color_input(color), + color_lookup=color_lookup, + text_color=_normalize_color_input(text_color), + text_padding=text_padding, + text_anchor=text_position, + text_offset=text_offset, + border_radius=border_radius, + smart_position=smart_position, + max_line_length=max_line_length, + ) + + @property + def color(self) -> Color | ColorPalette: + return self._config.color + + @color.setter + def color(self, value: Color | ColorPalette | str) -> None: + self._config.color = _normalize_color_input(value) + + @property + def color_lookup(self) -> ColorLookup: + return self._config.color_lookup + + @color_lookup.setter + def color_lookup(self, value: ColorLookup) -> None: + self._config.color_lookup = value + + @property + def text_color(self) -> Color | ColorPalette: + return self._config.text_color + + @text_color.setter + def text_color(self, value: Color | ColorPalette | str) -> None: + self._config.text_color = _normalize_color_input(value) + + @property + def text_padding(self) -> int: + return self._config.text_padding + + @text_padding.setter + def text_padding(self, value: int) -> None: + self._config.text_padding = value + + @property + def text_anchor(self) -> Position: + return self._config.text_anchor + + @text_anchor.setter + def text_anchor(self, value: Position) -> None: + self._config.text_anchor = value + + @property + def text_offset(self) -> tuple[int, int]: + return self._config.text_offset + + @text_offset.setter + def text_offset(self, value: tuple[int, int]) -> None: + self._config.text_offset = value + + @property + def border_radius(self) -> int: + return self._config.border_radius + + @border_radius.setter + def border_radius(self, value: int) -> None: + self._config.border_radius = value + + @property + def smart_position(self) -> bool: + return self._config.smart_position + + @smart_position.setter + def smart_position(self, value: bool) -> None: + self._config.smart_position = value + + @property + def max_line_length(self) -> int | None: + return self._config.max_line_length + + @max_line_length.setter + def max_line_length(self, value: int | None) -> None: + self._config.max_line_length = value def _adjust_labels_in_frame( self, @@ -1309,7 +1382,7 @@ def annotate( detections, labels ) - if self.smart_position: + if self._config.smart_position: xyxy = label_properties[:, :4] xyxy = spread_out_boxes(xyxy) label_properties[:, :4] = xyxy @@ -1337,16 +1410,16 @@ def _get_label_properties( ) -> Any: label_properties = [] anchors_coordinates: npt.NDArray[np.int32] = detections.get_anchors_coordinates( - anchor=self.text_anchor + anchor=self._config.text_anchor ).astype(int) for label, center_coordinates in zip(labels, anchors_coordinates): center_coordinates = ( - center_coordinates[0] + self.text_offset[0], - center_coordinates[1] + self.text_offset[1], + center_coordinates[0] + self._config.text_offset[0], + center_coordinates[1] + self._config.text_offset[1], ) - wrapped_lines = wrap_text(label, self.max_line_length) + wrapped_lines = wrap_text(label, self._config.max_line_length) line_heights = [] line_widths = [] @@ -1363,17 +1436,17 @@ def _get_label_properties( # Get the maximum width and total height max_width = max(line_widths) if line_widths else 0 total_height = ( - sum(line_heights) + (len(line_heights) - 1) * self.text_padding + sum(line_heights) + (len(line_heights) - 1) * self._config.text_padding ) # Add padding around all sides - width_padded = max_width + 2 * self.text_padding - height_padded = total_height + 2 * self.text_padding + width_padded = max_width + 2 * self._config.text_padding + height_padded = total_height + 2 * self._config.text_padding text_background_xyxy = resolve_text_background_xyxy( center_coordinates=center_coordinates, text_wh=(width_padded, height_padded), - position=self.text_anchor, + position=self._config.text_anchor, ) label_properties.append( @@ -1401,18 +1474,18 @@ def _draw_labels( color_lookup = ( custom_color_lookup if custom_color_lookup is not None - else self.color_lookup + else self._config.color_lookup ) for idx, label_property in enumerate(label_properties): background_color = resolve_color( - color=self.color, + color=self._config.color, detections=detections, detection_idx=idx, color_lookup=color_lookup, ) text_color = resolve_color( - color=self.text_color, + color=self._config.text_color, detections=detections, detection_idx=idx, color_lookup=color_lookup, @@ -1424,12 +1497,12 @@ def _draw_labels( scene=scene, xyxy=box_xyxy, color=background_color.as_bgr(), - border_radius=self.border_radius, + border_radius=self._config.border_radius, ) # Handle multiline text - wrapped_lines = wrap_text(labels[idx], self.max_line_length) - current_y = box_xyxy[1] + self.text_padding # Start y position + wrapped_lines = wrap_text(labels[idx], self._config.max_line_length) + current_y = box_xyxy[1] + self._config.text_padding # Start y position for line in wrapped_lines: if not line: @@ -1440,7 +1513,7 @@ def _draw_labels( fontScale=self.text_scale, thickness=self.text_thickness, )[0] - current_y += text_h + self.text_padding + current_y += text_h + self._config.text_padding continue (_, text_h) = cv2.getTextSize( @@ -1450,7 +1523,7 @@ def _draw_labels( thickness=self.text_thickness, )[0] - text_x = box_xyxy[0] + self.text_padding + text_x = box_xyxy[0] + self._config.text_padding text_y = current_y + text_h # Add height to get to text baseline cv2.putText( @@ -1464,7 +1537,7 @@ def _draw_labels( lineType=cv2.LINE_AA, ) - current_y += text_h + self.text_padding # Move to next line position + current_y += text_h + self._config.text_padding # Move to next line position @staticmethod def draw_rounded_rectangle( @@ -1625,7 +1698,7 @@ def annotate( draw, detections, labels ) - if self.smart_position: + if self._config.smart_position: xyxy = label_properties[:, :4] xyxy = spread_out_boxes(xyxy) label_properties[:, :4] = xyxy @@ -1652,16 +1725,16 @@ def _get_label_properties( label_properties = [] anchor_coordinates: npt.NDArray[np.int32] = detections.get_anchors_coordinates( - anchor=self.text_anchor + anchor=self._config.text_anchor ).astype(int) for label, center_coordinates in zip(labels, anchor_coordinates): center_coordinates = ( - center_coordinates[0] + self.text_offset[0], - center_coordinates[1] + self.text_offset[1], + center_coordinates[0] + self._config.text_offset[0], + center_coordinates[1] + self._config.text_offset[1], ) - wrapped_lines = wrap_text(label, self.max_line_length) + wrapped_lines = wrap_text(label, self._config.max_line_length) # Calculate the total text height and maximum width max_width = 0.0 @@ -1677,15 +1750,15 @@ def _get_label_properties( # Add inter-line spacing if len(wrapped_lines) > 1: - total_height += (len(wrapped_lines) - 1) * self.text_padding + total_height += (len(wrapped_lines) - 1) * self._config.text_padding - width_padded = int(max_width + 2 * self.text_padding) - height_padded = int(total_height + 2 * self.text_padding) + width_padded = int(max_width + 2 * self._config.text_padding) + height_padded = int(total_height + 2 * self._config.text_padding) text_background_xyxy = resolve_text_background_xyxy( center_coordinates=center_coordinates, text_wh=(width_padded, height_padded), - position=self.text_anchor, + position=self._config.text_anchor, ) # Get the text origin offsets @@ -1714,18 +1787,18 @@ def _draw_labels( color_lookup = ( custom_color_lookup if custom_color_lookup is not None - else self.color_lookup + else self._config.color_lookup ) for idx, label_property in enumerate(label_properties): background_color = resolve_color( - color=self.color, + color=self._config.color, detections=detections, detection_idx=idx, color_lookup=color_lookup, ) text_color = resolve_color( - color=self.text_color, + color=self._config.text_color, detections=detections, detection_idx=idx, color_lookup=color_lookup, @@ -1738,15 +1811,15 @@ def _draw_labels( # Draw the rounded rectangle background draw.rounded_rectangle( tuple(box_xyxy), - radius=self.border_radius, + radius=self._config.border_radius, fill=background_color.as_rgb(), outline=None, ) # Draw each line of text - wrapped_lines = wrap_text(labels[idx], self.max_line_length) - x_position = box_xyxy[0] + self.text_padding - text_left - y_position = box_xyxy[1] + self.text_padding - text_top + wrapped_lines = wrap_text(labels[idx], self._config.max_line_length) + x_position = box_xyxy[0] + self._config.text_padding - text_left + y_position = box_xyxy[1] + self._config.text_padding - text_top for line in wrapped_lines: draw.text( @@ -1759,7 +1832,7 @@ def _draw_labels( # Move to the next line position _left, top, _right, bottom = draw.textbbox((0, 0), line, font=self.font) line_height = bottom - top - y_position += line_height + self.text_padding + y_position += line_height + self._config.text_padding @staticmethod def _load_font( @@ -3029,6 +3102,18 @@ def annotate(self, scene: ImageType, detections: Detections) -> ImageType: return scene +@dataclass(frozen=True) +class _ComparisonAnnotatorConfig: + color_1: Color + color_2: Color + color_overlap: Color + opacity: float + label_1: str + label_2: str + label_overlap: str + label_scale: float + + class ComparisonAnnotator: """ Highlights the differences between two sets of detections. @@ -3066,16 +3151,16 @@ def __init__( label_scale: Controls how large the labels are. """ - self.color_1 = color_1 - self.color_2 = color_2 - self.color_overlap = color_overlap - - self.opacity = opacity - self.label_1 = label_1 - self.label_2 = label_2 - self.label_overlap = label_overlap - self.label_scale = label_scale - self.text_thickness = int(self.label_scale + 1.2) + self.config = _ComparisonAnnotatorConfig( + color_1=color_1, + color_2=color_2, + color_overlap=color_overlap, + opacity=opacity, + label_1=label_1, + label_2=label_2, + label_overlap=label_overlap, + label_scale=label_scale, + ) @ensure_cv2_image_for_class_method def annotate( @@ -3139,19 +3224,19 @@ def annotate( mask_2 = mask_2 & ~mask_overlap color_layer = np.zeros_like(scene, dtype=np.uint8) - color_layer[mask_overlap] = self.color_overlap.as_bgr() - color_layer[mask_1] = self.color_1.as_bgr() - color_layer[mask_2] = self.color_2.as_bgr() + color_layer[mask_overlap] = self.config.color_overlap.as_bgr() + color_layer[mask_1] = self.config.color_1.as_bgr() + color_layer[mask_2] = self.config.color_2.as_bgr() - scene[mask_overlap] = (1 - self.opacity) * scene[ + scene[mask_overlap] = (1 - self.config.opacity) * scene[ mask_overlap - ] + self.opacity * color_layer[mask_overlap] - scene[mask_1] = (1 - self.opacity) * scene[mask_1] + self.opacity * color_layer[ - mask_1 - ] - scene[mask_2] = (1 - self.opacity) * scene[mask_2] + self.opacity * color_layer[ - mask_2 - ] + ] + self.config.opacity * color_layer[mask_overlap] + scene[mask_1] = (1 - self.config.opacity) * scene[mask_1] + ( + self.config.opacity * color_layer[mask_1] + ) + scene[mask_2] = (1 - self.config.opacity) * scene[mask_2] + ( + self.config.opacity * color_layer[mask_2] + ) self._draw_labels(scene) @@ -3231,21 +3316,24 @@ def _draw_labels(self, scene: npt.NDArray[np.uint8]) -> None: Args: scene: The image where the labels will be drawn. """ - margin = int(50 * self.label_scale) - gap = int(40 * self.label_scale) - y0 = int(50 * self.label_scale) - height = int(50 * self.label_scale) + label_scale = self.config.label_scale + text_thickness = int(label_scale + 1.2) + + margin = int(50 * label_scale) + gap = int(40 * label_scale) + y0 = int(50 * label_scale) + height = int(50 * label_scale) - marker_size = int(20 * self.label_scale) - padding = int(10 * self.label_scale) - text_box_corner_radius = int(10 * self.label_scale) - marker_corner_radius = int(4 * self.label_scale) - text_scale = self.label_scale + marker_size = int(20 * label_scale) + padding = int(10 * label_scale) + text_box_corner_radius = int(10 * label_scale) + marker_corner_radius = int(4 * label_scale) + text_scale = label_scale label_color_pairs = [ - (self.label_1, self.color_1), - (self.label_2, self.color_2), - (self.label_overlap, self.color_overlap), + (self.config.label_1, self.config.color_1), + (self.config.label_2, self.config.color_2), + (self.config.label_overlap, self.config.color_overlap), ] x0 = margin @@ -3256,8 +3344,8 @@ def _draw_labels(self, scene: npt.NDArray[np.uint8]) -> None: (text_w, _) = cv2.getTextSize( text=text, fontFace=CV2_FONT, - fontScale=self.label_scale, - thickness=self.text_thickness, + fontScale=label_scale, + thickness=text_thickness, )[0] width = text_w + marker_size + padding * 4 @@ -3288,7 +3376,7 @@ def _draw_labels(self, scene: npt.NDArray[np.uint8]) -> None: text, text_anchor=Point(x=center_x + marker_size, y=center_y), text_scale=text_scale, - text_thickness=self.text_thickness, + text_thickness=text_thickness, ) x0 += width + gap diff --git a/src/supervision/dataset/formats/coco.py b/src/supervision/dataset/formats/coco.py index d1d1568f3a..7b892a4ce3 100644 --- a/src/supervision/dataset/formats/coco.py +++ b/src/supervision/dataset/formats/coco.py @@ -24,6 +24,7 @@ from supervision.dataset.core import DetectionDataset CocoDict = dict[str, Any] +CocoSegmentation = Union[list[list[float]], dict[str, list[int]]] def coco_categories_to_classes(coco_categories: list[CocoDict]) -> list[str]: @@ -214,6 +215,71 @@ def coco_annotations_to_detections( ) +def _build_coco_segmentation_from_mask( + mask: npt.NDArray[np.bool_], + data: dict[str, Any], + min_image_area_percentage: float, + max_image_area_percentage: float, + approximation_percentage: float, + annotation_id: int, +) -> tuple[CocoSegmentation, int]: + if "iscrowd" in data: + iscrowd = int(np.asarray(data["iscrowd"]).item()) + else: + iscrowd = int( + contains_holes(mask=mask) or contains_multiple_segments(mask=mask) + ) + + if iscrowd: + return ( + { + "counts": cast(list[int], mask_to_rle(mask=mask, compressed=False)), + "size": list(mask.shape[:2]), + }, + iscrowd, + ) + + polygons = approximate_mask_with_polygons( + mask=mask, + min_image_area_percentage=min_image_area_percentage, + max_image_area_percentage=max_image_area_percentage, + approximation_percentage=approximation_percentage, + ) + # Small/noisy masks can be filtered out by approximation settings. + # Guard against empty output and keep a valid COCO annotation record. + if polygons: + # Export ALL polygons so disjoint mask components are preserved. + segmentation: CocoSegmentation = [list(p.flatten()) for p in polygons] + else: + warnings.warn( + "Skipping COCO polygon segmentation for annotation " + f"id={annotation_id} because mask approximation " + "returned no polygons.", + stacklevel=2, + ) + segmentation = cast(CocoSegmentation, []) + + return segmentation, iscrowd + + +def _build_coco_segmentation_from_raw_data(data: dict[str, Any]) -> CocoSegmentation: + raw_seg = data.get(COCO_RAW_SEGMENTATION) + if raw_seg is None or not bool(raw_seg): + return cast(CocoSegmentation, []) + + if isinstance(raw_seg, dict): + # RLE format - pass through unchanged. + return raw_seg + + if isinstance(raw_seg, list) and raw_seg and not isinstance( + raw_seg[0], (list, tuple) + ): + # Flat list shorthand [x1,y1,...] - wrap to list-of-lists. + return [list(raw_seg)] + + return list(raw_seg) + + def detections_to_coco_annotations( detections: Detections, image_id: int, @@ -283,61 +349,22 @@ def detections_to_coco_annotations( if class_id is None: raise ValueError("Detections must include class_id for COCO export.") box_width, box_height = xyxy[2] - xyxy[0], xyxy[3] - xyxy[1] - segmentation: Union[list[list[float]], dict[str, list[int]]] = [] + segmentation: CocoSegmentation = cast(CocoSegmentation, []) if mask is not None: mask_bool = cast(npt.NDArray[np.bool_], mask) - if "iscrowd" in data: - iscrowd = int(np.asarray(data["iscrowd"]).item()) - else: - iscrowd = int( - contains_holes(mask=mask_bool) - or contains_multiple_segments(mask=mask_bool) - ) - - if iscrowd: - segmentation = { - "counts": cast( - list[int], mask_to_rle(mask=mask_bool, compressed=False) - ), - "size": list(mask.shape[:2]), - } - else: - polygons = approximate_mask_with_polygons( - mask=mask_bool, - min_image_area_percentage=min_image_area_percentage, - max_image_area_percentage=max_image_area_percentage, - approximation_percentage=approximation_percentage, - ) - # Small/noisy masks can be filtered out by approximation settings. - # Guard against empty output and keep a valid COCO annotation record. - if polygons: - # Export ALL polygons so disjoint mask components are preserved. - segmentation = [list(p.flatten()) for p in polygons] - else: - warnings.warn( - "Skipping COCO polygon segmentation for annotation " - f"id={annotation_id} because mask approximation " - "returned no polygons.", - stacklevel=2, - ) + segmentation, iscrowd = _build_coco_segmentation_from_mask( + mask=mask_bool, + data=data, + min_image_area_percentage=min_image_area_percentage, + max_image_area_percentage=max_image_area_percentage, + approximation_percentage=approximation_percentage, + annotation_id=annotation_id, + ) else: iscrowd = int(np.asarray(data.get("iscrowd", 0)).item()) # When masks were not decoded during loading, fall back to the raw # polygon/RLE stored in data["segmentation"] for a lossless round-trip. - raw_seg = data.get(COCO_RAW_SEGMENTATION) - if raw_seg is not None and bool(raw_seg): - if isinstance(raw_seg, dict): - # RLE format — pass through unchanged - segmentation = raw_seg - elif ( - isinstance(raw_seg, list) - and raw_seg - and not isinstance(raw_seg[0], (list, tuple)) - ): - # Flat list shorthand [x1,y1,...] — wrap to list-of-lists - segmentation = [list(raw_seg)] - else: - segmentation = list(raw_seg) + segmentation = _build_coco_segmentation_from_raw_data(data=data) area: float = float(np.asarray(data.get("area", box_width * box_height)).item()) coco_annotation = { diff --git a/src/supervision/detection/core.py b/src/supervision/detection/core.py index 7832808fee..3d4ed0215b 100644 --- a/src/supervision/detection/core.py +++ b/src/supervision/detection/core.py @@ -772,55 +772,25 @@ def from_sam3( confidences = [] class_ids = [] - if isinstance(sam3_result, dict): - prompt_results = sam3_result.get("prompt_results", []) - if not prompt_results and "predictions" in sam3_result: - prompt_results = [ - {"predictions": sam3_result["predictions"], "prompt_index": 0} - ] - else: - prompt_results = getattr(sam3_result, "prompt_results", []) - if not prompt_results and hasattr(sam3_result, "predictions"): - prompt_results = [ - { - "predictions": getattr(sam3_result, "predictions"), - "prompt_index": 0, - } - ] + prompt_results = _normalize_sam3_prompt_results(sam3_result) for i, prompt_result in enumerate(prompt_results): - if isinstance(prompt_result, dict): - predictions = prompt_result.get("predictions", []) - prompt_index = prompt_result.get("prompt_index", i) - else: - predictions = getattr(prompt_result, "predictions", []) - prompt_index = getattr(prompt_result, "prompt_index", i) + predictions, prompt_index = _normalize_sam3_prompt_result( + prompt_result=prompt_result, + fallback_index=i, + ) for prediction in predictions: - if isinstance(prediction, dict): - prediction_format = prediction.get("format") - if prediction_format and prediction_format != "polygon": - continue - pred_masks = prediction.get("masks", []) - confidence = prediction.get("confidence", 1.0) - else: - prediction_format = getattr(prediction, "format", None) - if prediction_format and prediction_format != "polygon": - continue - pred_masks = getattr(prediction, "masks", []) - confidence = getattr(prediction, "confidence", 1.0) - - if not pred_masks: + prediction_payload = _normalize_sam3_prediction(prediction) + if prediction_payload is None: continue - full_mask: npt.NDArray[np.bool_] = np.zeros((height, width), dtype=bool) - for poly in pred_masks: - polygon = np.array(poly, dtype=np.int32) - mask = polygon_to_mask( - polygon=polygon, resolution_wh=(width, height) - ) - mask = mask.astype(bool, copy=False) - np.logical_or(full_mask, mask, out=full_mask) + pred_masks, confidence = prediction_payload + + full_mask = _build_sam3_mask( + pred_masks=pred_masks, + resolution_wh=(width, height), + ) masks.append(full_mask) confidences.append(confidence) @@ -2899,6 +2869,62 @@ def merge_inner_detections_objects_without_iou( return reduce(merge_inner_detection_object_pair, detections) +def _get_sam3_value(source: dict[str, Any] | Any, key: str, default: Any) -> Any: + if isinstance(source, dict): + return source.get(key, default) + return getattr(source, key, default) + + +def _normalize_sam3_prompt_results(sam3_result: dict[str, Any] | Any) -> list[Any]: + prompt_results = _get_sam3_value(sam3_result, "prompt_results", []) + if prompt_results: + return list(prompt_results) + + predictions = _get_sam3_value(sam3_result, "predictions", []) + if predictions: + return [{"predictions": predictions, "prompt_index": 0}] + + return [] + + +def _normalize_sam3_prompt_result( + prompt_result: dict[str, Any] | Any, fallback_index: int +) -> tuple[list[Any], int]: + predictions = _get_sam3_value(prompt_result, "predictions", []) + prompt_index = _get_sam3_value(prompt_result, "prompt_index", fallback_index) + return list(predictions), prompt_index + + +def _normalize_sam3_prediction( + prediction: dict[str, Any] | Any, +) -> tuple[list[Any], float] | None: + prediction_format = _get_sam3_value(prediction, "format", None) + if prediction_format and prediction_format != "polygon": + return None + + pred_masks = _get_sam3_value(prediction, "masks", []) + if pred_masks is None or len(pred_masks) == 0: + return None + + confidence = _get_sam3_value(prediction, "confidence", 1.0) + return list(pred_masks), confidence + + +def _build_sam3_mask( + pred_masks: list[Any], resolution_wh: tuple[int, int] +) -> npt.NDArray[np.bool_]: + width, height = resolution_wh + full_mask: npt.NDArray[np.bool_] = np.zeros((height, width), dtype=bool) + + for poly in pred_masks: + polygon = np.asarray(poly, dtype=np.int32) + mask = polygon_to_mask(polygon=polygon, resolution_wh=(width, height)) + mask = mask.astype(bool, copy=False) + np.logical_or(full_mask, mask, out=full_mask) + + return full_mask + + def _validate_fields_both_defined_or_none( detections_1: Detections, detections_2: Detections ) -> None: diff --git a/src/supervision/detection/line_zone.py b/src/supervision/detection/line_zone.py index 3178fca24a..611cdd2cac 100644 --- a/src/supervision/detection/line_zone.py +++ b/src/supervision/detection/line_zone.py @@ -2,6 +2,7 @@ import math import warnings +from dataclasses import dataclass from collections import Counter, defaultdict, deque from collections.abc import Iterable from functools import lru_cache @@ -23,6 +24,52 @@ TEXT_MARGIN = 10 +@dataclass(slots=True) +class LineZoneAnnotatorConfig: + thickness: int = 2 + color: Color = Color.WHITE + text_thickness: int = 2 + text_color: Color = Color.BLACK + text_scale: float = 0.5 + text_offset: float = 1.5 + text_padding: int = 10 + in_text: str = "in" + out_text: str = "out" + display_in_count: bool = True + display_out_count: bool = True + display_text_box: bool = True + text_orient_to_line: bool = False + text_centered: bool = True + + +@dataclass(slots=True) +class LineZoneAnnotatorMulticlassConfig: + table_position: Literal[ + Position.TOP_LEFT, + Position.TOP_RIGHT, + Position.BOTTOM_LEFT, + Position.BOTTOM_RIGHT, + ] = Position.TOP_RIGHT + table_color: Color = Color.WHITE + table_margin: int = 10 + table_padding: int = 10 + table_max_width: int = 400 + text_color: Color = Color.BLACK + text_scale: float = 0.75 + text_thickness: int = 1 + force_draw_class_ids: bool = False + + +def _multiclass_config_property(field_name: str) -> property: + def getter(self: "LineZoneAnnotatorMulticlass") -> Any: + return getattr(self._config, field_name) + + def setter(self: "LineZoneAnnotatorMulticlass", value: Any) -> None: + setattr(self._config, field_name, value) + + return property(getter, setter) + + class LineZone: """ This class is responsible for counting the number of objects that cross a @@ -115,9 +162,9 @@ def __init__( """ self.vector = Vector(start=start, end=end) self.limits = self._calculate_region_of_interest_limits(vector=self.vector) - self.crossing_history_length = max(2, minimum_crossing_threshold + 1) + crossing_history_length = max(2, minimum_crossing_threshold + 1) self.crossing_state_history: dict[tuple[int, int | None], deque[bool]] = ( - defaultdict(lambda: deque(maxlen=self.crossing_history_length)) + defaultdict(lambda: deque(maxlen=crossing_history_length)) ) self._in_count_per_class: Counter[int | None] = Counter() self._out_count_per_class: Counter[int | None] = Counter() @@ -197,7 +244,10 @@ def trigger( crossing_history = self.crossing_state_history[(tracker_id, class_id)] crossing_history.append(tracker_state) - if len(crossing_history) < self.crossing_history_length: + crossing_history_maxlen = crossing_history.maxlen + assert crossing_history_maxlen is not None + + if len(crossing_history) < crossing_history_maxlen: continue oldest_state = crossing_history[0] @@ -368,20 +418,22 @@ def __init__( when the label overlaps something important. """ - self.thickness: int = thickness - self.color: Color = color - self.text_thickness: int = text_thickness - self.text_color: Color = text_color - self.text_scale: float = text_scale - self.text_offset: float = text_offset - self.text_padding: int = text_padding - self.in_text: str = custom_in_text if custom_in_text else "in" - self.out_text: str = custom_out_text if custom_out_text else "out" - self.display_in_count: bool = display_in_count - self.display_out_count: bool = display_out_count - self.display_text_box: bool = display_text_box - self.text_orient_to_line: bool = text_orient_to_line - self.text_centered: bool = text_centered + self._config = LineZoneAnnotatorConfig( + thickness=thickness, + color=color, + text_thickness=text_thickness, + text_color=text_color, + text_scale=text_scale, + text_offset=text_offset, + text_padding=text_padding, + in_text=custom_in_text if custom_in_text else "in", + out_text=custom_out_text if custom_out_text else "out", + display_in_count=display_in_count, + display_out_count=display_out_count, + display_text_box=display_text_box, + text_orient_to_line=text_orient_to_line, + text_centered=text_centered, + ) def annotate( self, frame: npt.NDArray[np.uint8], line_counter: LineZone @@ -399,12 +451,13 @@ def annotate( """ line_start = line_counter.vector.start.as_xy_int_tuple() line_end = line_counter.vector.end.as_xy_int_tuple() + config = self._config cv2.line( frame, line_start, line_end, - self.color.as_bgr(), - self.thickness, + config.color.as_bgr(), + config.thickness, lineType=cv2.LINE_AA, shift=0, ) @@ -412,7 +465,7 @@ def annotate( frame, line_start, radius=5, - color=self.text_color.as_bgr(), + color=config.text_color.as_bgr(), thickness=-1, lineType=cv2.LINE_AA, ) @@ -420,23 +473,23 @@ def annotate( frame, line_end, radius=5, - color=self.text_color.as_bgr(), + color=config.text_color.as_bgr(), thickness=-1, lineType=cv2.LINE_AA, ) - in_text = f"{self.in_text}: {line_counter.in_count}" - out_text = f"{self.out_text}: {line_counter.out_count}" + in_text = f"{config.in_text}: {line_counter.in_count}" + out_text = f"{config.out_text}: {line_counter.out_count}" line_angle_degrees = self._get_line_angle(line_counter) for text, is_shown, is_in_count in [ - (in_text, self.display_in_count, True), - (out_text, self.display_out_count, False), + (in_text, config.display_in_count, True), + (out_text, config.display_out_count, False), ]: if not is_shown: continue - if line_angle_degrees == 0 or not self.text_orient_to_line: + if line_angle_degrees == 0 or not config.text_orient_to_line: self._draw_basic_label( frame=frame, line_center=line_counter.vector.center, @@ -502,7 +555,7 @@ def _calculate_anchor_in_frame( """ line_angle = self._get_line_angle(line_zone) - if self.text_centered: + if self._config.text_centered: mid_point = Vector( start=line_zone.vector.start, end=line_zone.vector.end ).center.as_xy_int_tuple() @@ -513,21 +566,21 @@ def _calculate_anchor_in_frame( move_along_x = int( math.cos(math.radians(line_angle)) - * (text_width / 2 + self.text_padding) + * (text_width / 2 + self._config.text_padding) ) move_along_y = int( math.sin(math.radians(line_angle)) - * (text_width / 2 + self.text_padding) + * (text_width / 2 + self._config.text_padding) ) anchor[0] -= move_along_x anchor[1] -= move_along_y move_perpendicular_x = int( - math.sin(math.radians(line_angle)) * (self.text_offset * text_height) + math.sin(math.radians(line_angle)) * (self._config.text_offset * text_height) ) move_perpendicular_y = int( - math.cos(math.radians(line_angle)) * (self.text_offset * text_height) + math.cos(math.radians(line_angle)) * (self._config.text_offset * text_height) ) if is_in_count: @@ -564,23 +617,26 @@ def _draw_basic_label( The scene with the label drawn on it. """ _, text_height = cv2.getTextSize( - text, cv2.FONT_HERSHEY_SIMPLEX, self.text_scale, self.text_thickness + text, + cv2.FONT_HERSHEY_SIMPLEX, + self._config.text_scale, + self._config.text_thickness, )[0] if is_in_count: - line_center.y -= int(self.text_offset * text_height) + line_center.y -= int(self._config.text_offset * text_height) else: - line_center.y += int(self.text_offset * text_height) + line_center.y += int(self._config.text_offset * text_height) draw_text( scene=frame, text=text, text_anchor=line_center, - text_color=self.text_color, - text_scale=self.text_scale, - text_thickness=self.text_thickness, - text_padding=self.text_padding, - background_color=self.color if self.display_text_box else None, + text_color=self._config.text_color, + text_scale=self._config.text_scale, + text_thickness=self._config.text_thickness, + text_padding=self._config.text_padding, + background_color=self._config.color if self._config.display_text_box else None, ) return frame @@ -610,18 +666,21 @@ def _draw_oriented_label( line_angle_degrees = self._get_line_angle(line_zone) label_image = self._make_label_image( text, - text_scale=self.text_scale, - text_thickness=self.text_thickness, - text_padding=self.text_padding, - text_color=self.text_color, - text_box_show=self.display_text_box, - text_box_color=self.color, + text_scale=self._config.text_scale, + text_thickness=self._config.text_thickness, + text_padding=self._config.text_padding, + text_color=self._config.text_color, + text_box_show=self._config.display_text_box, + text_box_color=self._config.color, line_angle_degrees=line_angle_degrees, ) assert label_image.shape[0] == label_image.shape[1] text_width, text_height = cv2.getTextSize( - text, cv2.FONT_HERSHEY_SIMPLEX, self.text_scale, self.text_thickness + text, + cv2.FONT_HERSHEY_SIMPLEX, + self._config.text_scale, + self._config.text_thickness, )[0] label_anchor = self._calculate_anchor_in_frame( @@ -711,6 +770,16 @@ def _make_label_image( class LineZoneAnnotatorMulticlass: + table_position = _multiclass_config_property("table_position") + table_color = _multiclass_config_property("table_color") + table_margin = _multiclass_config_property("table_margin") + table_padding = _multiclass_config_property("table_padding") + table_max_width = _multiclass_config_property("table_max_width") + text_color = _multiclass_config_property("text_color") + text_scale = _multiclass_config_property("text_scale") + text_thickness = _multiclass_config_property("text_thickness") + force_draw_class_ids = _multiclass_config_property("force_draw_class_ids") + def __init__( self, *, @@ -756,15 +825,17 @@ def __init__( " TOP_LEFT, TOP_RIGHT, BOTTOM_LEFT, BOTTOM_RIGHT." ) - self.table_position = table_position - self.table_color = table_color - self.table_margin = table_margin - self.table_padding = table_padding - self.table_max_width = table_max_width - self.text_color = text_color - self.text_scale = text_scale - self.text_thickness = text_thickness - self.force_draw_class_ids = force_draw_class_ids + self._config = LineZoneAnnotatorMulticlassConfig( + table_position=table_position, + table_color=table_color, + table_margin=table_margin, + table_padding=table_padding, + table_max_width=table_max_width, + text_color=text_color, + text_scale=text_scale, + text_thickness=text_thickness, + force_draw_class_ids=force_draw_class_ids, + ) def annotate( self, diff --git a/src/supervision/detection/tools/inference_slicer.py b/src/supervision/detection/tools/inference_slicer.py index c26a7584ab..7c5d9a224e 100644 --- a/src/supervision/detection/tools/inference_slicer.py +++ b/src/supervision/detection/tools/inference_slicer.py @@ -2,6 +2,7 @@ import threading import warnings +from dataclasses import dataclass, field from collections.abc import Callable from concurrent.futures import ThreadPoolExecutor, as_completed from typing import Any @@ -20,6 +21,26 @@ from supervision.utils.internal import SupervisionWarnings +@dataclass(slots=True) +class _InferenceSlicerConfig: + callback: Callable[[ImageType], Detections] + slice_wh: tuple[int, int] + overlap_wh: tuple[int, int] + overlap_filter: OverlapFilter + iou_threshold: float + overlap_metric: OverlapMetric + thread_workers: int + compact_masks: bool + + +@dataclass(slots=True) +class _InferenceSlicerState: + out_of_slice_bounds_warned: bool = False + out_of_slice_bounds_lock: Any = field(default_factory=threading.Lock) + obb_thread_workers_warned: bool = False + obb_thread_workers_lock: Any = field(default_factory=threading.Lock) + + def move_detections( detections: Detections, offset: npt.NDArray[Any], @@ -140,6 +161,8 @@ def callback(tile): ``` """ + __slots__ = ("_config", "_state") + def __init__( self, callback: Callable[[ImageType], Detections], @@ -162,18 +185,88 @@ def __init__( f"Received: {thread_workers}" ) - self.slice_wh = slice_wh_norm - self.overlap_wh = overlap_wh_norm - self.iou_threshold = iou_threshold - self.overlap_metric = OverlapMetric.from_value(overlap_metric) - self.overlap_filter = OverlapFilter.from_value(overlap_filter) - self.callback: Callable[[ImageType], Detections] = callback - self.thread_workers = thread_workers - self.compact_masks = compact_masks - self._out_of_slice_bounds_warned: bool = False - self._out_of_slice_bounds_lock = threading.Lock() - self._obb_thread_workers_warned: bool = False - self._obb_thread_workers_lock = threading.Lock() + self._config = _InferenceSlicerConfig( + callback=callback, + slice_wh=slice_wh_norm, + overlap_wh=overlap_wh_norm, + overlap_filter=OverlapFilter.from_value(overlap_filter), + iou_threshold=iou_threshold, + overlap_metric=OverlapMetric.from_value(overlap_metric), + thread_workers=thread_workers, + compact_masks=compact_masks, + ) + self._state = _InferenceSlicerState() + + @property + def callback(self) -> Callable[[ImageType], Detections]: + return self._config.callback + + @callback.setter + def callback(self, value: Callable[[ImageType], Detections]) -> None: + self._config.callback = value + + @property + def slice_wh(self) -> tuple[int, int]: + return self._config.slice_wh + + @slice_wh.setter + def slice_wh(self, value: tuple[int, int]) -> None: + self._validate_overlap(slice_wh=value, overlap_wh=self.overlap_wh) + self._config.slice_wh = value + + @property + def overlap_wh(self) -> tuple[int, int]: + return self._config.overlap_wh + + @overlap_wh.setter + def overlap_wh(self, value: tuple[int, int]) -> None: + self._validate_overlap(slice_wh=self.slice_wh, overlap_wh=value) + self._config.overlap_wh = value + + @property + def iou_threshold(self) -> float: + return self._config.iou_threshold + + @iou_threshold.setter + def iou_threshold(self, value: float) -> None: + self._config.iou_threshold = value + + @property + def overlap_metric(self) -> OverlapMetric: + return self._config.overlap_metric + + @overlap_metric.setter + def overlap_metric(self, value: OverlapMetric) -> None: + self._config.overlap_metric = OverlapMetric.from_value(value) + + @property + def overlap_filter(self) -> OverlapFilter: + return self._config.overlap_filter + + @overlap_filter.setter + def overlap_filter(self, value: OverlapFilter) -> None: + self._config.overlap_filter = OverlapFilter.from_value(value) + + @property + def thread_workers(self) -> int: + return self._config.thread_workers + + @thread_workers.setter + def thread_workers(self, value: int) -> None: + if value < 1: + raise ValueError( + "`thread_workers` must be a positive integer. " + f"Received: {value}" + ) + self._config.thread_workers = value + + @property + def compact_masks(self) -> bool: + return self._config.compact_masks + + @compact_masks.setter + def compact_masks(self, value: bool) -> None: + self._config.compact_masks = value def __call__(self, image: ImageType) -> Detections: """ @@ -193,7 +286,6 @@ def __call__(self, image: ImageType) -> Detections: Returns: Merged detections across all slices. """ - detections_list: list[Detections] = [] resolution_wh = get_image_resolution_wh(image) offsets = self._generate_offset( @@ -202,8 +294,19 @@ def __call__(self, image: ImageType) -> Detections: overlap_wh=self.overlap_wh, ) - first_offset = offsets[0] - first_detections = self._run_callback(image, first_offset) + detections_list = self._collect_detections(image=image, offsets=offsets) + + merged = Detections.merge(detections_list=detections_list) + return self._apply_overlap_filter(merged) + + def _collect_detections( + self, + image: ImageType, + offsets: npt.NDArray[Any], + ) -> list[Detections]: + detections_list: list[Detections] = [] + + first_detections = self._run_callback(image, offsets[0]) detections_list.append(first_detections) remaining_offsets = offsets[1:] @@ -212,27 +315,21 @@ def __call__(self, image: ImageType) -> Detections: probe_index = 0 if not should_run_sequentially and len(first_detections) == 0: - while probe_index < len(remaining_offsets): - probe_offset = remaining_offsets[probe_index] - probe_detections = self._run_callback(image, probe_offset) - detections_list.append(probe_detections) - probe_index += 1 - - if ORIENTED_BOX_COORDINATES in probe_detections.data: - obb_detected = True - should_run_sequentially = True - break - - if len(probe_detections) > 0: - break + probe_index, obb_detected, should_run_sequentially = ( + self._probe_remaining_offsets( + image=image, + offsets=remaining_offsets, + detections_list=detections_list, + ) + ) remaining_offsets = remaining_offsets[probe_index:] if should_run_sequentially: if self.thread_workers > 1 and obb_detected: - with self._obb_thread_workers_lock: - if not self._obb_thread_workers_warned: - self._obb_thread_workers_warned = True + with self._state.obb_thread_workers_lock: + if not self._state.obb_thread_workers_warned: + self._state.obb_thread_workers_warned = True warnings.warn( "InferenceSlicer detected oriented bounding boxes while " "`thread_workers > 1`. Remaining slices will be processed " @@ -251,17 +348,88 @@ def __call__(self, image: ImageType) -> Detections: ] for future in as_completed(futures): detections_list.append(future.result()) + self._warn_obb_sequential_fallback(obb_detected=obb_detected) + detections_list.extend( + self._run_sequential_inference(image=image, offsets=remaining_offsets) + ) + return detections_list - merged = Detections.merge(detections_list=detections_list) + detections_list.extend( + self._run_parallel_inference(image=image, offsets=remaining_offsets) + ) + return detections_list + + def _probe_remaining_offsets( + self, + image: ImageType, + offsets: npt.NDArray[Any], + detections_list: list[Detections], + ) -> tuple[int, bool, bool]: + probe_index = 0 + obb_detected = False + + while probe_index < len(offsets): + probe_offset = offsets[probe_index] + probe_detections = self._run_callback(image, probe_offset) + detections_list.append(probe_detections) + probe_index += 1 + + if ORIENTED_BOX_COORDINATES in probe_detections.data: + obb_detected = True + return probe_index, obb_detected, True + + if len(probe_detections) > 0: + return probe_index, obb_detected, False + + return probe_index, obb_detected, False + + def _run_sequential_inference( + self, + image: ImageType, + offsets: npt.NDArray[Any], + ) -> list[Detections]: + return [self._run_callback(image, offset) for offset in offsets] + + def _run_parallel_inference( + self, + image: ImageType, + offsets: npt.NDArray[Any], + ) -> list[Detections]: + with ThreadPoolExecutor(max_workers=self.thread_workers) as executor: + futures = [ + executor.submit(self._run_callback, image, offset) + for offset in offsets + ] + return [future.result() for future in as_completed(futures)] + + def _warn_obb_sequential_fallback(self, obb_detected: bool) -> None: + if self.thread_workers <= 1 or not obb_detected: + return + + with self._obb_thread_workers_lock: + if self._obb_thread_workers_warned: + return + + self._obb_thread_workers_warned = True + warnings.warn( + "InferenceSlicer detected oriented bounding boxes while " + "`thread_workers > 1`. Remaining slices will be processed " + "sequentially because many OBB inference backends are not " + "thread-safe and can crash when shared across threads.", + category=SupervisionWarnings, + stacklevel=2, + ) + + def _apply_overlap_filter(self, detections: Detections) -> Detections: if self.overlap_filter == OverlapFilter.NONE: - return merged + return detections if self.overlap_filter == OverlapFilter.NON_MAX_SUPPRESSION: - return merged.with_nms( + return detections.with_nms( threshold=self.iou_threshold, overlap_metric=self.overlap_metric, ) if self.overlap_filter == OverlapFilter.NON_MAX_MERGE: - return merged.with_nmm( + return detections.with_nmm( threshold=self.iou_threshold, overlap_metric=self.overlap_metric, ) @@ -270,7 +438,7 @@ def __call__(self, image: ImageType) -> Detections: f"Invalid overlap filter strategy: {self.overlap_filter}", category=SupervisionWarnings, ) - return merged + return detections def _run_callback(self, image: ImageType, offset: npt.NDArray[Any]) -> Detections: """ @@ -303,13 +471,13 @@ def _run_callback(self, image: ImageType, offset: npt.NDArray[Any]) -> Detection # Fast-path: skip locking and bounds checking when the warning has already # been emitted or when there are no detections to inspect. needs_warning_check = ( - not self._out_of_slice_bounds_warned and len(detections) > 0 + not self._state.out_of_slice_bounds_warned and len(detections) > 0 ) if needs_warning_check: - with self._out_of_slice_bounds_lock: + with self._state.out_of_slice_bounds_lock: # Re-check under the lock to ensure correctness with multiple threads. - if not self._out_of_slice_bounds_warned and len(detections) > 0: + if not self._state.out_of_slice_bounds_warned and len(detections) > 0: slice_width = offset[2] - offset[0] slice_height = offset[3] - offset[1] x_exceeds = np.any(detections.xyxy[:, [0, 2]] > slice_width) @@ -317,7 +485,7 @@ def _run_callback(self, image: ImageType, offset: npt.NDArray[Any]) -> Detection x_negative = np.any(detections.xyxy[:, [0, 2]] < 0) y_negative = np.any(detections.xyxy[:, [1, 3]] < 0) if x_exceeds or y_exceeds or x_negative or y_negative: - self._out_of_slice_bounds_warned = True + self._state.out_of_slice_bounds_warned = True msg = ( "Detections returned by the callback have coordinates " "outside the slice bounds. This may be caused by the " diff --git a/src/supervision/detection/tools/polygon_zone.py b/src/supervision/detection/tools/polygon_zone.py index acb95522dd..395ca1a18d 100644 --- a/src/supervision/detection/tools/polygon_zone.py +++ b/src/supervision/detection/tools/polygon_zone.py @@ -1,6 +1,7 @@ from __future__ import annotations from collections.abc import Iterable +from dataclasses import dataclass from typing import Any, cast import cv2 @@ -11,9 +12,23 @@ from supervision.detection.utils.converters import polygon_to_mask from supervision.draw.color import Color from supervision.draw.utils import draw_filled_polygon, draw_polygon, draw_text -from supervision.geometry.core import Position +from supervision.geometry.core import Point, Position from supervision.geometry.utils import get_polygon_center +CV2_FONT = cv2.FONT_HERSHEY_SIMPLEX + + +@dataclass(slots=True) +class _PolygonZoneAnnotatorConfig: + color: Color = Color.WHITE + thickness: int = 2 + text_color: Color = Color.BLACK + text_scale: float = 0.5 + text_thickness: int = 1 + text_padding: int = 10 + display_in_zone_count: bool = True + opacity: float = 0 + class PolygonZone: """ @@ -141,16 +156,88 @@ def __init__( opacity: float = 0, ): self.zone = zone - self.color = color - self.thickness = thickness - self.text_color = text_color - self.text_scale = text_scale - self.text_thickness = text_thickness - self.text_padding = text_padding - self.font = cv2.FONT_HERSHEY_SIMPLEX - self.center = get_polygon_center(polygon=zone.polygon) - self.display_in_zone_count = display_in_zone_count - self.opacity = opacity + self._config = _PolygonZoneAnnotatorConfig( + color=color, + thickness=thickness, + text_color=text_color, + text_scale=text_scale, + text_thickness=text_thickness, + text_padding=text_padding, + display_in_zone_count=display_in_zone_count, + opacity=opacity, + ) + + @property + def color(self) -> Color: + return self._config.color + + @color.setter + def color(self, value: Color) -> None: + self._config.color = value + + @property + def thickness(self) -> int: + return self._config.thickness + + @thickness.setter + def thickness(self, value: int) -> None: + self._config.thickness = value + + @property + def text_color(self) -> Color: + return self._config.text_color + + @text_color.setter + def text_color(self, value: Color) -> None: + self._config.text_color = value + + @property + def text_scale(self) -> float: + return self._config.text_scale + + @text_scale.setter + def text_scale(self, value: float) -> None: + self._config.text_scale = value + + @property + def text_thickness(self) -> int: + return self._config.text_thickness + + @text_thickness.setter + def text_thickness(self, value: int) -> None: + self._config.text_thickness = value + + @property + def text_padding(self) -> int: + return self._config.text_padding + + @text_padding.setter + def text_padding(self, value: int) -> None: + self._config.text_padding = value + + @property + def display_in_zone_count(self) -> bool: + return self._config.display_in_zone_count + + @display_in_zone_count.setter + def display_in_zone_count(self, value: bool) -> None: + self._config.display_in_zone_count = value + + @property + def opacity(self) -> float: + return self._config.opacity + + @opacity.setter + def opacity(self, value: float) -> None: + self._config.opacity = value + + @property + def font(self) -> int: + return CV2_FONT + + @property + def center(self) -> Point: + return get_polygon_center(polygon=self.zone.polygon) def annotate( self, scene: npt.NDArray[Any], label: str | None = None diff --git a/src/supervision/detection/utils/internal.py b/src/supervision/detection/utils/internal.py index 552d7d270c..bcbb7a7842 100644 --- a/src/supervision/detection/utils/internal.py +++ b/src/supervision/detection/utils/internal.py @@ -51,6 +51,33 @@ def extract_ultralytics_masks(yolov8_results: Any) -> npt.NDArray[np.bool_] | No return cast(npt.NDArray[np.bool_], np.asarray(mask_maps, dtype=bool)) +def _decode_rle_mask( + prediction: dict[str, Any], + image_height: int, + image_width: int, +) -> npt.NDArray[np.bool_] | None: + rle_data = prediction.get("rle") or prediction.get("rle_mask") + if not isinstance(rle_data, dict) or not {"size", "counts"}.issubset(rle_data): + return None + try: + h, w = rle_data["size"] + mask = rle_to_mask(rle_data["counts"], (w, h)) + if (h, w) != (image_height, image_width): + mask = cv2.resize( + mask.astype(np.uint8), + (image_width, image_height), + interpolation=cv2.INTER_NEAREST, + ).astype(bool) + return mask + except (ValueError, AssertionError, KeyError, TypeError) as exc: + logger.warning( + "Failed to decode RLE mask payload; falling back to box-only " + "detection. Reason: %s", + exc, + ) + return None + + def process_roboflow_result( roboflow_result: dict[str, Any], ) -> tuple[ @@ -114,58 +141,28 @@ def process_roboflow_result( x_max = x_min + width y_max = y_min + height - rle_data = prediction.get("rle") or prediction.get("rle_mask") - if not isinstance(rle_data, dict) or not { - "size", - "counts", - }.issubset(rle_data): - rle_data = None - if rle_data is not None: - try: - h, w = rle_data["size"] - mask = rle_to_mask(rle_data["counts"], (w, h)) - if (h, w) != (image_height, image_width): - mask = cv2.resize( - mask.astype(np.uint8), - (image_width, image_height), - interpolation=cv2.INTER_NEAREST, - ).astype(bool) - except (ValueError, AssertionError, KeyError, TypeError) as exc: - logger.warning( - "Failed to decode RLE mask payload; falling back to box-only " - "detection. Reason: %s", - exc, + mask = _decode_rle_mask(prediction, image_height, image_width) + + if mask is None and "points" in prediction: + if len(prediction["points"]) >= 3: + polygon = np.array( + [[point["x"], point["y"]] for point in prediction["points"]], + dtype=int, ) - rle_data = None - if rle_data is not None: - xyxy.append([x_min, y_min, x_max, y_max]) - class_id.append(prediction["class_id"]) - class_name.append(prediction["class"]) - confidence.append(prediction["confidence"]) - masks.append(mask) - if "tracker_id" in prediction: - tracker_ids.append(prediction["tracker_id"]) - elif "points" not in prediction: - xyxy.append([x_min, y_min, x_max, y_max]) - class_id.append(prediction["class_id"]) - class_name.append(prediction["class"]) - confidence.append(prediction["confidence"]) - if "tracker_id" in prediction: - tracker_ids.append(prediction["tracker_id"]) - elif len(prediction["points"]) >= 3: - polygon = np.array( - [[point["x"], point["y"]] for point in prediction["points"]], dtype=int - ) - mask = polygon_to_mask( - polygon, resolution_wh=(image_width, image_height) - ).astype(bool) - xyxy.append([x_min, y_min, x_max, y_max]) - class_id.append(prediction["class_id"]) - class_name.append(prediction["class"]) - confidence.append(prediction["confidence"]) + mask = polygon_to_mask( + polygon, resolution_wh=(image_width, image_height) + ).astype(bool) + else: + continue + + xyxy.append([x_min, y_min, x_max, y_max]) + class_id.append(prediction["class_id"]) + class_name.append(prediction["class"]) + confidence.append(prediction["confidence"]) + if mask is not None: masks.append(mask) - if "tracker_id" in prediction: - tracker_ids.append(prediction["tracker_id"]) + if "tracker_id" in prediction: + tracker_ids.append(prediction["tracker_id"]) xyxy_arr: npt.NDArray[np.floating] = ( np.array(xyxy, dtype=np.float64) if len(xyxy) > 0 else np.empty((0, 4)) @@ -238,6 +235,48 @@ def is_metadata_equal(metadata_a: dict[str, Any], metadata_b: dict[str, Any]) -> ) +def _validate_data_list_keys( + data_list: list[dict[str, npt.NDArray[np.generic] | list[Any]]], +) -> set[str]: + all_keys_sets = [set(data.keys()) for data in data_list] + if not all(keys_set == all_keys_sets[0] for keys_set in all_keys_sets): + raise ValueError("All data dictionaries must have the same keys to merge.") + + return all_keys_sets[0] + + +def _validate_data_value_lengths( + data_list: list[dict[str, npt.NDArray[np.generic] | list[Any]]], +) -> None: + for data in data_list: + lengths = {len(value) for value in data.values()} + if len(lengths) > 1: + raise ValueError( + "All data values within a single object must have equal length." + ) + + +def _merge_data_values( + values: list[npt.NDArray[np.generic] | list[Any]], + key: str, +) -> npt.NDArray[np.generic] | list[Any]: + if all(isinstance(item, list) for item in values): + return list(chain.from_iterable(values)) + + if all(isinstance(item, np.ndarray) for item in values): + ndim = values[0].ndim + if ndim == 1: + return np.hstack(values) + if ndim > 1: + return np.vstack(values) + raise ValueError(f"Unexpected array dimension for key '{key}'.") + + raise ValueError( + f"Inconsistent data types for key '{key}'. Only np.ndarray and list types " + f"are allowed." + ) + + def merge_data( data_list: list[dict[str, npt.NDArray[np.generic] | list[Any]]], ) -> dict[str, npt.NDArray[np.generic] | list[Any]]: @@ -263,38 +302,13 @@ def merge_data( if not data_list: return {} - all_keys_sets = [set(data.keys()) for data in data_list] - if not all(keys_set == all_keys_sets[0] for keys_set in all_keys_sets): - raise ValueError("All data dictionaries must have the same keys to merge.") + keys = _validate_data_list_keys(data_list) + _validate_data_value_lengths(data_list) - for data in data_list: - lengths = [len(value) for value in data.values()] - if len(set(lengths)) > 1: - raise ValueError( - "All data values within a single object must have equal length." - ) - - merged_data: dict[str, Any] = {key: [] for key in all_keys_sets[0]} - for data in data_list: - for key in data: - merged_data[key].append(data[key]) - - for key in merged_data: - if all(isinstance(item, list) for item in merged_data[key]): - merged_data[key] = list(chain.from_iterable(merged_data[key])) - elif all(isinstance(item, np.ndarray) for item in merged_data[key]): - ndim = merged_data[key][0].ndim - if ndim == 1: - merged_data[key] = np.hstack(merged_data[key]) - elif ndim > 1: - merged_data[key] = np.vstack(merged_data[key]) - else: - raise ValueError(f"Unexpected array dimension for key '{key}'.") - else: - raise ValueError( - f"Inconsistent data types for key '{key}'. Only np.ndarray and list " - f"types are allowed." - ) + merged_data: dict[str, Any] = { + key: _merge_data_values([data[key] for data in data_list], key) + for key in keys + } return cast(dict[str, Union[npt.NDArray[np.generic], list[Any]]], merged_data) diff --git a/src/supervision/detection/utils/iou_and_nms.py b/src/supervision/detection/utils/iou_and_nms.py index e32eb31e51..ab45e0ff11 100644 --- a/src/supervision/detection/utils/iou_and_nms.py +++ b/src/supervision/detection/utils/iou_and_nms.py @@ -423,6 +423,36 @@ def _overlapping_envelope_pairs( return cast(tuple[npt.NDArray[np.intp], npt.NDArray[np.intp]], np.nonzero(overlap)) +def _validate_oriented_box_batch(name: str, arr: npt.NDArray[np.number]) -> None: + """Validate the shape of an oriented-box batch.""" + if arr.ndim == 3 and arr.shape[1:] != (4, 2): + raise ValueError( + f"`{name}` has shape {arr.shape}; expected (N, 4, 2) " + f"— each box must have exactly 4 corners with (x, y) coordinates." + ) + if arr.ndim == 2 and arr.shape[1] != 8: + raise ValueError( + f"`{name}` has shape {arr.shape}; expected (N, 8) for flat " + f"YOLO format or (N, 4, 2) for corner format." + ) + if arr.ndim not in (2, 3): + raise ValueError( + f"`{name}` must be 2-D (N, 8) or 3-D (N, 4, 2), got shape {arr.shape}." + ) + + +def _normalize_oriented_overlap_metric(overlap_metric: OverlapMetric) -> bool: + """Return whether oriented-box overlap should be normalized by union.""" + if overlap_metric == OverlapMetric.IOU: + return True + if overlap_metric == OverlapMetric.IOS: + return False + raise ValueError( + f"overlap_metric {overlap_metric} is not supported, " + "only 'IOU' and 'IOS' are supported" + ) + + def oriented_box_iou_batch( boxes_true: npt.NDArray[np.number], boxes_detection: npt.NDArray[np.number], @@ -489,31 +519,9 @@ def oriented_box_iou_batch( array([[0.333...]]) """ - for name, arr in (("boxes_true", boxes_true), ("boxes_detection", boxes_detection)): - if arr.ndim == 3 and arr.shape[1:] != (4, 2): - raise ValueError( - f"`{name}` has shape {arr.shape}; expected (N, 4, 2) " - f"— each box must have exactly 4 corners with (x, y) coordinates." - ) - elif arr.ndim == 2 and arr.shape[1] != 8: - raise ValueError( - f"`{name}` has shape {arr.shape}; expected (N, 8) for flat " - f"YOLO format or (N, 4, 2) for corner format." - ) - elif arr.ndim not in (2, 3): - raise ValueError( - f"`{name}` must be 2-D (N, 8) or 3-D (N, 4, 2), got shape {arr.shape}." - ) - - if overlap_metric == OverlapMetric.IOU: - normalize_by_union = True - elif overlap_metric == OverlapMetric.IOS: - normalize_by_union = False - else: - raise ValueError( - f"overlap_metric {overlap_metric} is not supported, " - "only 'IOU' and 'IOS' are supported" - ) + _validate_oriented_box_batch("boxes_true", boxes_true) + _validate_oriented_box_batch("boxes_detection", boxes_detection) + normalize_by_union = _normalize_oriented_overlap_metric(overlap_metric) # Capture identity before reshape: NMS / NMM pass the same array twice, so # the matrix is symmetric and we can compute only its upper triangle. diff --git a/src/supervision/detection/utils/masks.py b/src/supervision/detection/utils/masks.py index e8dd43227d..9b20df384d 100644 --- a/src/supervision/detection/utils/masks.py +++ b/src/supervision/detection/utils/masks.py @@ -288,6 +288,59 @@ def resize_masks(masks: npt.NDArray[Any], max_dimension: int = 640) -> npt.NDArr return resized_masks.reshape(masks.shape[0], new_height, new_width) +def _resolve_distance_threshold( + height: int, + width: int, + absolute_distance: float | None, + relative_distance: float | None, +) -> float: + """Resolve the distance threshold from absolute or relative input.""" + if relative_distance is not None: + diagonal = float(np.hypot(height, width)) + return float(relative_distance) * diagonal + if absolute_distance is not None: + return float(absolute_distance) + raise ValueError("Either absolute_distance or relative_distance must be set.") + + +def _filter_labels_by_centroid_distance( + keep_labels: npt.NDArray[np.bool_], + centroids: npt.NDArray[np.float64], + main_label: int, + threshold: float, +) -> None: + """Mark labels whose centroids are within the provided threshold.""" + differences = centroids[1:] - centroids[main_label] + distances = np.sqrt(np.sum(differences**2, axis=1)) + nearby = 1 + np.where(distances <= threshold)[0] + keep_labels[nearby] = True + + +def _filter_labels_by_edge_distance( + keep_labels: npt.NDArray[np.bool_], + labels: npt.NDArray[np.int32], + main_label: int, + num_labels: int, + threshold: float, +) -> None: + """Mark labels whose edge distance to the main component is within threshold.""" + main_mask = (labels == main_label).astype(np.uint8) + inverse = 1 - main_mask + distance_transform = cv2.distanceTransform(inverse, cv2.DIST_L2, 3) + + for label in range(1, num_labels): + if label == main_label: + continue + + component = labels == label + if not np.any(component): + continue + + min_distance = float(distance_transform[component].min()) + if min_distance <= threshold: + keep_labels[label] = True + + def filter_segments_by_distance( mask: npt.NDArray[np.bool_], absolute_distance: float | None = 100.0, @@ -391,35 +444,31 @@ def filter_segments_by_distance( areas = stats[1:, cv2.CC_STAT_AREA] main_label = 1 + int(np.argmax(areas)) - if relative_distance is not None: - diagonal = float(np.hypot(height, width)) - threshold = float(relative_distance) * diagonal - elif absolute_distance is not None: - threshold = float(absolute_distance) - else: - raise ValueError("Either absolute_distance or relative_distance must be set.") + threshold = _resolve_distance_threshold( + height=height, + width=width, + absolute_distance=absolute_distance, + relative_distance=relative_distance, + ) keep_labels: npt.NDArray[np.bool_] = np.zeros(num_labels, dtype=bool) keep_labels[main_label] = True if mode == "centroid": - differences = centroids[1:] - centroids[main_label] - distances = np.sqrt(np.sum(differences**2, axis=1)) - nearby = 1 + np.where(distances <= threshold)[0] - keep_labels[nearby] = True + _filter_labels_by_centroid_distance( + keep_labels=keep_labels, + centroids=centroids, + main_label=main_label, + threshold=threshold, + ) elif mode == "edge": - main_mask = (labels == main_label).astype(np.uint8) - inverse = 1 - main_mask - distance_transform = cv2.distanceTransform(inverse, cv2.DIST_L2, 3) - for label in range(1, num_labels): - if label == main_label: - continue - component = labels == label - if not np.any(component): - continue - min_distance = float(distance_transform[component].min()) - if min_distance <= threshold: - keep_labels[label] = True + _filter_labels_by_edge_distance( + keep_labels=keep_labels, + labels=labels, + main_label=main_label, + num_labels=num_labels, + threshold=threshold, + ) else: raise ValueError("mode must be 'edge' or 'centroid'") diff --git a/src/supervision/detection/vlm.py b/src/supervision/detection/vlm.py index a4d1fb1031..681c67d1bc 100644 --- a/src/supervision/detection/vlm.py +++ b/src/supervision/detection/vlm.py @@ -588,6 +588,179 @@ def from_florence_2( raise RuntimeError(f"Unimplemented task: {task}") +def _extract_json_from_backticks(result: str) -> list | None: + lines = result.splitlines() + for i, line in enumerate(lines): + if line == "```json": + result = "\n".join(lines[i + 1 :]) + result = result.split("```")[0] + break + try: + data = json.loads(result) + except json.JSONDecodeError: + return None + return data if isinstance(data, list) else None + + +def _build_empty_gemini_2_5_result() -> tuple[ + npt.NDArray[Any], + npt.NDArray[Any], + npt.NDArray[Any], + npt.NDArray[Any], + None, +]: + return ( + np.empty((0, 4)), + np.array([], dtype=int), + np.array([], dtype=str), + np.array([], dtype=float), + None, + ) + + +def _parse_gemini_2_5_item( + item: Any, + w: int, + h: int, +) -> tuple[ + npt.NDArray[Any], + str, + float | None, + npt.NDArray[np.bool_] | None, +] | None: + if not isinstance(item, dict) or "box_2d" not in item or "label" not in item: + return None + + box = item["box_2d"] + # Gemini reports boxes as [y_min, x_min, y_max, x_max]. + absolute_bbox = denormalize_boxes( + np.array([[box[1], box[0], box[3], box[2]]], dtype=np.float64), + resolution_wh=(w, h), + normalization_factor=1000, + )[0] + + mask = ( + _decode_mask_for_item(item, absolute_bbox, h, w) if "mask" in item else None + ) + confidence = ( + cast(float | None, item["confidence"]) if "confidence" in item else None + ) + + return absolute_bbox, cast(str, item["label"]), confidence, mask + + +def _collect_gemini_2_5_items( + data: list[Any], + w: int, + h: int, +) -> tuple[ + list[npt.NDArray[Any]], + list[str], + list[float], + list[npt.NDArray[np.bool_]], + bool, + bool, +]: + boxes_list: list[npt.NDArray[Any]] = [] + labels_list: list[str] = [] + confidence_list: list[float] = [] + masks_list: list[npt.NDArray[np.bool_]] = [] + has_confidence = True + has_masks = True + + for item in data: + parsed_item = _parse_gemini_2_5_item(item, w, h) + if parsed_item is None: + continue + + absolute_bbox, label, confidence, mask = parsed_item + boxes_list.append(absolute_bbox) + labels_list.append(label) + + if mask is None: + has_masks = False + elif has_masks: + masks_list.append(mask) + + if confidence is None: + has_confidence = False + elif has_confidence: + confidence_list.append(confidence) + + return boxes_list, labels_list, confidence_list, masks_list, has_confidence, has_masks + + +def _filter_gemini_2_5_results( + xyxy: npt.NDArray[Any], + class_name: npt.NDArray[Any], + confidence: npt.NDArray[Any] | None, + masks: npt.NDArray[Any] | None, + classes: list[str], +) -> tuple[ + npt.NDArray[Any], + npt.NDArray[Any], + npt.NDArray[Any] | None, + npt.NDArray[Any] | None, + npt.NDArray[Any], +]: + mask = np.array([name in classes for name in class_name], dtype=bool) + xyxy = xyxy[mask] + class_name = class_name[mask] + class_id = np.array([classes.index(name) for name in class_name]) + + if confidence is not None: + confidence = confidence[mask] + + if masks is not None: + masks = masks[mask] + + return xyxy, class_name, confidence, masks, class_id + + +def _build_gemini_2_5_class_id( + class_name: npt.NDArray[Any], +) -> npt.NDArray[Any]: + unique_labels = sorted(list(set(class_name))) + label_to_id = {label: i for i, label in enumerate(unique_labels)} + return np.array([label_to_id[name] for name in class_name]) + + +def _decode_mask_for_item( + item: dict[str, Any], + absolute_bbox: npt.NDArray[Any], + h: int, + w: int, +) -> npt.NDArray[np.bool_]: + png_str = item["mask"] + if not isinstance(png_str, str) or not png_str.startswith( + "data:image/png;base64," + ): + return np.zeros((h, w), dtype=bool) + + png_str = png_str.removeprefix("data:image/png;base64,") + try: + png_bytes = base64.b64decode(png_str) + mask_img = Image.open(io.BytesIO(png_bytes)).convert("L") + except Exception: + return np.zeros((h, w), dtype=bool) + + y_min, y_max = int(absolute_bbox[1]), int(absolute_bbox[3]) + x_min, x_max = int(absolute_bbox[0]), int(absolute_bbox[2]) + bbox_height = y_max - y_min + bbox_width = x_max - x_min + + if bbox_height > 0 and bbox_width > 0: + mask_img = mask_img.resize( + (bbox_width, bbox_height), + resample=Image.Resampling.BILINEAR, + ) + np_mask: npt.NDArray[np.bool_] = np.zeros((h, w), dtype=bool) + np_mask[y_min:y_max, x_min:x_max] = np.array(mask_img) > 0 + return np_mask + + return np.zeros((h, w), dtype=bool) + + def from_google_gemini_2_0( result: str, resolution_wh: tuple[int, int], @@ -629,19 +802,8 @@ def from_google_gemini_2_0( w, h = _validate_resolution(resolution_wh) - lines = result.splitlines() - for i, line in enumerate(lines): - if line == "```json": - result = "\n".join(lines[i + 1 :]) - result = result.split("```")[0] - break - - try: - data = json.loads(result) - except json.JSONDecodeError: - return np.empty((0, 4)), np.empty((0,), dtype=int), np.empty((0,), dtype=str) - - if not isinstance(data, list): + data = _extract_json_from_backticks(result) + if data is None: return np.empty((0, 4)), np.empty((0,), dtype=int), np.empty((0,), dtype=str) labels = [] @@ -720,136 +882,42 @@ def from_google_gemini_2_5( """ w, h = _validate_resolution(resolution_wh) - lines = result.splitlines() - for i, line in enumerate(lines): - if line == "```json": - result = "\n".join(lines[i + 1 :]) - result = result.split("```")[0] - break + data = _extract_json_from_backticks(result) + if data is None: + return _build_empty_gemini_2_5_result() - try: - data = json.loads(result) - except json.JSONDecodeError: - return ( - np.empty((0, 4)), - np.array([], dtype=int), - np.array([], dtype=str), - np.array([], dtype=float), - None, - ) - - if not isinstance(data, list): - return ( - np.empty((0, 4)), - np.array([], dtype=int), - np.array([], dtype=str), - np.array([], dtype=float), - None, - ) - - boxes_list: list[Any] = [] - labels_list: list[str] = [] - confidence_list: list[float] | None = [] - masks_list: list[npt.NDArray[Any]] | None = [] - - for item in data: - if not isinstance(item, dict) or "box_2d" not in item or "label" not in item: - continue - labels_list.append(item["label"]) - box = item["box_2d"] - # Gemini bbox order is [y_min, x_min, y_max, x_max] - absolute_bbox = denormalize_boxes( - np.array([[box[1], box[0], box[3], box[2]]]).astype(np.float64), - resolution_wh=(w, h), - normalization_factor=1000, - )[0] - boxes_list.append(absolute_bbox) - - if "mask" in item: - if masks_list is not None: - png_str = item["mask"] - if not isinstance(png_str, str) or not png_str.startswith( - "data:image/png;base64," - ): - # Malformed mask: keep an empty mask but still fall through to - # the confidence handling below, so the per-item arrays stay - # aligned (a `continue` here desynced confidence vs boxes). - masks_list.append(np.zeros((h, w), dtype=bool)) - else: - png_str = png_str.removeprefix("data:image/png;base64,") - try: - png_bytes = base64.b64decode(png_str) - mask_img = Image.open(io.BytesIO(png_bytes)).convert("L") - except Exception: - masks_list.append(np.zeros((h, w), dtype=bool)) - else: - y_min, y_max = int(absolute_bbox[1]), int(absolute_bbox[3]) - x_min, x_max = int(absolute_bbox[0]), int(absolute_bbox[2]) - - bbox_height = y_max - y_min - bbox_width = x_max - x_min - - if bbox_height > 0 and bbox_width > 0: - mask_img = mask_img.resize( - (bbox_width, bbox_height), - resample=Image.Resampling.BILINEAR, - ) - np_mask: npt.NDArray[np.bool_] = np.zeros( - (h, w), dtype=bool - ) - np_mask[y_min:y_max, x_min:x_max] = np.array(mask_img) > 0 - masks_list.append(np_mask) - else: - masks_list.append(np.zeros((h, w), dtype=bool)) - else: - masks_list = None - - if "confidence" in item: - if confidence_list is not None: - confidence_list.append(item["confidence"]) - else: - confidence_list = None + ( + boxes_list, + labels_list, + confidence_list, + masks_list, + has_confidence, + has_masks, + ) = _collect_gemini_2_5_items(data, w, h) if not boxes_list: - return ( - np.empty((0, 4)), - np.array([], dtype=int), - np.array([], dtype=str), - np.array([], dtype=float), - None, - ) + return _build_empty_gemini_2_5_result() xyxy = np.array(boxes_list, dtype=float) class_name = np.array(labels_list) + confidence = ( + np.array(confidence_list, dtype=float) if has_confidence else None + ) + masks = np.array(masks_list) if has_masks else None class_id: npt.NDArray[Any] if classes is not None: - mask = np.array([name in classes for name in class_name], dtype=bool) - xyxy = xyxy[mask] - class_name = class_name[mask] - class_id = np.array([classes.index(name) for name in class_name]) - if masks_list is not None: - masks_list = [m for m, keep in zip(masks_list, mask) if keep] - - if confidence_list is not None: - confidence_list = [c for c, keep in zip(confidence_list, mask) if keep] + xyxy, class_name, confidence, masks, class_id = _filter_gemini_2_5_results( + xyxy=xyxy, + class_name=class_name, + confidence=confidence, + masks=masks, + classes=classes, + ) else: - unique_labels = sorted(list(set(class_name))) - label_to_id = {label: i for i, label in enumerate(unique_labels)} - class_id = np.array([label_to_id[name] for name in class_name]) + class_id = _build_gemini_2_5_class_id(class_name) - confidence = ( - np.array(confidence_list, dtype=float) if confidence_list is not None else None - ) - masks = np.array(masks_list) if masks_list is not None else None - - return ( - xyxy, - class_id, - class_name, - confidence, - masks, - ) + return (xyxy, class_id, class_name, confidence, masks) def from_moondream( diff --git a/src/supervision/key_points/core.py b/src/supervision/key_points/core.py index 0a7a70ebb7..565aa08c0a 100644 --- a/src/supervision/key_points/core.py +++ b/src/supervision/key_points/core.py @@ -922,61 +922,17 @@ def _get_by_2d_bool_mask(self, mask: npt.NDArray[np.bool_]) -> KeyPoints: data=data_selected, ) - def __getitem__( - self, - index: Index1D | Index2D | str, - ) -> KeyPoints | npt.NDArray[np.generic] | list[Any] | None: - """ - Get a subset of the KeyPoints object or access an item from its data field. - - Supports detection-level (skeleton) filtering, keypoint-level (anchor) - filtering, combined tuple indexing, and data field access by string key. - - Args: - index: The index, indices, or key to access a subset of the KeyPoints - or an item from the data. - - Returns: - A subset of the KeyPoints object or an item from the data field. - - Examples: - ```python - import supervision as sv - - key_points = sv.KeyPoints(...) - - # detection-level filtering (returns KeyPoints) - high_conf = key_points[key_points.detection_confidence > 0.5] - class_0 = key_points[key_points.class_id == 0] - - # keypoint-level filtering (returns KeyPoints) - visible = key_points[key_points.keypoint_confidence > 0.3] - - # indexing - first = key_points[0] - first_two = key_points[0:2] - subset = key_points[[0, 2]] - - # anchor selection (uniform across all skeletons) - nose_and_eyes = key_points[:, [0, 1, 2]] - - # data field access - class_names = key_points['class_name'] - ``` - """ - if isinstance(index, str): - return self.data.get(index) - - if isinstance(index, np.ndarray) and index.ndim == 2 and index.dtype == bool: - return self._get_by_2d_bool_mask(cast(npt.NDArray[np.bool_], index)) - + def _normalize_getitem_index( + self, index: Index1D | Index2D + ) -> tuple[ + Index1D | Index2D, Any, Any, _NormalizedRowIndex + ]: if not isinstance(index, tuple): index = (index, slice(None)) + i, j = cast(Any, index[0]), cast(Any, index[1]) - i, j = index - - if isinstance(i, int): - i = [i] + if isinstance(i, (int, np.integer)): + i = [int(i)] if isinstance(i, list) and all(isinstance(x, bool) for x in i): i = np.array(i) @@ -1000,26 +956,56 @@ def __getitem__( i = cast(Any, i_ix) j = cast(Any, j_ix) - row_i = _normalize_row_index(raw_i) - + return index, i, j, _normalize_row_index(raw_i) + + def _select_fields( + self, i: Any, j: Any, row_i: _NormalizedRowIndex + ) -> tuple[ + npt.NDArray[np.float32], + npt.NDArray[np.float32] | None, + npt.NDArray[np.float32] | None, + npt.NDArray[np.bool_] | None, + npt.NDArray[np.int_] | None, + Any, + ]: xy_selected = self.xy[i, j] - - keypoint_confidence_selected = None - if self.keypoint_confidence is not None: - keypoint_confidence_selected = self.keypoint_confidence[i, j] - - detection_confidence_selected = None - if self.detection_confidence is not None: - detection_confidence_selected = self.detection_confidence[row_i] - - visible_selected = None - if self.visible is not None: - visible_selected = self.visible[i, j] - - class_id_selected = self.class_id[row_i] if self.class_id is not None else None - + keypoint_confidence_selected = ( + self.keypoint_confidence[i, j] + if self.keypoint_confidence is not None + else None + ) + detection_confidence_selected = ( + self.detection_confidence[row_i] + if self.detection_confidence is not None + else None + ) + visible_selected = ( + self.visible[i, j] if self.visible is not None else None + ) + class_id_selected = ( + self.class_id[row_i] if self.class_id is not None else None + ) data_selected = get_data_item(self.data, cast(Any, row_i)) + return ( + xy_selected, + keypoint_confidence_selected, + detection_confidence_selected, + visible_selected, + class_id_selected, + data_selected, + ) + def _reshape_selected( + self, + xy_selected: npt.NDArray[np.float32], + keypoint_confidence_selected: npt.NDArray[np.float32] | None, + visible_selected: npt.NDArray[np.bool_] | None, + index: Index1D | Index2D, + ) -> tuple[ + npt.NDArray[np.float32], + npt.NDArray[np.float32] | None, + npt.NDArray[np.bool_] | None, + ]: if xy_selected.ndim == 1: xy_selected = xy_selected.reshape(1, 1, 2) if keypoint_confidence_selected is not None: @@ -1049,16 +1035,78 @@ def __getitem__( ] if visible_selected is not None: visible_selected = visible_selected[:, np.newaxis] + return xy_selected, keypoint_confidence_selected, visible_selected + + def _getitem_by_normalized_index( + self, + index: Index1D | Index2D, + i: Any, + j: Any, + row_i: _NormalizedRowIndex, + ) -> KeyPoints: + xy, kconf, dconf, visible, class_id, data = self._select_fields(i, j, row_i) + xy, kconf, visible = self._reshape_selected(xy, kconf, visible, index) return KeyPoints( - xy=xy_selected, - keypoint_confidence=keypoint_confidence_selected, - detection_confidence=detection_confidence_selected, - visible=visible_selected, - class_id=class_id_selected, - data=data_selected, + xy=xy, + keypoint_confidence=kconf, + detection_confidence=dconf, + visible=visible, + class_id=class_id, + data=data, ) + def __getitem__( + self, + index: Index1D | Index2D | str, + ) -> KeyPoints | npt.NDArray[np.generic] | list[Any] | None: + """ + Get a subset of the KeyPoints object or access an item from its data field. + + Supports detection-level (skeleton) filtering, keypoint-level (anchor) + filtering, combined tuple indexing, and data field access by string key. + + Args: + index: The index, indices, or key to access a subset of the KeyPoints + or an item from the data. + + Returns: + A subset of the KeyPoints object or an item from the data field. + + Examples: + ```python + import supervision as sv + + key_points = sv.KeyPoints(...) + + # detection-level filtering (returns KeyPoints) + high_conf = key_points[key_points.detection_confidence > 0.5] + class_0 = key_points[key_points.class_id == 0] + + # keypoint-level filtering (returns KeyPoints) + visible = key_points[key_points.keypoint_confidence > 0.3] + + # indexing + first = key_points[0] + first_two = key_points[0:2] + subset = key_points[[0, 2]] + + # anchor selection (uniform across all skeletons) + nose_and_eyes = key_points[:, [0, 1, 2]] + + # data field access + class_names = key_points['class_name'] + ``` + """ + if isinstance(index, str): + return self.data.get(index) + + if isinstance(index, np.ndarray) and index.ndim == 2 and index.dtype == bool: + return self._get_by_2d_bool_mask(cast(npt.NDArray[np.bool_], index)) + + index, i, j, row_i = self._normalize_getitem_index(index) + return self._getitem_by_normalized_index(index, i, j, row_i) + def __setitem__(self, key: str, value: npt.NDArray[np.generic] | list[Any]) -> None: """ Set a value in the data dictionary of the `sv.KeyPoints` object. diff --git a/src/supervision/metrics/detection.py b/src/supervision/metrics/detection.py index 409ac34abb..97f349bd38 100644 --- a/src/supervision/metrics/detection.py +++ b/src/supervision/metrics/detection.py @@ -184,6 +184,127 @@ def _validate_input_tensors( ) +def _get_coordinate_metadata( + metric_target: MetricTarget, +) -> tuple[int, int, int]: + """Return (coords_dim, class_id_idx, conf_idx) for the given metric target.""" + coords_dim = 8 if metric_target == MetricTarget.ORIENTED_BOUNDING_BOXES else 4 + return (coords_dim, coords_dim, coords_dim + 1) + + +def _validate_detection_batch_shapes( + predictions: npt.NDArray[np.float32], + targets: npt.NDArray[np.float32], + metric_target: MetricTarget, +) -> None: + """Validate input tensor shapes for a single detection batch.""" + expected_pred_cols = ( + 10 if metric_target == MetricTarget.ORIENTED_BOUNDING_BOXES else 6 + ) + expected_target_cols = ( + 9 if metric_target == MetricTarget.ORIENTED_BOUNDING_BOXES else 5 + ) + if predictions.ndim != 2 or predictions.shape[1] != expected_pred_cols: + raise ValueError( + f"Predictions must have shape (M, {expected_pred_cols}). " + f"Got {predictions.shape} instead." + ) + if targets.ndim != 2 or targets.shape[1] != expected_target_cols: + raise ValueError( + f"Targets must have shape (N, {expected_target_cols}). " + f"Got {targets.shape} instead." + ) + + +def _try_early_exit( + result_matrix: npt.NDArray[np.int32], + predictions_filtered: npt.NDArray[np.float32], + targets: npt.NDArray[np.float32], + class_id_idx: int, + num_classes: int, +) -> npt.NDArray[np.int32] | None: + """Fill matrix for edge cases and return it, or None if normal path needed.""" + if len(predictions_filtered) == 0: + true_classes = np.array(targets[:, class_id_idx], dtype=np.int16) + for gt_class in true_classes: + result_matrix[gt_class, num_classes] += 1 + return result_matrix + if len(targets) == 0: + detection_classes = np.array( + predictions_filtered[:, class_id_idx], dtype=np.int16 + ) + for det_class in detection_classes: + result_matrix[num_classes, det_class] += 1 + return result_matrix + return None + + +def _get_iou_batch( + true_boxes: npt.NDArray[np.float32], + detection_boxes: npt.NDArray[np.float32], + metric_target: MetricTarget, +) -> npt.NDArray[np.float32]: + """Return the IoU matrix for the requested metric target.""" + if metric_target == MetricTarget.ORIENTED_BOUNDING_BOXES: + return oriented_box_iou_batch( + boxes_true=true_boxes, boxes_detection=detection_boxes + ) + return box_iou_batch(boxes_true=true_boxes, boxes_detection=detection_boxes) + + +def _fill_confusion_matrix_from_iou( + result_matrix: npt.NDArray[np.int32], + true_classes: npt.NDArray[np.int16], + detection_classes: npt.NDArray[np.int16], + true_boxes: npt.NDArray[np.float32], + detection_boxes: npt.NDArray[np.float32], + iou_threshold: float, + num_classes: int, + metric_target: MetricTarget, +) -> None: + """Compute IoU, find valid matches, greedily assign, and fill the matrix.""" + iou_batch = _get_iou_batch(true_boxes, detection_boxes, metric_target) + iou_mask = iou_batch > iou_threshold + gt_indices, det_indices = np.nonzero(iou_mask) + + if gt_indices.size == 0: + valid_matches = [] + else: + ious = iou_batch[gt_indices, det_indices] + gt_match_classes = true_classes[gt_indices] + det_match_classes = detection_classes[det_indices] + class_matches = gt_match_classes == det_match_classes + sort_indices = np.lexsort((-ious, ~class_matches)) + valid_matches = [ + ( + int(gt_indices[idx]), + int(det_indices[idx]), + float(ious[idx]), + bool(class_matches[idx]), + ) + for idx in sort_indices + ] + + matched_gt_idx = set() + matched_det_idx = set() + + for gt_idx, det_idx, _iou, _class_match in valid_matches: + if gt_idx not in matched_gt_idx and det_idx not in matched_det_idx: + gt_class = true_classes[gt_idx] + det_class = detection_classes[det_idx] + result_matrix[gt_class, det_class] += 1 + matched_gt_idx.add(gt_idx) + matched_det_idx.add(det_idx) + + for gt_idx, gt_class in enumerate(true_classes): + if gt_idx not in matched_gt_idx: + result_matrix[gt_class, num_classes] += 1 + + for det_idx, det_class in enumerate(detection_classes): + if det_idx not in matched_det_idx: + result_matrix[num_classes, det_class] += 1 + + @deprecated( # type: ignore[untyped-decorator] target=_validate_input_tensors, deprecated_in="0.29.0", @@ -451,126 +572,33 @@ def evaluate_detection_batch( Confusion matrix based on a single image. """ _assert_supported_target(metric_target) - - expected_pred_cols = ( - 10 if metric_target == MetricTarget.ORIENTED_BOUNDING_BOXES else 6 - ) - expected_target_cols = ( - 9 if metric_target == MetricTarget.ORIENTED_BOUNDING_BOXES else 5 - ) - if predictions.ndim != 2 or predictions.shape[1] != expected_pred_cols: - raise ValueError( - f"Predictions must have shape (M, {expected_pred_cols}). " - f"Got {predictions.shape} instead." - ) - if targets.ndim != 2 or targets.shape[1] != expected_target_cols: - raise ValueError( - f"Targets must have shape (N, {expected_target_cols}). " - f"Got {targets.shape} instead." - ) + _validate_detection_batch_shapes(predictions, targets, metric_target) result_matrix = np.zeros((num_classes + 1, num_classes + 1)) + coords_dim, class_id_idx, conf_idx = _get_coordinate_metadata(metric_target) + filtered = predictions[predictions[:, conf_idx] >= conf_threshold] - # Filter predictions by confidence threshold - coords_dim = 8 if metric_target == MetricTarget.ORIENTED_BOUNDING_BOXES else 4 - class_id_idx = coords_dim - conf_idx = coords_dim + 1 - - confidence = predictions[:, conf_idx] - detection_batch_filtered = predictions[confidence >= conf_threshold] - - if len(detection_batch_filtered) == 0: - # No detections pass confidence threshold - all GT are FN - true_classes = np.array(targets[:, class_id_idx], dtype=np.int16) - for gt_class in true_classes: - result_matrix[gt_class, num_classes] += 1 - return result_matrix - - if len(targets) == 0: - # No ground truth - all detections are FP - detection_classes = np.array( - detection_batch_filtered[:, class_id_idx], dtype=np.int16 - ) - for det_class in detection_classes: - result_matrix[num_classes, det_class] += 1 - return result_matrix + early = _try_early_exit( + result_matrix, filtered, targets, class_id_idx, num_classes + ) + if early is not None: + return early true_classes = np.array(targets[:, class_id_idx], dtype=np.int16) - detection_classes = np.array( - detection_batch_filtered[:, class_id_idx], dtype=np.int16 - ) + detection_classes = np.array(filtered[:, class_id_idx], dtype=np.int16) true_boxes = targets[:, :coords_dim] - detection_boxes = detection_batch_filtered[:, :coords_dim] - - # Calculate IoU matrix - if metric_target == MetricTarget.ORIENTED_BOUNDING_BOXES: - iou_batch = oriented_box_iou_batch( - boxes_true=true_boxes, boxes_detection=detection_boxes - ) - else: - iou_batch = box_iou_batch( - boxes_true=true_boxes, boxes_detection=detection_boxes - ) - - # Find all valid matches (IoU > threshold, regardless of class) - # Use vectorized operations to avoid nested Python loops - iou_mask = iou_batch > iou_threshold - gt_indices, det_indices = np.nonzero(iou_mask) - - # If no pairs exceed the IoU threshold, skip matching - if gt_indices.size == 0: - valid_matches = [] - else: - ious = iou_batch[gt_indices, det_indices] - gt_match_classes = true_classes[gt_indices] - det_match_classes = detection_classes[det_indices] - class_matches = gt_match_classes == det_match_classes - - # Sort matches by class match first (True before False), - # then by IoU descending. - # np.lexsort sorts by the last key first, in ascending order. - # We use ~class_matches so that True becomes 0 - # and False becomes 1 (True first), - # and -ious so that larger IoUs come first. - sort_indices = np.lexsort((-ious, ~class_matches)) - - # Build list of matches in the same format as before: - # (gt_idx, det_idx, iou, class_match) - valid_matches = [ - ( - int(gt_indices[idx]), - int(det_indices[idx]), - float(ious[idx]), - bool(class_matches[idx]), - ) - for idx in sort_indices - ] - # Greedily assign matches, ensuring each GT - # and detection is matched at most once - matched_gt_idx = set() - matched_det_idx = set() - - for gt_idx, det_idx, iou, class_match in valid_matches: - if gt_idx not in matched_gt_idx and det_idx not in matched_det_idx: - # Valid spatial match - record the class prediction - gt_class = true_classes[gt_idx] - det_class = detection_classes[det_idx] - - # This handles both correct classification (TP) and misclassification - result_matrix[gt_class, det_class] += 1 - matched_gt_idx.add(gt_idx) - matched_det_idx.add(det_idx) - - # Count unmatched ground truth as FN - for gt_idx, gt_class in enumerate(true_classes): - if gt_idx not in matched_gt_idx: - result_matrix[gt_class, num_classes] += 1 - - # Count unmatched detections as FP - for det_idx, det_class in enumerate(detection_classes): - if det_idx not in matched_det_idx: - result_matrix[num_classes, det_class] += 1 - + detection_boxes = filtered[:, :coords_dim] + + _fill_confusion_matrix_from_iou( + result_matrix, + true_classes, + detection_classes, + true_boxes, + detection_boxes, + iou_threshold, + num_classes, + metric_target, + ) return result_matrix @staticmethod diff --git a/src/supervision/metrics/f1_score.py b/src/supervision/metrics/f1_score.py index 3404397d26..0ac4e97c85 100644 --- a/src/supervision/metrics/f1_score.py +++ b/src/supervision/metrics/f1_score.py @@ -234,9 +234,6 @@ def _compute( f1_per_class=np.zeros((0, iou_thresholds.shape[0])), iou_thresholds=iou_thresholds, matched_classes=np.array([], dtype=int), - small_objects=None, - medium_objects=None, - large_objects=None, ) concatenated_stats = [np.concatenate(items, 0) for items in zip(*stats)] @@ -251,9 +248,6 @@ def _compute( f1_per_class=f1_per_class, iou_thresholds=iou_thresholds, matched_classes=unique_classes, - small_objects=None, - medium_objects=None, - large_objects=None, ) def _compute_f1_for_classes( @@ -509,6 +503,15 @@ def _filter_predictions_and_targets_by_size( @dataclass +class F1ScoreSizeResults: + """Grouped F1 results split by object size.""" + + small_objects: F1ScoreResult | None = None + medium_objects: F1ScoreResult | None = None + large_objects: F1ScoreResult | None = None + + +@dataclass(init=False) class F1ScoreResult: """ The results of the F1 score metric calculation. @@ -554,10 +557,78 @@ def f1_75(self) -> float: f1_per_class: npt.NDArray[np.float64] iou_thresholds: npt.NDArray[np.float32] matched_classes: npt.NDArray[np.int32] + size_results: F1ScoreSizeResults | None + + def __init__( + self, + metric_target: MetricTarget, + averaging_method: AveragingMethod, + f1_scores: npt.NDArray[np.float64], + f1_per_class: npt.NDArray[np.float64], + iou_thresholds: npt.NDArray[np.float32], + matched_classes: npt.NDArray[np.int32], + size_results: F1ScoreSizeResults | None = None, + small_objects: F1ScoreResult | None = None, + medium_objects: F1ScoreResult | None = None, + large_objects: F1ScoreResult | None = None, + ) -> None: + self.metric_target = metric_target + self.averaging_method = averaging_method + self.f1_scores = f1_scores + self.f1_per_class = f1_per_class + self.iou_thresholds = iou_thresholds + self.matched_classes = matched_classes + + if size_results is not None: + self.size_results = size_results + elif ( + small_objects is not None + or medium_objects is not None + or large_objects is not None + ): + self.size_results = F1ScoreSizeResults( + small_objects=small_objects, + medium_objects=medium_objects, + large_objects=large_objects, + ) + else: + self.size_results = None - small_objects: F1ScoreResult | None - medium_objects: F1ScoreResult | None - large_objects: F1ScoreResult | None + def _ensure_size_results(self) -> F1ScoreSizeResults: + if self.size_results is None: + self.size_results = F1ScoreSizeResults() + + return self.size_results + + @property + def small_objects(self) -> F1ScoreResult | None: + if self.size_results is None: + return None + return self.size_results.small_objects + + @small_objects.setter + def small_objects(self, value: F1ScoreResult | None) -> None: + self._ensure_size_results().small_objects = value + + @property + def medium_objects(self) -> F1ScoreResult | None: + if self.size_results is None: + return None + return self.size_results.medium_objects + + @medium_objects.setter + def medium_objects(self, value: F1ScoreResult | None) -> None: + self._ensure_size_results().medium_objects = value + + @property + def large_objects(self) -> F1ScoreResult | None: + if self.size_results is None: + return None + return self.size_results.large_objects + + @large_objects.setter + def large_objects(self, value: F1ScoreResult | None) -> None: + self._ensure_size_results().large_objects = value def __str__(self) -> str: """ diff --git a/src/supervision/metrics/mean_average_precision.py b/src/supervision/metrics/mean_average_precision.py index 8d598da9c2..d47f8d716a 100644 --- a/src/supervision/metrics/mean_average_precision.py +++ b/src/supervision/metrics/mean_average_precision.py @@ -5,7 +5,7 @@ import itertools from collections import defaultdict from copy import deepcopy -from dataclasses import dataclass +from dataclasses import dataclass, field from enum import Enum from typing import TYPE_CHECKING, Any @@ -27,6 +27,15 @@ @dataclass +class MeanAveragePrecisionSizeResults: + """Mean Average Precision results split by object size.""" + + small_objects: MeanAveragePrecisionResult | None = None + medium_objects: MeanAveragePrecisionResult | None = None + large_objects: MeanAveragePrecisionResult | None = None + + +@dataclass(init=False) class MeanAveragePrecisionResult: """ The result of the Mean Average Precision calculation. @@ -45,16 +54,51 @@ class and IoU threshold. Shape: `(num_target_classes, num_iou_thresholds)` iou_thresholds: the IoU thresholds used in the calculations. matched_classes: the class IDs of all matched classes. Corresponds to the rows of `ap_per_class`. - small_objects: the mAP results - for small objects (area < 32²). - medium_objects: the mAP results - for medium objects (32² ≤ area < 96²). - large_objects: the mAP results - for large objects (area ≥ 96²). + small_objects: the mAP results for small objects (area < 32²). + medium_objects: the mAP results for medium objects (32² ≤ area < 96²). + large_objects: the mAP results for large objects (area ≥ 96²). """ metric_target: MetricTarget is_class_agnostic: bool + mAP_scores: npt.NDArray[np.float64] + ap_per_class: npt.NDArray[np.float64] + iou_thresholds: npt.NDArray[np.float64] + matched_classes: npt.NDArray[np.int32] + _size_results: MeanAveragePrecisionSizeResults | None = field( + default=None, repr=False, compare=False + ) + + def __init__( + self, + metric_target: MetricTarget, + is_class_agnostic: bool, + mAP_scores: npt.NDArray[np.float64], + ap_per_class: npt.NDArray[np.float64], + iou_thresholds: npt.NDArray[np.float64], + matched_classes: npt.NDArray[np.int32], + small_objects: MeanAveragePrecisionResult | None = None, + medium_objects: MeanAveragePrecisionResult | None = None, + large_objects: MeanAveragePrecisionResult | None = None, + ) -> None: + self.metric_target = metric_target + self.is_class_agnostic = is_class_agnostic + self.mAP_scores = mAP_scores + self.ap_per_class = ap_per_class + self.iou_thresholds = iou_thresholds + self.matched_classes = matched_classes + self._size_results = None + + if ( + small_objects is not None + or medium_objects is not None + or large_objects is not None + ): + self._size_results = MeanAveragePrecisionSizeResults( + small_objects=small_objects, + medium_objects=medium_objects, + large_objects=large_objects, + ) @property def map50_95(self) -> float: @@ -75,13 +119,59 @@ def map75(self) -> float: """the mAP score at IoU threshold of `0.75`.""" return float(self.mAP_scores[5]) - mAP_scores: npt.NDArray[np.float64] - ap_per_class: npt.NDArray[np.float64] - iou_thresholds: npt.NDArray[np.float64] - matched_classes: npt.NDArray[np.int32] - small_objects: MeanAveragePrecisionResult | None = None - medium_objects: MeanAveragePrecisionResult | None = None - large_objects: MeanAveragePrecisionResult | None = None + @property + def small_objects(self) -> MeanAveragePrecisionResult | None: + """The mAP results for small objects.""" + if self._size_results is None: + return None + + return self._size_results.small_objects + + @small_objects.setter + def small_objects(self, value: MeanAveragePrecisionResult | None) -> None: + if self._size_results is None and value is None: + return + + if self._size_results is None: + self._size_results = MeanAveragePrecisionSizeResults() + + self._size_results.small_objects = value + + @property + def medium_objects(self) -> MeanAveragePrecisionResult | None: + """The mAP results for medium objects.""" + if self._size_results is None: + return None + + return self._size_results.medium_objects + + @medium_objects.setter + def medium_objects(self, value: MeanAveragePrecisionResult | None) -> None: + if self._size_results is None and value is None: + return + + if self._size_results is None: + self._size_results = MeanAveragePrecisionSizeResults() + + self._size_results.medium_objects = value + + @property + def large_objects(self) -> MeanAveragePrecisionResult | None: + """The mAP results for large objects.""" + if self._size_results is None: + return None + + return self._size_results.large_objects + + @large_objects.setter + def large_objects(self, value: MeanAveragePrecisionResult | None) -> None: + if self._size_results is None and value is None: + return + + if self._size_results is None: + self._size_results = MeanAveragePrecisionSizeResults() + + self._size_results.large_objects = value def __str__(self) -> str: """ @@ -581,6 +671,22 @@ def __init__(self) -> None: ] +@dataclass +class COCOEvaluatorState: + """Mutable state collected during COCO evaluation.""" + + eval_imgs: Any = field(default_factory=lambda: defaultdict(list)) + results: dict[str, Any] = field(default_factory=dict) + targets: defaultdict[tuple[int, int], list[Any]] = field( + default_factory=lambda: defaultdict(list) + ) + predictions: defaultdict[tuple[int, int], list[Any]] = field( + default_factory=lambda: defaultdict(list) + ) + stats: list[Any] = field(default_factory=list) + ious: dict[tuple[int, int], Any] = field(default_factory=dict) + + class COCOEvaluator: """ Evaluator class to compute COCO metrics. @@ -603,25 +709,41 @@ def __init__( self.coco_targets = coco_targets self.coco_predictions = coco_predictions - # List of dictionaries containing the evaluation results - # len(eval_imgs) = (categories) * (area_ranges) * (images) - # For COCO 2017: len(eval_images) = 80 * 4 * 5000 = 1600000 - self.eval_imgs: Any = defaultdict(list) - # Dictionary of accumulated results - self.results: dict[str, Any] = {} - # Dictionary of targets for evaluation - self._targets: defaultdict[tuple[int, int], list[Any]] = defaultdict(list) - self._predictions: defaultdict[tuple[int, int], list[Any]] = defaultdict(list) # Parameters for evaluation self.params = COCOEvaluatorParameters() - # List of results summarization - self.stats: list[Any] = [] - # Dictionary of IOUs between all targets and predictions - self.ious: dict[tuple[int, int], Any] = {} + self._state = COCOEvaluatorState() # Set image and category ids self.params.img_ids = sorted(self.coco_targets.get_image_ids()) self.params.cat_ids = sorted(self.coco_targets.get_category_ids()) + @property + def eval_imgs(self) -> Any: + """Per-image evaluation results.""" + return self._state.eval_imgs + + @property + def results(self) -> dict[str, Any]: + """Accumulated evaluation results.""" + return self._state.results + + @property + def stats(self) -> list[Any]: + """Summary statistics for the evaluation.""" + return self._state.stats + + @property + def ious(self) -> dict[tuple[int, int], Any]: + """Cached IoU values.""" + return self._state.ious + + @property + def _targets(self) -> defaultdict[tuple[int, int], list[Any]]: + return self._state.targets + + @property + def _predictions(self) -> defaultdict[tuple[int, int], list[Any]]: + return self._state.predictions + def _prepare_targets_and_predictions(self) -> None: """ Prepare targets and predictions for evaluation. @@ -643,18 +765,18 @@ def _prepare_targets_and_predictions(self) -> None: gt["ignore"] = "iscrowd" in gt and gt["iscrowd"] # Select targets - self._targets = defaultdict(list) + self._state.targets = defaultdict(list) for gt in targets: - self._targets[gt["image_id"], gt["category_id"]].append(gt) + self._state.targets[gt["image_id"], gt["category_id"]].append(gt) # Select predictions - self._predictions = defaultdict(list) + self._state.predictions = defaultdict(list) for dt in predictions: - self._predictions[dt["image_id"], dt["category_id"]].append(dt) + self._state.predictions[dt["image_id"], dt["category_id"]].append(dt) # Initialize evaluation results - self.eval_imgs = defaultdict(list) - self.results = {} + self._state.eval_imgs = defaultdict(list) + self._state.results = {} def _compute_iou(self, img_id: int, cat_id: int) -> npt.NDArray[np.float32]: """ @@ -669,8 +791,8 @@ def _compute_iou(self, img_id: int, cat_id: int) -> npt.NDArray[np.float32]: The IoU between the targets and predictions. """ - gt = self._targets[img_id, cat_id] - dt = self._predictions[img_id, cat_id] + gt = self._state.targets[img_id, cat_id] + dt = self._state.predictions[img_id, cat_id] # If there is nothing to evaluate if len(gt) == 0 and len(dt) == 0: @@ -716,8 +838,8 @@ def _evaluate_image( The evaluation results. """ # Get targets (gt) and predictions (dt) for the given image and category - gt: list[dict[str, Any]] = self._targets[img_id, cat_id] - dt: list[dict[str, Any]] = self._predictions[img_id, cat_id] + gt: list[dict[str, Any]] = self._state.targets[img_id, cat_id] + dt: list[dict[str, Any]] = self._state.predictions[img_id, cat_id] # If there is nothing to evaluate if len(gt) == 0 and len(dt) == 0: @@ -743,9 +865,9 @@ def _evaluate_image( # Load computed ious for the given image and category ious = ( - self.ious[img_id, cat_id][:, gt_sorted] - if len(self.ious[img_id, cat_id]) > 0 - else self.ious[img_id, cat_id] + self._state.ious[img_id, cat_id][:, gt_sorted] + if len(self._state.ious[img_id, cat_id]) > 0 + else self._state.ious[img_id, cat_id] ) # Get the number of thresholds, ground truths and detections @@ -822,11 +944,19 @@ def _evaluate_image( "dtIgnore": dt_ignore, } - def _accumulate(self) -> None: - """ - Accumulate per image evaluation results and store the result in self.results - """ - # Get the number of thresholds, categories, area ranges, and max detections + def _initialize_accumulation( + self, + ) -> tuple[ + int, + int, + int, + int, + int, + int, + npt.NDArray[np.float32], + npt.NDArray[np.float32], + npt.NDArray[np.float32], + ]: num_iou_thresholds = len(self.params.iou_thrs) num_recall_thresholds = len(self.params.rec_thrs) num_categories = len(self.params.cat_ids) @@ -834,8 +964,6 @@ def _accumulate(self) -> None: num_max_detections = len(self.params.max_dets) num_imgs = len(self.params.img_ids) - # Initialize precision, recall, and scores arrays - # -1 means absent categories precision = -np.ones( ( num_iou_thresholds, @@ -861,7 +989,21 @@ def _accumulate(self) -> None: dtype=np.float32, ) - # Create sets for indexing + return ( + num_iou_thresholds, + num_recall_thresholds, + num_categories, + num_area_ranges, + num_max_detections, + num_imgs, + precision, + recall, + scores, + ) + + def _select_evaluation_indices( + self, + ) -> tuple[list[int], list[int], list[int], list[int]]: set_categories = set(self.params.cat_ids) set_area_ranges: set[tuple[float, ...]] = { tuple(a) for a in self.params.area_range @@ -869,55 +1011,63 @@ def _accumulate(self) -> None: set_max_detections = set(self.params.max_dets) set_image_ids = set(self.params.img_ids) - # Select category indexes to evaluate selected_category_ids = [ n for n, k in enumerate(self.params.cat_ids) if k in set_categories ] - # Select max detections to evaluate selected_max_detections = [ m for m in self.params.max_dets if m in set_max_detections ] - # Select area ranges to evaluate selected_area_ranges_ids = [ idx for idx, area in enumerate(self.params.area_range) if tuple(area) in set_area_ranges ] - # Select image indexes to evaluate image_inds = [ n for n, i in enumerate(self.params.img_ids) if i in set_image_ids ] - # Evaluating at all categories, area ranges, max number of detections, and - # IoU thresholds + return ( + selected_category_ids, + selected_max_detections, + selected_area_ranges_ids, + image_inds, + ) - # Loop through categories + def _compute_raw_metrics( + self, + precision: npt.NDArray[np.float32], + recall: npt.NDArray[np.float32], + scores: npt.NDArray[np.float32], + selected_category_ids: list[int], + selected_max_detections: list[int], + selected_area_ranges_ids: list[int], + image_inds: list[int], + num_area_ranges: int, + num_imgs: int, + num_recall_thresholds: int, + ) -> None: for cat_idx, cat_eval_idx in enumerate(selected_category_ids): cat_offset = cat_eval_idx * num_area_ranges * num_imgs - # Loop through area ranges for area_idx, area_eval_idx in enumerate(selected_area_ranges_ids): area_offset = area_eval_idx * num_imgs - # Loop through max detections for max_det_idx, max_det in enumerate(selected_max_detections): eval_img_data = [ - self.eval_imgs[cat_offset + area_offset + i] for i in image_inds + self._state.eval_imgs[cat_offset + area_offset + i] + for i in image_inds ] eval_img_data = [e for e in eval_img_data if e is not None] - # No image to evaluate if len(eval_img_data) == 0: continue - # Sort detected scores in descending order dt_scores = np.concatenate( [e["dtScores"][0:max_det] for e in eval_img_data] ) inds = np.argsort(-dt_scores, kind="stable") dt_scores_sorted = dt_scores[inds] - # Get matches and ignored matches dt_matches = np.concatenate( [e["dtMatches"][:, 0:max_det] for e in eval_img_data], axis=1 )[:, inds] @@ -925,15 +1075,14 @@ def _accumulate(self) -> None: [e["dtIgnore"][:, 0:max_det] for e in eval_img_data], axis=1 )[:, inds] - # Get ignored ground truth objects - gt_ignored = np.concatenate([e["gtIgnore"] for e in eval_img_data]) + gt_ignored = np.concatenate( + [e["gtIgnore"] for e in eval_img_data] + ) num_non_ignored_gt = np.count_nonzero(gt_ignored == 0) - # No ground truth objects to evaluate if num_non_ignored_gt == 0: continue - # Compute true positives and false positives true_positives = np.logical_and( dt_matches, np.logical_not(dt_ignored) ) @@ -941,30 +1090,26 @@ def _accumulate(self) -> None: np.logical_not(dt_matches), np.logical_not(dt_ignored) ) - tp_sum = np.cumsum(true_positives, axis=1).astype(dtype=np.float32) - fp_sum = np.cumsum(false_positives, axis=1).astype(dtype=np.float32) + tp_sum = np.cumsum(true_positives, axis=1).astype( + dtype=np.float32 + ) + fp_sum = np.cumsum(false_positives, axis=1).astype( + dtype=np.float32 + ) - # Loop through thresholds for iou_thresh_idx, (tp, fp) in enumerate(zip(tp_sum, fp_sum)): tp = np.array(tp) fp = np.array(fp) num_tps = len(tp) - # Recall: TP / Total number of ground truth objects rc = tp / np.float32(num_non_ignored_gt) - # Precision: TP / (FP + TP) pr = (tp / (fp + tp + EPS)).tolist() - # List to compute the precision at each recall threshold precision_at_recall = [0.0] * num_recall_thresholds - # List to compute the score at each recall threshold score_at_recall = [0.0] * num_recall_thresholds - # Set recall to either the final recall value or 0 (when there - # is no TP) recall[iou_thresh_idx, cat_idx, area_idx, max_det_idx] = ( rc[-1] if num_tps else 0 ) - # Loop through precision values for i in range(num_tps - 1, 0, -1): if pr[i] > pr[i - 1]: pr[i - 1] = pr[i] @@ -974,7 +1119,6 @@ def _accumulate(self) -> None: ) recall_inds_list: list[int] = recall_inds.tolist() for ri, pos_idx_value in enumerate(recall_inds_list): - # Ensure pi is within the range of both arrays pos_idx_int: int = int(pos_idx_value) if 0 <= pos_idx_int < len(pr) and 0 <= pos_idx_int < len( dt_scores_sorted @@ -982,16 +1126,34 @@ def _accumulate(self) -> None: precision_at_recall[ri] = pr[pos_idx_int] score_at_recall[ri] = dt_scores_sorted[pos_idx_int] - # Convert precision to numpy array - precision[iou_thresh_idx, :, cat_idx, area_idx, max_det_idx] = ( - np.array(precision_at_recall, dtype=np.float32) - ) - # Convert scores to numpy array - scores[iou_thresh_idx, :, cat_idx, area_idx, max_det_idx] = ( - np.array(score_at_recall, dtype=np.float32) - ) + precision[ + iou_thresh_idx, :, cat_idx, area_idx, max_det_idx + ] = np.array(precision_at_recall, dtype=np.float32) + scores[ + iou_thresh_idx, :, cat_idx, area_idx, max_det_idx + ] = np.array(score_at_recall, dtype=np.float32) + + @staticmethod + def _compute_average_precision( + precision_slice: npt.NDArray[np.float32], + ) -> tuple[npt.NDArray[np.float32], npt.NDArray[np.float32]]: + valid_mask = precision_slice != -1 + valid_precision = np.where(valid_mask, precision_slice, np.float32(0.0)) + + def mean_with_mask( + axis: int | tuple[int, ...], + ) -> npt.NDArray[np.float32]: + sums = valid_precision.sum(axis=axis, dtype=np.float64) + counts = valid_mask.sum(axis=axis) + means = np.divide( + sums, + counts, + out=np.full(sums.shape, -1.0, dtype=np.float64), + where=counts > 0, + ) + return means.astype(np.float32) - self.results = { + self._state.results = { "params": self.params, "counts": [ num_iou_thresholds, @@ -1005,72 +1167,94 @@ def _accumulate(self) -> None: "recall": recall, "scores": scores, } + mAP_scores = mean_with_mask((1, 2)) + ap_per_class = mean_with_mask(1).transpose(1, 0) + return mAP_scores, ap_per_class - # Helper function to compute average precision while handling -1 sentinel values - def compute_average_precision( - precision_slice: npt.NDArray[np.float32], - ) -> tuple[npt.NDArray[np.float32], npt.NDArray[np.float32]]: - """Compute average precision while handling -1 sentinel values.""" - valid_mask = precision_slice != -1 - valid_precision = np.where(valid_mask, precision_slice, np.float32(0.0)) - - def mean_with_mask( - axis: int | tuple[int, ...], - ) -> npt.NDArray[np.float32]: - sums = valid_precision.sum(axis=axis, dtype=np.float64) - counts = valid_mask.sum(axis=axis) - means = np.divide( - sums, - counts, - out=np.full(sums.shape, -1.0, dtype=np.float64), - where=counts > 0, - ) - return means.astype(np.float32) - - mAP_scores = mean_with_mask((1, 2)) - ap_per_class = mean_with_mask(1).transpose(1, 0) - return mAP_scores, ap_per_class - - # Average precision over all sizes, 100 max detections - area_range_idx = list(ObjectSize).index(ObjectSize.ALL) + def _compute_average_precision_by_size( + self, + precision: npt.NDArray[np.float32], + ) -> dict[str, npt.NDArray[np.float32]]: max_100_dets_idx = self.params.max_dets.index(100) - # Average precision [threshold, recall, classes] + + area_range_idx = list(ObjectSize).index(ObjectSize.ALL) average_precision_all_sizes = precision[ :, :, :, area_range_idx, max_100_dets_idx ] - # mAP over thresholds (dimension=num_thresholds) - # Exclude -1 sentinel values when computing mean - mAP_scores_all_sizes, ap_per_class_all_sizes = compute_average_precision( - average_precision_all_sizes + mAP_scores_all_sizes, ap_per_class_all_sizes = ( + self._compute_average_precision(average_precision_all_sizes) ) - # Average precision for SMALL objects and 100 max detections small_area_range_idx = list(ObjectSize).index(ObjectSize.SMALL) average_precision_small = precision[ :, :, :, small_area_range_idx, max_100_dets_idx ] - mAP_scores_small, ap_per_class_small = compute_average_precision( - average_precision_small + mAP_scores_small, ap_per_class_small = ( + self._compute_average_precision(average_precision_small) ) - # Average precision for MEDIUM objects and 100 max detections medium_area_range_idx = list(ObjectSize).index(ObjectSize.MEDIUM) average_precision_medium = precision[ :, :, :, medium_area_range_idx, max_100_dets_idx ] - mAP_scores_medium, ap_per_class_medium = compute_average_precision( - average_precision_medium + mAP_scores_medium, ap_per_class_medium = ( + self._compute_average_precision(average_precision_medium) ) - # Average precision for LARGE objects and 100 max detections large_area_range_idx = list(ObjectSize).index(ObjectSize.LARGE) average_precision_large = precision[ :, :, :, large_area_range_idx, max_100_dets_idx ] - mAP_scores_large, ap_per_class_large = compute_average_precision( - average_precision_large + mAP_scores_large, ap_per_class_large = ( + self._compute_average_precision(average_precision_large) ) + return { + "mAP_scores_all_sizes": mAP_scores_all_sizes, + "ap_per_class_all_sizes": ap_per_class_all_sizes, + "mAP_scores_small": mAP_scores_small, + "ap_per_class_small": ap_per_class_small, + "mAP_scores_medium": mAP_scores_medium, + "ap_per_class_medium": ap_per_class_medium, + "mAP_scores_large": mAP_scores_large, + "ap_per_class_large": ap_per_class_large, + } + + def _accumulate(self) -> None: + ( + num_iou_thresholds, + num_recall_thresholds, + num_categories, + num_area_ranges, + num_max_detections, + num_imgs, + precision, + recall, + scores, + ) = self._initialize_accumulation() + + ( + selected_category_ids, + selected_max_detections, + selected_area_ranges_ids, + image_inds, + ) = self._select_evaluation_indices() + + self._compute_raw_metrics( + precision, + recall, + scores, + selected_category_ids, + selected_max_detections, + selected_area_ranges_ids, + image_inds, + num_area_ranges, + num_imgs, + num_recall_thresholds, + ) + + ap_results = self._compute_average_precision_by_size(precision) + self.results = { "params": self.params, "counts": [ @@ -1084,14 +1268,7 @@ def mean_with_mask( "precision": precision, "recall": recall, "scores": scores, - "mAP_scores_all_sizes": mAP_scores_all_sizes, - "ap_per_class_all_sizes": ap_per_class_all_sizes, - "mAP_scores_small": mAP_scores_small, - "ap_per_class_small": ap_per_class_small, - "mAP_scores_medium": mAP_scores_medium, - "ap_per_class_medium": ap_per_class_medium, - "mAP_scores_large": mAP_scores_large, - "ap_per_class_large": ap_per_class_large, + **ap_results, } def _pycocotools_summarize(self) -> None: @@ -1119,7 +1296,7 @@ def _summarize( if use_ap: # Dimension of precision: # threshold x recall x classes x areas x max detections - s = self.results["precision"] + s = self._state.results["precision"] # IOU if iou_thr is not None: t = np.where(iou_thr == self.params.iou_thrs)[0] @@ -1128,7 +1305,7 @@ def _summarize( else: # Dimension of recall: # threshold x classes x areas x max detections - s = self.results["recall"] + s = self._state.results["recall"] if iou_thr is not None: t = np.where(iou_thr == self.params.iou_thrs)[0] s = s[t] @@ -1186,8 +1363,8 @@ def _summarize_predictions() -> npt.NDArray[np.float32]: ) return stats - if len(self.results) != 0: - self.stats = _summarize_predictions().tolist() + if len(self._state.results) != 0: + self._state.stats = _summarize_predictions().tolist() def evaluate(self) -> None: """ @@ -1202,7 +1379,7 @@ def evaluate(self) -> None: self._prepare_targets_and_predictions() # Compute IOUs between all targets and predictions for all images and categories - self.ious = { + self._state.ious = { (img_id, cat_id): self._compute_iou(img_id, cat_id) for img_id in self.params.img_ids for cat_id in self.params.cat_ids @@ -1212,7 +1389,7 @@ def evaluate(self) -> None: max_det = self.params.max_dets[-1] # Evaluate each image with all categories, area range and max detections - self.eval_imgs = [ + self._state.eval_imgs = [ self._evaluate_image(img_id, cat_id, area_range, max_det) for cat_id in self.params.cat_ids for area_range in self.params.area_range diff --git a/src/supervision/metrics/mean_average_recall.py b/src/supervision/metrics/mean_average_recall.py index 01b80fd5e9..362a55c11d 100644 --- a/src/supervision/metrics/mean_average_recall.py +++ b/src/supervision/metrics/mean_average_recall.py @@ -1,7 +1,7 @@ from __future__ import annotations from copy import deepcopy -from dataclasses import dataclass +from dataclasses import dataclass, field from typing import TYPE_CHECKING, Any, cast import numpy as np @@ -28,7 +28,61 @@ @dataclass -class MeanAverageRecallResult: +class MeanAverageRecallSizeResults: + """Mean Average Recall results split by object size.""" + + small_objects: MeanAverageRecallResult | None = None + medium_objects: MeanAverageRecallResult | None = None + large_objects: MeanAverageRecallResult | None = None + + +class _MeanAverageRecallSizeResultsMixin: + """Shared accessors for nested object-size results.""" + + size_results: MeanAverageRecallSizeResults | None + + def _ensure_size_results(self) -> MeanAverageRecallSizeResults: + if self.size_results is None: + self.size_results = MeanAverageRecallSizeResults() + + return self.size_results + + @property + def small_objects(self) -> MeanAverageRecallResult | None: + if self.size_results is None: + return None + + return self.size_results.small_objects + + @small_objects.setter + def small_objects(self, value: MeanAverageRecallResult | None) -> None: + self._ensure_size_results().small_objects = value + + @property + def medium_objects(self) -> MeanAverageRecallResult | None: + if self.size_results is None: + return None + + return self.size_results.medium_objects + + @medium_objects.setter + def medium_objects(self, value: MeanAverageRecallResult | None) -> None: + self._ensure_size_results().medium_objects = value + + @property + def large_objects(self) -> MeanAverageRecallResult | None: + if self.size_results is None: + return None + + return self.size_results.large_objects + + @large_objects.setter + def large_objects(self, value: MeanAverageRecallResult | None) -> None: + self._ensure_size_results().large_objects = value + + +@dataclass(init=False) +class MeanAverageRecallResult(_MeanAverageRecallSizeResultsMixin): # pylint: disable=too-many-instance-attributes """ The results of the Mean Average Recall metric calculation. @@ -59,6 +113,49 @@ class MeanAverageRecallResult: """ metric_target: MetricTarget + recall_scores: npt.NDArray[np.float64] + recall_per_class: npt.NDArray[np.float64] + max_detections: npt.NDArray[np.int32] + iou_thresholds: npt.NDArray[np.float32] + matched_classes: npt.NDArray[np.int32] + size_results: MeanAverageRecallSizeResults | None = field( + default=None, repr=False, compare=False + ) + + def __init__( + self, + metric_target: MetricTarget, + recall_scores: npt.NDArray[np.float64], + recall_per_class: npt.NDArray[np.float64], + max_detections: npt.NDArray[np.int32], + iou_thresholds: npt.NDArray[np.float32], + matched_classes: npt.NDArray[np.int32], + size_results: MeanAverageRecallSizeResults | None = None, + small_objects: MeanAverageRecallResult | None = None, + medium_objects: MeanAverageRecallResult | None = None, + large_objects: MeanAverageRecallResult | None = None, + ) -> None: + self.metric_target = metric_target + self.recall_scores = recall_scores + self.recall_per_class = recall_per_class + self.max_detections = max_detections + self.iou_thresholds = iou_thresholds + self.matched_classes = matched_classes + + if size_results is not None: + self.size_results = size_results + elif ( + small_objects is not None + or medium_objects is not None + or large_objects is not None + ): + self.size_results = MeanAverageRecallSizeResults( + small_objects=small_objects, + medium_objects=medium_objects, + large_objects=large_objects, + ) + else: + self.size_results = None @property def mAR_at_1(self) -> float: @@ -72,16 +169,6 @@ def mAR_at_10(self) -> float: def mAR_at_100(self) -> float: return float(self.recall_scores[2]) - recall_scores: npt.NDArray[np.float64] - recall_per_class: npt.NDArray[np.float64] - max_detections: npt.NDArray[np.int32] - iou_thresholds: npt.NDArray[np.float32] - matched_classes: npt.NDArray[np.int32] - - small_objects: MeanAverageRecallResult | None - medium_objects: MeanAverageRecallResult | None - large_objects: MeanAverageRecallResult | None - def __str__(self) -> str: """ Format as a pretty string. diff --git a/src/supervision/metrics/precision.py b/src/supervision/metrics/precision.py index 22b73f1308..b393be0a63 100644 --- a/src/supervision/metrics/precision.py +++ b/src/supervision/metrics/precision.py @@ -1,7 +1,7 @@ from __future__ import annotations from copy import deepcopy -from dataclasses import dataclass +from dataclasses import dataclass, field from typing import TYPE_CHECKING, Any import numpy as np @@ -27,6 +27,314 @@ import pandas as pd +@dataclass +class PrecisionSizeResults: + """Precision results split by object size.""" + + small_objects: PrecisionResult | None = None + medium_objects: PrecisionResult | None = None + large_objects: PrecisionResult | None = None + + +@dataclass(init=False) +class PrecisionResult: + """ + The results of the precision metric calculation. + + Defaults to `0` if no detections or targets were provided. + + Attributes: + metric_target: the type of data used for the metric - + boxes, masks or oriented bounding boxes. + averaging_method: the averaging method used to compute the + precision. Determines how the precision is aggregated across classes. + precision_at_50: the precision at IoU threshold of `0.5`. + precision_at_75: the precision at IoU threshold of `0.75`. + precision_scores: the precision scores at each IoU threshold. + Shape: `(num_iou_thresholds,)` + precision_per_class: the precision scores per class and + IoU threshold. Shape: `(num_classes, num_iou_thresholds)` + iou_thresholds: the IoU thresholds used in the calculations. + matched_classes: the class IDs present in either predictions or ground + truth. Corresponds to the rows of `precision_per_class`. Classes + that appear only in predictions (no ground-truth instances) are + included; their per-threshold precision values will be `0.0`. + small_objects: the Precision metric results + for small objects (area < 32²). + medium_objects: the Precision metric results + for medium objects (32² ≤ area < 96²). + large_objects: the Precision metric results + for large objects (area ≥ 96²). + """ + + metric_target: MetricTarget + averaging_method: AveragingMethod + + precision_scores: npt.NDArray[np.float64] + precision_per_class: npt.NDArray[np.float64] + iou_thresholds: npt.NDArray[np.float32] + matched_classes: npt.NDArray[np.int32] + _size_results: PrecisionSizeResults | None = field( + default=None, repr=False, compare=False + ) + + def __init__( + self, + metric_target: MetricTarget, + averaging_method: AveragingMethod, + precision_scores: npt.NDArray[np.float64], + precision_per_class: npt.NDArray[np.float64], + iou_thresholds: npt.NDArray[np.float32], + matched_classes: npt.NDArray[np.int32], + small_objects: PrecisionResult | None = None, + medium_objects: PrecisionResult | None = None, + large_objects: PrecisionResult | None = None, + ) -> None: + self.metric_target = metric_target + self.averaging_method = averaging_method + self.precision_scores = precision_scores + self.precision_per_class = precision_per_class + self.iou_thresholds = iou_thresholds + self.matched_classes = matched_classes + self._size_results = None + + if ( + small_objects is not None + or medium_objects is not None + or large_objects is not None + ): + self._size_results = PrecisionSizeResults( + small_objects=small_objects, + medium_objects=medium_objects, + large_objects=large_objects, + ) + + @property + def precision_at_50(self) -> float: + return float(self.precision_scores[0]) + + @property + def precision_at_75(self) -> float: + return float(self.precision_scores[5]) + + @property + def small_objects(self) -> PrecisionResult | None: + """The precision results for small objects.""" + if self._size_results is None: + return None + + return self._size_results.small_objects + + @small_objects.setter + def small_objects(self, value: PrecisionResult | None) -> None: + if self._size_results is None and value is None: + return + + if self._size_results is None: + self._size_results = PrecisionSizeResults() + + self._size_results.small_objects = value + + @property + def medium_objects(self) -> PrecisionResult | None: + """The precision results for medium objects.""" + if self._size_results is None: + return None + + return self._size_results.medium_objects + + @medium_objects.setter + def medium_objects(self, value: PrecisionResult | None) -> None: + if self._size_results is None and value is None: + return + + if self._size_results is None: + self._size_results = PrecisionSizeResults() + + self._size_results.medium_objects = value + + @property + def large_objects(self) -> PrecisionResult | None: + """The precision results for large objects.""" + if self._size_results is None: + return None + + return self._size_results.large_objects + + @large_objects.setter + def large_objects(self, value: PrecisionResult | None) -> None: + if self._size_results is None and value is None: + return + + if self._size_results is None: + self._size_results = PrecisionSizeResults() + + self._size_results.large_objects = value + + def __str__(self) -> str: + """ + Format as a pretty string. + + Example: + ```pycon + >>> import numpy as np + >>> import supervision as sv + >>> from supervision.metrics import Precision + >>> predictions = sv.Detections( + ... xyxy=np.array([[0, 0, 10, 10]]), + ... class_id=np.array([0]), + ... confidence=np.array([0.9]) + ... ) + >>> targets = sv.Detections( + ... xyxy=np.array([[0, 0, 10, 10]]), + ... class_id=np.array([0]) + ... ) + >>> precision_metric = Precision() + >>> precision_result = precision_metric.update(predictions, targets).compute() + >>> print(precision_result) # doctest: +ELLIPSIS + PrecisionResult: + Metric target: MetricTarget.BOXES + Averaging method: AveragingMethod.WEIGHTED + P @ 50: 1.0000 + P @ 75: 1.0000 + P @ thresh: [1. ... 1.] + IoU thresh: [0.5 0.55 ... 0.95] + Precision per class: + 0: [1. ... 1.] + ... + Medium objects: + PrecisionResult: + Metric target: MetricTarget.BOXES + Averaging method: AveragingMethod.WEIGHTED + P @ 50: 0.0000 + ... + + ``` + """ + out_str = ( + f"{self.__class__.__name__}:\n" + f"Metric target: {self.metric_target}\n" + f"Averaging method: {self.averaging_method}\n" + f"P @ 50: {self.precision_at_50:.4f}\n" + f"P @ 75: {self.precision_at_75:.4f}\n" + f"P @ thresh: {self.precision_scores}\n" + f"IoU thresh: {self.iou_thresholds}\n" + f"Precision per class:\n" + ) + if self.precision_per_class.size == 0: + out_str += " No results\n" + for class_id, precision_of_class in zip( + self.matched_classes, self.precision_per_class + ): + out_str += f" {class_id}: {precision_of_class}\n" + + indent = " " + if self.small_objects is not None: + indented = indent + str(self.small_objects).replace("\n", f"\n{indent}") + out_str += f"\nSmall objects:\n{indented}" + if self.medium_objects is not None: + indented = indent + str(self.medium_objects).replace("\n", f"\n{indent}") + out_str += f"\nMedium objects:\n{indented}" + if self.large_objects is not None: + indented = indent + str(self.large_objects).replace("\n", f"\n{indent}") + out_str += f"\nLarge objects:\n{indented}" + + return out_str + + def to_pandas(self) -> pd.DataFrame: + """ + Convert the result to a pandas DataFrame. + + Returns: + The result as a DataFrame. + """ + ensure_pandas_installed() + import pandas as pd + + pandas_data = { + "P@50": self.precision_at_50, + "P@75": self.precision_at_75, + } + + if self.small_objects is not None: + small_objects_df = self.small_objects.to_pandas() + for key, value in small_objects_df.items(): + pandas_data[f"small_objects_{key}"] = value + if self.medium_objects is not None: + medium_objects_df = self.medium_objects.to_pandas() + for key, value in medium_objects_df.items(): + pandas_data[f"medium_objects_{key}"] = value + if self.large_objects is not None: + large_objects_df = self.large_objects.to_pandas() + for key, value in large_objects_df.items(): + pandas_data[f"large_objects_{key}"] = value + + return pd.DataFrame(pandas_data, index=[0]) + + def plot(self) -> None: + """ + Plot the precision results. + + ![example_plot]( + https://media.roboflow.com/supervision-docs/metrics/precision_plot_example.png + ){ align=center width="800" } + """ + labels = ["Precision@50", "Precision@75"] + values = [self.precision_at_50, self.precision_at_75] + colors = [LEGACY_COLOR_PALETTE[0]] * 2 + + if self.small_objects is not None: + small_objects = self.small_objects + labels += ["Small: P@50", "Small: P@75"] + values += [small_objects.precision_at_50, small_objects.precision_at_75] + colors += [LEGACY_COLOR_PALETTE[3]] * 2 + + if self.medium_objects is not None: + medium_objects = self.medium_objects + labels += ["Medium: P@50", "Medium: P@75"] + values += [medium_objects.precision_at_50, medium_objects.precision_at_75] + colors += [LEGACY_COLOR_PALETTE[2]] * 2 + + if self.large_objects is not None: + large_objects = self.large_objects + labels += ["Large: P@50", "Large: P@75"] + values += [large_objects.precision_at_50, large_objects.precision_at_75] + colors += [LEGACY_COLOR_PALETTE[4]] * 2 + + plt.rcParams["font.family"] = "monospace" + + _, ax = plt.subplots(figsize=(10, 6)) + ax.set_ylim(0, 1) + ax.set_ylabel("Value", fontweight="bold") + title = ( + f"Precision, by Object Size" + f"\n(target: {self.metric_target.value}," + f" averaging: {self.averaging_method.value})" + ) + ax.set_title(title, fontweight="bold") + + x_positions = range(len(labels)) + bars = ax.bar(x_positions, values, color=colors, align="center") + + ax.set_xticks(x_positions) + ax.set_xticklabels(labels, rotation=45, ha="right") + + for bar in bars: + y_value = bar.get_height() + ax.text( + bar.get_x() + bar.get_width() / 2, + y_value + 0.02, + f"{y_value:.2f}", + ha="center", + va="bottom", + ) + + plt.rcParams["font.family"] = "sans-serif" + + plt.tight_layout() + plt.show() + + class Precision(Metric): """ Precision is a metric used to evaluate object detection models. It is the ratio of @@ -516,220 +824,3 @@ def _filter_predictions_and_targets_by_size( ) return new_predictions_list, new_targets_list - -@dataclass -class PrecisionResult: - """ - The results of the precision metric calculation. - - Defaults to `0` if no detections or targets were provided. - - Attributes: - metric_target: the type of data used for the metric - - boxes, masks or oriented bounding boxes. - averaging_method: the averaging method used to compute the - precision. Determines how the precision is aggregated across classes. - precision_at_50: the precision at IoU threshold of `0.5`. - precision_at_75: the precision at IoU threshold of `0.75`. - precision_scores: the precision scores at each IoU threshold. - Shape: `(num_iou_thresholds,)` - precision_per_class: the precision scores per class and - IoU threshold. Shape: `(num_classes, num_iou_thresholds)` - iou_thresholds: the IoU thresholds used in the calculations. - matched_classes: the class IDs present in either predictions or ground - truth. Corresponds to the rows of `precision_per_class`. Classes - that appear only in predictions (no ground-truth instances) are - included; their per-threshold precision values will be `0.0`. - small_objects: the Precision metric results - for small objects (area < 32²). - medium_objects: the Precision metric results - for medium objects (32² ≤ area < 96²). - large_objects: the Precision metric results - for large objects (area ≥ 96²). - """ - - metric_target: MetricTarget - averaging_method: AveragingMethod - - @property - def precision_at_50(self) -> float: - return float(self.precision_scores[0]) - - @property - def precision_at_75(self) -> float: - return float(self.precision_scores[5]) - - precision_scores: npt.NDArray[np.float64] - precision_per_class: npt.NDArray[np.float64] - iou_thresholds: npt.NDArray[np.float32] - matched_classes: npt.NDArray[np.int32] - - small_objects: PrecisionResult | None - medium_objects: PrecisionResult | None - large_objects: PrecisionResult | None - - def __str__(self) -> str: - """ - Format as a pretty string. - - Example: - ```pycon - >>> import numpy as np - >>> import supervision as sv - >>> from supervision.metrics import Precision - >>> predictions = sv.Detections( - ... xyxy=np.array([[0, 0, 10, 10]]), - ... class_id=np.array([0]), - ... confidence=np.array([0.9]) - ... ) - >>> targets = sv.Detections( - ... xyxy=np.array([[0, 0, 10, 10]]), - ... class_id=np.array([0]) - ... ) - >>> precision_metric = Precision() - >>> precision_result = precision_metric.update( - ... predictions, targets - ... ).compute() - >>> print(precision_result) # doctest: +ELLIPSIS - PrecisionResult: - Metric target: MetricTarget.BOXES - Averaging method: AveragingMethod.WEIGHTED - P @ 50: 1.0000 - P @ 75: 1.0000 - P @ thresh: [1. ... 1.] - IoU thresh: [0.5 0.55 ... 0.95] - Precision per class: - 0: [1. ... 1.] - ... - Medium objects: - PrecisionResult: - Metric target: MetricTarget.BOXES - Averaging method: AveragingMethod.WEIGHTED - P @ 50: 0.0000 - ... - - ``` - """ - out_str = ( - f"{self.__class__.__name__}:\n" - f"Metric target: {self.metric_target}\n" - f"Averaging method: {self.averaging_method}\n" - f"P @ 50: {self.precision_at_50:.4f}\n" - f"P @ 75: {self.precision_at_75:.4f}\n" - f"P @ thresh: {self.precision_scores}\n" - f"IoU thresh: {self.iou_thresholds}\n" - f"Precision per class:\n" - ) - if self.precision_per_class.size == 0: - out_str += " No results\n" - for class_id, precision_of_class in zip( - self.matched_classes, self.precision_per_class - ): - out_str += f" {class_id}: {precision_of_class}\n" - - indent = " " - if self.small_objects is not None: - indented = indent + str(self.small_objects).replace("\n", f"\n{indent}") - out_str += f"\nSmall objects:\n{indented}" - if self.medium_objects is not None: - indented = indent + str(self.medium_objects).replace("\n", f"\n{indent}") - out_str += f"\nMedium objects:\n{indented}" - if self.large_objects is not None: - indented = indent + str(self.large_objects).replace("\n", f"\n{indent}") - out_str += f"\nLarge objects:\n{indented}" - - return out_str - - def to_pandas(self) -> pd.DataFrame: - """ - Convert the result to a pandas DataFrame. - - Returns: - The result as a DataFrame. - """ - ensure_pandas_installed() - import pandas as pd - - pandas_data = { - "P@50": self.precision_at_50, - "P@75": self.precision_at_75, - } - - if self.small_objects is not None: - small_objects_df = self.small_objects.to_pandas() - for key, value in small_objects_df.items(): - pandas_data[f"small_objects_{key}"] = value - if self.medium_objects is not None: - medium_objects_df = self.medium_objects.to_pandas() - for key, value in medium_objects_df.items(): - pandas_data[f"medium_objects_{key}"] = value - if self.large_objects is not None: - large_objects_df = self.large_objects.to_pandas() - for key, value in large_objects_df.items(): - pandas_data[f"large_objects_{key}"] = value - - return pd.DataFrame(pandas_data, index=[0]) - - def plot(self) -> None: - """ - Plot the precision results. - - ![example_plot]( - https://media.roboflow.com/supervision-docs/metrics/precision_plot_example.png - ){ align=center width="800" } - """ - - labels = ["Precision@50", "Precision@75"] - values = [self.precision_at_50, self.precision_at_75] - colors = [LEGACY_COLOR_PALETTE[0]] * 2 - - if self.small_objects is not None: - small_objects = self.small_objects - labels += ["Small: P@50", "Small: P@75"] - values += [small_objects.precision_at_50, small_objects.precision_at_75] - colors += [LEGACY_COLOR_PALETTE[3]] * 2 - - if self.medium_objects is not None: - medium_objects = self.medium_objects - labels += ["Medium: P@50", "Medium: P@75"] - values += [medium_objects.precision_at_50, medium_objects.precision_at_75] - colors += [LEGACY_COLOR_PALETTE[2]] * 2 - - if self.large_objects is not None: - large_objects = self.large_objects - labels += ["Large: P@50", "Large: P@75"] - values += [large_objects.precision_at_50, large_objects.precision_at_75] - colors += [LEGACY_COLOR_PALETTE[4]] * 2 - - plt.rcParams["font.family"] = "monospace" - - _, ax = plt.subplots(figsize=(10, 6)) - ax.set_ylim(0, 1) - ax.set_ylabel("Value", fontweight="bold") - title = ( - f"Precision, by Object Size" - f"\n(target: {self.metric_target.value}," - f" averaging: {self.averaging_method.value})" - ) - ax.set_title(title, fontweight="bold") - - x_positions = range(len(labels)) - bars = ax.bar(x_positions, values, color=colors, align="center") - - ax.set_xticks(x_positions) - ax.set_xticklabels(labels, rotation=45, ha="right") - - for bar in bars: - y_value = bar.get_height() - ax.text( - bar.get_x() + bar.get_width() / 2, - y_value + 0.02, - f"{y_value:.2f}", - ha="center", - va="bottom", - ) - - plt.rcParams["font.family"] = "sans-serif" - - plt.tight_layout() - plt.show() diff --git a/src/supervision/metrics/recall.py b/src/supervision/metrics/recall.py index 2d428cbbf5..c787aae72d 100644 --- a/src/supervision/metrics/recall.py +++ b/src/supervision/metrics/recall.py @@ -1,7 +1,7 @@ from __future__ import annotations from copy import deepcopy -from dataclasses import dataclass +from dataclasses import dataclass, field from typing import TYPE_CHECKING, Any import numpy as np @@ -27,6 +27,136 @@ import pandas as pd +@dataclass +class RecallSizeResults: + """Recall results split by object size.""" + + small_objects: RecallResult | None = None + medium_objects: RecallResult | None = None + large_objects: RecallResult | None = None + + +@dataclass(init=False) +class RecallResult: + """ + The results of the recall metric calculation. + + Defaults to `0` if no detections or targets were provided. + + Attributes: + metric_target: the type of data used for the metric - + boxes, masks or oriented bounding boxes. + averaging_method: the averaging method used to compute the + recall. Determines how the recall is aggregated across classes. + recall_at_50: the recall at IoU threshold of `0.5`. + recall_at_75: the recall at IoU threshold of `0.75`. + recall_scores: the recall scores at each IoU threshold. + Shape: `(num_iou_thresholds,)` + recall_per_class: the recall scores per class and IoU threshold. + Shape: `(num_target_classes, num_iou_thresholds)` + iou_thresholds: the IoU thresholds used in the calculations. + matched_classes: the class IDs of all matched classes. + Corresponds to the rows of `recall_per_class`. + small_objects: the Recall metric results + for small objects (area < 32²). + medium_objects: the Recall metric results + for medium objects (32² ≤ area < 96²). + large_objects: the Recall metric results + for large objects (area ≥ 96²). + """ + + metric_target: MetricTarget + averaging_method: AveragingMethod + + @property + def recall_at_50(self) -> float: + return float(self.recall_scores[0]) + + @property + def recall_at_75(self) -> float: + return float(self.recall_scores[5]) + + recall_scores: npt.NDArray[np.float64] + recall_per_class: npt.NDArray[np.float64] + iou_thresholds: npt.NDArray[np.float32] + matched_classes: npt.NDArray[np.int32] + size_results: RecallSizeResults | None = field(default=None, repr=False, compare=False) + + def __init__( + self, + metric_target: MetricTarget, + averaging_method: AveragingMethod, + recall_scores: npt.NDArray[np.float64], + recall_per_class: npt.NDArray[np.float64], + iou_thresholds: npt.NDArray[np.float32], + matched_classes: npt.NDArray[np.int32], + size_results: RecallSizeResults | None = None, + small_objects: RecallResult | None = None, + medium_objects: RecallResult | None = None, + large_objects: RecallResult | None = None, + ) -> None: + self.metric_target = metric_target + self.averaging_method = averaging_method + self.recall_scores = recall_scores + self.recall_per_class = recall_per_class + self.iou_thresholds = iou_thresholds + self.matched_classes = matched_classes + + if size_results is not None: + self.size_results = size_results + elif ( + small_objects is not None + or medium_objects is not None + or large_objects is not None + ): + self.size_results = RecallSizeResults( + small_objects=small_objects, + medium_objects=medium_objects, + large_objects=large_objects, + ) + else: + self.size_results = None + + def _ensure_size_results(self) -> RecallSizeResults: + if self.size_results is None: + self.size_results = RecallSizeResults() + + return self.size_results + + @property + def small_objects(self) -> RecallResult | None: + if self.size_results is None: + return None + + return self.size_results.small_objects + + @small_objects.setter + def small_objects(self, value: RecallResult | None) -> None: + self._ensure_size_results().small_objects = value + + @property + def medium_objects(self) -> RecallResult | None: + if self.size_results is None: + return None + + return self.size_results.medium_objects + + @medium_objects.setter + def medium_objects(self, value: RecallResult | None) -> None: + self._ensure_size_results().medium_objects = value + + @property + def large_objects(self) -> RecallResult | None: + if self.size_results is None: + return None + + return self.size_results.large_objects + + @large_objects.setter + def large_objects(self, value: RecallResult | None) -> None: + self._ensure_size_results().large_objects = value + + class Recall(Metric): """ Recall is a metric used to evaluate object detection models. It is the ratio of @@ -473,57 +603,6 @@ def _filter_predictions_and_targets_by_size( self._filter_detections_by_size(targets, size_category) ) return new_predictions_list, new_targets_list - - -@dataclass -class RecallResult: - """ - The results of the recall metric calculation. - - Defaults to `0` if no detections or targets were provided. - - Attributes: - metric_target: the type of data used for the metric - - boxes, masks or oriented bounding boxes. - averaging_method: the averaging method used to compute the - recall. Determines how the recall is aggregated across classes. - recall_at_50: the recall at IoU threshold of `0.5`. - recall_at_75: the recall at IoU threshold of `0.75`. - recall_scores: the recall scores at each IoU threshold. - Shape: `(num_iou_thresholds,)` - recall_per_class: the recall scores per class and IoU threshold. - Shape: `(num_target_classes, num_iou_thresholds)` - iou_thresholds: the IoU thresholds used in the calculations. - matched_classes: the class IDs of all matched classes. - Corresponds to the rows of `recall_per_class`. - small_objects: the Recall metric results - for small objects (area < 32²). - medium_objects: the Recall metric results - for medium objects (32² ≤ area < 96²). - large_objects: the Recall metric results - for large objects (area ≥ 96²). - """ - - metric_target: MetricTarget - averaging_method: AveragingMethod - - @property - def recall_at_50(self) -> float: - return float(self.recall_scores[0]) - - @property - def recall_at_75(self) -> float: - return float(self.recall_scores[5]) - - recall_scores: npt.NDArray[np.float64] - recall_per_class: npt.NDArray[np.float64] - iou_thresholds: npt.NDArray[np.float32] - matched_classes: npt.NDArray[np.int32] - - small_objects: RecallResult | None - medium_objects: RecallResult | None - large_objects: RecallResult | None - def __str__(self) -> str: """ Format as a pretty string. diff --git a/src/supervision/tracker/byte_tracker/core.py b/src/supervision/tracker/byte_tracker/core.py index 3cf194fc24..e57cbc722f 100644 --- a/src/supervision/tracker/byte_tracker/core.py +++ b/src/supervision/tracker/byte_tracker/core.py @@ -1,5 +1,6 @@ from __future__ import annotations +from dataclasses import dataclass, field from typing import cast import numpy as np @@ -14,6 +15,32 @@ from supervision.tracker.byte_tracker.utils import IdCounter +@dataclass(frozen=True) +class _ByteTrackConfig: + track_activation_threshold: float + minimum_matching_threshold: float + minimum_consecutive_frames: int + max_time_lost: int + det_thresh: float + + +@dataclass +class _ByteTrackResources: + kalman_filter: KalmanFilter = field(default_factory=KalmanFilter) + shared_kalman: KalmanFilter = field(default_factory=KalmanFilter) + internal_id_counter: IdCounter = field(default_factory=IdCounter) + external_id_counter: IdCounter = field(default_factory=lambda: IdCounter(start_id=1)) + + +@dataclass +class _ByteTrackState: + frame_id: int = 0 + tracked_tracks: list[STrack] = field(default_factory=list) + lost_tracks: list[STrack] = field(default_factory=list) + removed_tracks: list[STrack] = field(default_factory=list) + resources: _ByteTrackResources = field(default_factory=_ByteTrackResources) + + @deprecated_class( target=TargetMode.NOTIFY, deprecated_in="0.28.0", @@ -60,25 +87,26 @@ def __init__( minimum_matching_threshold: float = 0.8, frame_rate: float = 30, minimum_consecutive_frames: int = 1, - ): - self.track_activation_threshold = track_activation_threshold - self.minimum_matching_threshold = minimum_matching_threshold - - self.frame_id = 0 - self.det_thresh = self.track_activation_threshold + 0.1 - self.max_time_lost = int(frame_rate / 30.0 * lost_track_buffer) - self.minimum_consecutive_frames = minimum_consecutive_frames - self.kalman_filter = KalmanFilter() - self.shared_kalman = KalmanFilter() - - self.tracked_tracks: list[STrack] = [] - self.lost_tracks: list[STrack] = [] - self.removed_tracks: list[STrack] = [] + ) -> None: + self.config = _ByteTrackConfig( + track_activation_threshold=track_activation_threshold, + minimum_matching_threshold=minimum_matching_threshold, + minimum_consecutive_frames=minimum_consecutive_frames, + max_time_lost=int(frame_rate / 30.0 * lost_track_buffer), + det_thresh=track_activation_threshold + 0.1, + ) # Warning, possible bug: If you also set internal_id to start at 1, # all traces will be connected across objects. - self.internal_id_counter = IdCounter() - self.external_id_counter = IdCounter(start_id=1) + self.state = _ByteTrackState() + + @property + def frame_id(self) -> int: + return self.state.frame_id + + @frame_id.setter + def frame_id(self, value: int) -> None: + self.state.frame_id = value def update_with_detections(self, detections: Detections) -> Detections: """ @@ -163,12 +191,7 @@ def reset(self) -> None: particularly useful when processing multiple videos sequentially, ensuring the tracker starts with a clean state for each new video. """ - self.frame_id = 0 - self.internal_id_counter.reset() - self.external_id_counter.reset() - self.tracked_tracks = [] - self.lost_tracks = [] - self.removed_tracks = [] + self.state = _ByteTrackState() def update_with_tensors(self, tensors: npt.NDArray[np.float32]) -> list[STrack]: """ @@ -180,18 +203,53 @@ def update_with_tensors(self, tensors: npt.NDArray[np.float32]) -> list[STrack]: Returns: Updated tracks. """ - self.frame_id += 1 + self.state.frame_id += 1 activated_starcks = [] refind_stracks = [] lost_stracks = [] removed_stracks = [] + self.frame_id += 1 + + dets, scores_keep, dets_second, scores_second = self._split_by_confidence( + tensors + ) + detections = self._build_stracks(dets, scores_keep) + tracked_stracks, unconfirmed = self._separate_tracks() + + strack_pool = joint_tracks(tracked_stracks, self.lost_tracks) + STrack.multi_predict(strack_pool, self.shared_kalman) + act1, ref1, u_track_first, u_det_first = self._first_association( + strack_pool, detections + ) + act2, ref2, lost2 = self._second_association( + strack_pool, u_track_first, dets_second, scores_second + ) + act3, rem3 = self._unconfirmed_and_init_new( + unconfirmed, u_det_first, detections + ) + rem4 = self._remove_stale_lost_tracks() + + self._update_state( + act1 + act2 + act3, ref1 + ref2, lost2, rem3 + rem4 + ) + + return [t for t in self.tracked_tracks if t.is_activated] + + def _split_by_confidence( + self, tensors: npt.NDArray[np.float32] + ) -> tuple[ + npt.NDArray[np.float32], + npt.NDArray[np.float32], + npt.NDArray[np.float32], + npt.NDArray[np.float32], + ]: scores = tensors[:, 4] bboxes = tensors[:, :4] - remain_inds = scores > self.track_activation_threshold + remain_inds = scores > self.config.track_activation_threshold inds_low = scores > 0.1 - inds_high = scores < self.track_activation_threshold + inds_high = scores < self.config.track_activation_threshold inds_second = np.logical_and(inds_low, inds_high) dets_second = bboxes[inds_second] @@ -205,133 +263,210 @@ def update_with_tensors(self, tensors: npt.NDArray[np.float32]) -> list[STrack]: STrack( STrack.tlbr_to_tlwh(tlbr), score_keep, - self.minimum_consecutive_frames, - self.shared_kalman, - self.internal_id_counter, - self.external_id_counter, + self.config.minimum_consecutive_frames, + self.state.resources.internal_id_counter, + self.state.resources.external_id_counter, ) for (tlbr, score_keep) in zip(dets, scores_keep) ] else: detections = [] + inds_high = scores < self.track_activation_threshold + inds_second = np.logical_and(inds_low, inds_high) - """ Add newly detected tracklets to tracked_stracks""" - unconfirmed = [] - tracked_stracks: list[STrack] = [] + return ( + bboxes[remain_inds], + scores[remain_inds], + bboxes[inds_second], + scores[inds_second], + ) - for track in self.tracked_tracks: + for track in self.state.tracked_tracks: if not track.is_activated: unconfirmed.append(track) else: tracked_stracks.append(track) """ Step 2: First association, with high score detection boxes""" - strack_pool = joint_tracks(tracked_stracks, self.lost_tracks) + strack_pool = joint_tracks(tracked_stracks, self.state.lost_tracks) # Predict the current location with KF - STrack.multi_predict(strack_pool, self.shared_kalman) - dists = matching.iou_distance(strack_pool, detections) + STrack.multi_predict(strack_pool, self.state.resources.shared_kalman) + def _build_stracks( + self, bboxes: npt.NDArray[np.float32], scores: npt.NDArray[np.float32] + ) -> list[STrack]: + if len(bboxes) == 0: + return [] + return [ + STrack( + STrack.tlbr_to_tlwh(tlbr), + score, + self.minimum_consecutive_frames, + self.shared_kalman, + self.internal_id_counter, + self.external_id_counter, + ) + for tlbr, score in zip(bboxes, scores) + ] + def _separate_tracks( + self, + ) -> tuple[list[STrack], list[STrack]]: + unconfirmed = [] + tracked = [] + for track in self.tracked_tracks: + if not track.is_activated: + unconfirmed.append(track) + else: + tracked.append(track) + return tracked, unconfirmed + + def _first_association( + self, strack_pool: list[STrack], detections: list[STrack] + ) -> tuple[ + list[STrack], + list[STrack], + tuple[int, ...], + tuple[int, ...], + ]: + dists = matching.iou_distance(strack_pool, detections) dists = matching.fuse_score(dists, detections) matches, u_track, u_detection = matching.linear_assignment( - dists, thresh=self.minimum_matching_threshold + dists, thresh=self.config.minimum_matching_threshold ) + activated, refind = [], [] for itracked, idet in matches: track = strack_pool[itracked] det = detections[idet] if track.state == TrackState.Tracked: - track.update(detections[idet], self.frame_id) - activated_starcks.append(track) + track.update(detections[idet], self.state.frame_id) + activated.append(track) else: - track.re_activate(det, self.frame_id) - refind_stracks.append(track) + track.re_activate(det, self.state.frame_id) + refind.append(track) + return activated, refind, u_track, u_detection + + def _second_association( + self, + strack_pool: list[STrack], + u_track_first: tuple[int, ...], + dets_second: npt.NDArray[np.float32], + scores_second: npt.NDArray[np.float32], + ) -> tuple[list[STrack], list[STrack], list[STrack]]: + activated, refind, lost = [], [], [] + detections_second = self._build_stracks(dets_second, scores_second) - """ Step 3: Second association, with low score detection boxes""" - # association the untrack to the low score detections - if len(dets_second) > 0: - """Detections""" - detections_second = [ - STrack( - STrack.tlbr_to_tlwh(tlbr), - score_second, - self.minimum_consecutive_frames, - self.shared_kalman, - self.internal_id_counter, - self.external_id_counter, - ) - for (tlbr, score_second) in zip(dets_second, scores_second) - ] - else: - detections_second = [] r_tracked_stracks = [ strack_pool[i] - for i in u_track + for i in u_track_first if strack_pool[i].state == TrackState.Tracked ] + dists = matching.iou_distance(r_tracked_stracks, detections_second) - matches, u_track, _u_detection_second = matching.linear_assignment( - dists, thresh=0.5 - ) + matches, u_track, _ = matching.linear_assignment(dists, thresh=0.5) + for itracked, idet in matches: track = r_tracked_stracks[itracked] det = detections_second[idet] if track.state == TrackState.Tracked: - track.update(det, self.frame_id) - activated_starcks.append(track) + track.update(det, self.state.frame_id) + activated.append(track) else: - track.re_activate(det, self.frame_id) - refind_stracks.append(track) + track.re_activate(det, self.state.frame_id) + refind.append(track) for it in u_track: track = r_tracked_stracks[it] - if not track.state == TrackState.Lost: + if track.state != TrackState.Lost: track.state = TrackState.Lost - lost_stracks.append(track) + lost.append(track) - """Deal with unconfirmed tracks, usually tracks with only one beginning frame""" - detections = [detections[i] for i in u_detection] - dists = matching.iou_distance(unconfirmed, detections) + return activated, refind, lost - dists = matching.fuse_score(dists, detections) - matches, u_unconfirmed, u_detection = matching.linear_assignment( + def _unconfirmed_and_init_new( + self, + unconfirmed: list[STrack], + u_det_first: tuple[int, ...], + detections: list[STrack], + ) -> tuple[list[STrack], list[STrack]]: + if len(u_det_first) > 0: + remaining = [detections[i] for i in u_det_first] + else: + remaining = [] + + dists = matching.iou_distance(unconfirmed, remaining) + dists = matching.fuse_score(dists, remaining) + matches, u_unconfirmed, u_det = matching.linear_assignment( dists, thresh=0.7 ) + + activated, removed = [], [] for itracked, idet in matches: - unconfirmed[itracked].update(detections[idet], self.frame_id) - activated_starcks.append(unconfirmed[itracked]) + unconfirmed[itracked].update(remaining[idet], self.state.frame_id) + activated.append(unconfirmed[itracked]) for it in u_unconfirmed: - track = unconfirmed[it] - track.state = TrackState.Removed - removed_stracks.append(track) - - """ Step 4: Init new stracks""" - for inew in u_detection: - track = detections[inew] - if track.score < self.det_thresh: - continue - track.activate(self.kalman_filter, self.frame_id) - activated_starcks.append(track) - """ Step 5: Update state""" + unconfirmed[it].state = TrackState.Removed + removed.append(unconfirmed[it]) + for inew in u_det: + track = remaining[inew] + if track.score >= self.config.det_thresh: + track.activate(self.state.resources.kalman_filter, self.state.frame_id) + activated.append(track) + + return activated, removed + + def _remove_stale_lost_tracks(self) -> list[STrack]: + removed = [] for track in self.lost_tracks: if self.frame_id - track.frame_id > self.max_time_lost: track.state = TrackState.Removed - removed_stracks.append(track) + removed.append(track) + return removed + self.state.tracked_tracks = [ + t for t in self.state.tracked_tracks if t.state == TrackState.Tracked + ] + self.state.tracked_tracks = joint_tracks( + self.state.tracked_tracks, activated_starcks + ) + self.state.tracked_tracks = joint_tracks( + self.state.tracked_tracks, refind_stracks + ) + self.state.lost_tracks = sub_tracks( + self.state.lost_tracks, self.state.tracked_tracks + ) + self.state.lost_tracks.extend(lost_stracks) + self.state.lost_tracks = sub_tracks( + self.state.lost_tracks, self.state.removed_tracks + ) + self.state.removed_tracks = removed_stracks + self.state.tracked_tracks, self.state.lost_tracks = remove_duplicate_tracks( + self.state.tracked_tracks, self.state.lost_tracks + ) + output_stracks = [ + track for track in self.state.tracked_tracks if track.is_activated + ] + + return output_stracks + def _update_state( + self, + activated: list[STrack], + refind: list[STrack], + lost: list[STrack], + removed: list[STrack], + ) -> None: self.tracked_tracks = [ t for t in self.tracked_tracks if t.state == TrackState.Tracked ] - self.tracked_tracks = joint_tracks(self.tracked_tracks, activated_starcks) - self.tracked_tracks = joint_tracks(self.tracked_tracks, refind_stracks) + self.tracked_tracks = joint_tracks(self.tracked_tracks, activated) + self.tracked_tracks = joint_tracks(self.tracked_tracks, refind) self.lost_tracks = sub_tracks(self.lost_tracks, self.tracked_tracks) - self.lost_tracks.extend(lost_stracks) - self.lost_tracks = sub_tracks(self.lost_tracks, self.removed_tracks) - self.removed_tracks = removed_stracks + self.lost_tracks.extend(lost) + self.lost_tracks = sub_tracks(self.lost_tracks, removed) + self.removed_tracks = removed self.tracked_tracks, self.lost_tracks = remove_duplicate_tracks( self.tracked_tracks, self.lost_tracks ) - output_stracks = [track for track in self.tracked_tracks if track.is_activated] - - return output_stracks def joint_tracks( diff --git a/src/supervision/tracker/byte_tracker/single_object_track.py b/src/supervision/tracker/byte_tracker/single_object_track.py index 26f6bb6831..9a360ee375 100644 --- a/src/supervision/tracker/byte_tracker/single_object_track.py +++ b/src/supervision/tracker/byte_tracker/single_object_track.py @@ -1,5 +1,6 @@ from __future__ import annotations +from dataclasses import dataclass, field from enum import Enum import numpy as np @@ -16,47 +17,148 @@ class TrackState(Enum): Removed = 3 +@dataclass +class _STrackData: + tlwh: npt.NDArray[np.float32] + score: float + minimum_consecutive_frames: int + internal_id_counter: IdCounter + external_id_counter: IdCounter + state: TrackState = TrackState.New + is_activated: bool = False + start_frame: int = 0 + frame_id: int = 0 + kalman_filter: KalmanFilter | None = None + mean: npt.NDArray[np.float32] | None = None + covariance: npt.NDArray[np.float32] | None = None + tracklet_len: int = 0 + internal_track_id: int = field(init=False) + external_track_id: int = field(init=False) + + def __post_init__(self) -> None: + self.tlwh = np.asarray(self.tlwh, dtype=np.float32) + self.internal_track_id = self.internal_id_counter.NO_ID + self.external_track_id = self.external_id_counter.NO_ID + + class STrack: def __init__( self, tlwh: npt.NDArray[np.float32], score: float, minimum_consecutive_frames: int, - shared_kalman: KalmanFilter, internal_id_counter: IdCounter, external_id_counter: IdCounter, ): - self.state = TrackState.New - self.is_activated = False - self.start_frame = 0 - self.frame_id = 0 + self._data = _STrackData( + tlwh=tlwh, + score=score, + minimum_consecutive_frames=minimum_consecutive_frames, + internal_id_counter=internal_id_counter, + external_id_counter=external_id_counter, + ) - self._tlwh = np.asarray(tlwh, dtype=np.float32) - self.kalman_filter: KalmanFilter | None = None - self.shared_kalman = shared_kalman - self.mean: npt.NDArray[np.float32] | None = None - self.covariance: npt.NDArray[np.float32] | None = None - self.is_activated = False + @property + def state(self) -> TrackState: + return self._data.state - self.score: float = score - self.tracklet_len = 0 + @state.setter + def state(self, value: TrackState) -> None: + self._data.state = value - self.minimum_consecutive_frames = minimum_consecutive_frames + @property + def is_activated(self) -> bool: + return self._data.is_activated - self.internal_id_counter = internal_id_counter - self.external_id_counter = external_id_counter - self.internal_track_id = self.internal_id_counter.NO_ID - self.external_track_id = self.external_id_counter.NO_ID + @is_activated.setter + def is_activated(self, value: bool) -> None: + self._data.is_activated = value + + @property + def start_frame(self) -> int: + return self._data.start_frame + + @start_frame.setter + def start_frame(self, value: int) -> None: + self._data.start_frame = value + + @property + def frame_id(self) -> int: + return self._data.frame_id + + @frame_id.setter + def frame_id(self, value: int) -> None: + self._data.frame_id = value + + @property + def kalman_filter(self) -> KalmanFilter | None: + return self._data.kalman_filter + + @kalman_filter.setter + def kalman_filter(self, value: KalmanFilter | None) -> None: + self._data.kalman_filter = value + + @property + def mean(self) -> npt.NDArray[np.float32] | None: + return self._data.mean + + @mean.setter + def mean(self, value: npt.NDArray[np.float32] | None) -> None: + self._data.mean = value + + @property + def covariance(self) -> npt.NDArray[np.float32] | None: + return self._data.covariance + + @covariance.setter + def covariance(self, value: npt.NDArray[np.float32] | None) -> None: + self._data.covariance = value + + @property + def score(self) -> float: + return self._data.score + + @score.setter + def score(self, value: float) -> None: + self._data.score = value + + @property + def tracklet_len(self) -> int: + return self._data.tracklet_len + + @tracklet_len.setter + def tracklet_len(self, value: int) -> None: + self._data.tracklet_len = value + + @property + def minimum_consecutive_frames(self) -> int: + return self._data.minimum_consecutive_frames + + @property + def internal_track_id(self) -> int: + return self._data.internal_track_id + + @internal_track_id.setter + def internal_track_id(self, value: int) -> None: + self._data.internal_track_id = value + + @property + def external_track_id(self) -> int: + return self._data.external_track_id + + @external_track_id.setter + def external_track_id(self, value: int) -> None: + self._data.external_track_id = value def predict(self) -> None: - assert self.mean is not None - assert self.covariance is not None - assert self.kalman_filter is not None - mean_state = self.mean.copy() - if self.state != TrackState.Tracked: + assert self._data.mean is not None + assert self._data.covariance is not None + assert self._data.kalman_filter is not None + mean_state = self._data.mean.copy() + if self._data.state != TrackState.Tracked: mean_state[7] = 0 - self.mean, self.covariance = self.kalman_filter.predict( - mean_state, self.covariance + self._data.mean, self._data.covariance = self._data.kalman_filter.predict( + mean_state, self._data.covariance ) @staticmethod @@ -65,50 +167,50 @@ def multi_predict(stracks: list[STrack], shared_kalman: KalmanFilter) -> None: multi_mean = [] multi_covariance = [] for i, st in enumerate(stracks): - assert st.mean is not None - assert st.covariance is not None - multi_mean.append(st.mean.copy()) - multi_covariance.append(st.covariance) - if st.state != TrackState.Tracked: + assert st._data.mean is not None + assert st._data.covariance is not None + multi_mean.append(st._data.mean.copy()) + multi_covariance.append(st._data.covariance) + if st._data.state != TrackState.Tracked: multi_mean[i][7] = 0 multi_mean, multi_covariance = shared_kalman.multi_predict( np.asarray(multi_mean), np.asarray(multi_covariance) ) for i, (mean, cov) in enumerate(zip(multi_mean, multi_covariance)): - stracks[i].mean = mean - stracks[i].covariance = cov + stracks[i]._data.mean = mean + stracks[i]._data.covariance = cov def activate(self, kalman_filter: KalmanFilter, frame_id: int) -> None: """Start a new tracklet""" - self.kalman_filter = kalman_filter - self.internal_track_id = self.internal_id_counter.new_id() - self.mean, self.covariance = self.kalman_filter.initiate( - self.tlwh_to_xyah(self._tlwh) + self._data.kalman_filter = kalman_filter + self._data.internal_track_id = self._data.internal_id_counter.new_id() + self._data.mean, self._data.covariance = self._data.kalman_filter.initiate( + self.tlwh_to_xyah(self._data.tlwh) ) - self.tracklet_len = 0 - self.state = TrackState.Tracked + self._data.tracklet_len = 0 + self._data.state = TrackState.Tracked if frame_id == 1: - self.is_activated = True - if self.minimum_consecutive_frames == 1: - self.external_track_id = self.external_id_counter.new_id() + self._data.is_activated = True + if self._data.minimum_consecutive_frames == 1: + self._data.external_track_id = self._data.external_id_counter.new_id() - self.frame_id = frame_id - self.start_frame = frame_id + self._data.frame_id = frame_id + self._data.start_frame = frame_id def re_activate(self, new_track: STrack, frame_id: int) -> None: - assert self.kalman_filter is not None - assert self.mean is not None - assert self.covariance is not None - self.mean, self.covariance = self.kalman_filter.update( - self.mean, self.covariance, self.tlwh_to_xyah(new_track.tlwh) + assert self._data.kalman_filter is not None + assert self._data.mean is not None + assert self._data.covariance is not None + self._data.mean, self._data.covariance = self._data.kalman_filter.update( + self._data.mean, self._data.covariance, self.tlwh_to_xyah(new_track.tlwh) ) - self.tracklet_len = 0 - self.state = TrackState.Tracked + self._data.tracklet_len = 0 + self._data.state = TrackState.Tracked - self.frame_id = frame_id - self.score = new_track.score + self._data.frame_id = frame_id + self._data.score = new_track.score def update(self, new_track: STrack, frame_id: int) -> None: """ @@ -118,32 +220,32 @@ def update(self, new_track: STrack, frame_id: int) -> None: new_track: The new track data. frame_id: The current frame ID. """ - assert self.kalman_filter is not None - assert self.mean is not None - assert self.covariance is not None - self.frame_id = frame_id - self.tracklet_len += 1 + assert self._data.kalman_filter is not None + assert self._data.mean is not None + assert self._data.covariance is not None + self._data.frame_id = frame_id + self._data.tracklet_len += 1 new_tlwh = new_track.tlwh - self.mean, self.covariance = self.kalman_filter.update( - self.mean, self.covariance, self.tlwh_to_xyah(new_tlwh) + self._data.mean, self._data.covariance = self._data.kalman_filter.update( + self._data.mean, self._data.covariance, self.tlwh_to_xyah(new_tlwh) ) - self.state = TrackState.Tracked - if self.tracklet_len == self.minimum_consecutive_frames: - self.is_activated = True - if self.external_track_id == self.external_id_counter.NO_ID: - self.external_track_id = self.external_id_counter.new_id() + self._data.state = TrackState.Tracked + if self._data.tracklet_len == self._data.minimum_consecutive_frames: + self._data.is_activated = True + if self._data.external_track_id == self._data.external_id_counter.NO_ID: + self._data.external_track_id = self._data.external_id_counter.new_id() - self.score = new_track.score + self._data.score = new_track.score @property def tlwh(self) -> npt.NDArray[np.float32]: """Get current position in bounding box format `(top left x, top left y, width, height)`. """ - if self.mean is None: - return self._tlwh.copy() - ret = self.mean[:4].copy() + if self._data.mean is None: + return self._data.tlwh.copy() + ret = self._data.mean[:4].copy() ret[2] *= ret[3] ret[:2] -= ret[2:] / 2 return ret @@ -183,4 +285,4 @@ def tlwh_to_tlbr(tlwh: npt.NDArray[np.float32]) -> npt.NDArray[np.float32]: return ret def __repr__(self) -> str: - return f"OT_{self.internal_track_id}_({self.start_frame}-{self.frame_id})" + return f"OT_{self._data.internal_track_id}_({self._data.start_frame}-{self._data.frame_id})" diff --git a/src/supervision/utils/video.py b/src/supervision/utils/video.py index 1d3fe2a464..a2be569c2a 100644 --- a/src/supervision/utils/video.py +++ b/src/supervision/utils/video.py @@ -280,6 +280,147 @@ def get_video_frames_generator( video.release() +class _VideoProcessor: + def __init__( + self, + source_path: str, + target_path: str, + callback: Callable[[npt.NDArray[np.uint8], int], npt.NDArray[np.uint8]], + *, + max_frames: int | None = None, + prefetch: int = 32, + writer_buffer: int = 32, + show_progress: bool = False, + progress_message: str = "Processing video", + preserve_audio: bool = False, + ): + self.source_path = source_path + self.target_path = target_path + self.callback = callback + self.max_frames = max_frames + self.prefetch = prefetch + self.writer_buffer = writer_buffer + self.show_progress = show_progress + self.progress_message = progress_message + self.preserve_audio = preserve_audio + + self.frame_read_queue: Queue[ + tuple[int, npt.NDArray[np.uint8]] | None + ] = Queue(maxsize=prefetch) + self.frame_write_queue: Queue[npt.NDArray[np.uint8] | None] = Queue( + maxsize=writer_buffer + ) + + self.reader_worker: threading.Thread | None = None + self.writer_worker: threading.Thread | None = None + self.progress_bar: tqdm | None = None + self.exception_in_worker: Exception | None = None + self.read_finished = False + + def _reader_thread(self) -> None: + frame_generator = get_video_frames_generator( + source_path=self.source_path, + end=self.max_frames, + ) + for frame_index, frame in enumerate(frame_generator): + self.frame_read_queue.put((frame_index, frame)) + self.frame_read_queue.put(None) + + def _writer_thread(self, video_sink: VideoSink) -> None: + while True: + frame = self.frame_write_queue.get() + if frame is None: + break + video_sink.write_frame(frame=frame) + + def _drain_and_cleanup(self) -> None: + try: + self.frame_write_queue.put(None, timeout=1) + except Full: + pass + if not self.read_finished: + while True: + try: + read_item = self.frame_read_queue.get(timeout=1) + if read_item is None: + break + except Empty: + if not self.reader_worker.is_alive(): + break + continue + self.reader_worker.join(timeout=10) + self.writer_worker.join(timeout=10) + self.progress_bar.close() + if self.exception_in_worker is not None: + raise self.exception_in_worker + + def _mux_audio_if_needed(self) -> None: + if self.writer_worker.is_alive(): + logger.warning( + "Writer thread did not finish in time; skipping audio mux " + "to avoid reading an incomplete output file." + ) + else: + _mux_audio(source_path=self.source_path, video_path=self.target_path) + + def _total_frames(self, video_info: VideoInfo) -> int: + if self.max_frames is not None: + return min(video_info.total_frames or 0, self.max_frames) + return video_info.total_frames or 0 + + def _start_workers(self) -> None: + self.reader_worker.start() + self.writer_worker.start() + + def _setup_progress_bar(self, total_frames: int) -> None: + self.progress_bar = tqdm( + total=total_frames, + disable=not self.show_progress, + desc=self.progress_message, + ) + + def _process_frames(self) -> None: + self.exception_in_worker = None + self.read_finished = False + + while True: + read_item = self.frame_read_queue.get() + if read_item is None: + self.read_finished = True + break + + frame_index, frame = read_item + try: + processed_frame = self.callback(frame, frame_index) + self.frame_write_queue.put(processed_frame) + self.progress_bar.update(1) + except Exception as exc: + self.exception_in_worker = exc + break + + def run(self) -> None: + video_info = VideoInfo.from_video_path(video_path=self.source_path) + total_frames = self._total_frames(video_info) + + self.reader_worker = threading.Thread(target=self._reader_thread, daemon=True) + with VideoSink(target_path=self.target_path, video_info=video_info) as video_sink: + self.writer_worker = threading.Thread( + target=self._writer_thread, + args=(video_sink,), + daemon=True, + ) + + self._start_workers() + self._setup_progress_bar(total_frames) + try: + self._process_frames() + finally: + self._drain_and_cleanup() + + if self.preserve_audio: + self._mux_audio_if_needed() + + def process_video( source_path: str, target_path: str, @@ -352,108 +493,18 @@ def callback(frame, frame_index): ) ``` """ - video_info = VideoInfo.from_video_path(video_path=source_path) - total_frames = ( - min(video_info.total_frames or 0, max_frames) - if max_frames is not None - else video_info.total_frames or 0 - ) - - frame_read_queue: Queue[tuple[int, npt.NDArray[np.uint8]] | None] = Queue( - maxsize=prefetch - ) - frame_write_queue: Queue[npt.NDArray[np.uint8] | None] = Queue( - maxsize=writer_buffer + processor = _VideoProcessor( + source_path=source_path, + target_path=target_path, + callback=callback, + max_frames=max_frames, + prefetch=prefetch, + writer_buffer=writer_buffer, + show_progress=show_progress, + progress_message=progress_message, + preserve_audio=preserve_audio, ) - - def reader_thread() -> None: - frame_generator = get_video_frames_generator( - source_path=source_path, - end=max_frames, - ) - for frame_index, frame in enumerate(frame_generator): - frame_read_queue.put((frame_index, frame)) - frame_read_queue.put(None) - - def writer_thread(video_sink: VideoSink) -> None: - while True: - frame = frame_write_queue.get() - if frame is None: - break - video_sink.write_frame(frame=frame) - - reader_worker = threading.Thread(target=reader_thread, daemon=True) - with VideoSink(target_path=target_path, video_info=video_info) as video_sink: - writer_worker = threading.Thread( - target=writer_thread, - args=(video_sink,), - daemon=True, - ) - - reader_worker.start() - writer_worker.start() - - progress_bar = tqdm( - total=total_frames, - disable=not show_progress, - desc=progress_message, - ) - - exception_in_worker: Exception | None = None - read_finished = False - - try: - while True: - read_item = frame_read_queue.get() - if read_item is None: - read_finished = True - break - - frame_index, frame = read_item - try: - processed_frame = callback(frame, frame_index) - frame_write_queue.put(processed_frame) - progress_bar.update(1) - except Exception as exc: - exception_in_worker = exc - break - finally: - try: - frame_write_queue.put(None, timeout=1) - except Full: - # Queue is full; this is a best-effort attempt to enqueue the sentinel. - # If we cannot enqueue it, the writer thread will still complete based - # on previously queued frames or other shutdown conditions. - pass - if not read_finished: - while True: - # Use timeout to prevent indefinite blocking if reader thread fails - try: - read_item = frame_read_queue.get(timeout=1) - if read_item is None: - break - # If we timeout waiting for a frame, only assume failure if reader - # thread is no longer alive. Otherwise, keep waiting as the reader - # may simply be slow (for example, due to a slow source). - except Empty: - if not reader_worker.is_alive(): - break - # Reader is still alive; continue waiting for frames. - continue - reader_worker.join(timeout=10) - writer_worker.join(timeout=10) - progress_bar.close() - if exception_in_worker is not None: - raise exception_in_worker - - if preserve_audio: - if writer_worker.is_alive(): - logger.warning( - "Writer thread did not finish in time; skipping audio mux " - "to avoid reading an incomplete output file." - ) - else: - _mux_audio(source_path=source_path, video_path=target_path) + processor.run() class FPSMonitor: diff --git a/tests/detection/test_from_sam.py b/tests/detection/test_from_sam.py index 370a135ee5..813861c485 100644 --- a/tests/detection/test_from_sam.py +++ b/tests/detection/test_from_sam.py @@ -1,5 +1,7 @@ from __future__ import annotations +from types import SimpleNamespace + import numpy as np import pytest @@ -78,6 +80,20 @@ ], "time": 0.07825545498053543, } +OBJECT_SAM3_RESULT = SimpleNamespace( + prompt_results=[ + SimpleNamespace( + prompt_index=2, + predictions=[ + SimpleNamespace( + masks=[[[10, 10], [20, 10], [20, 20], [10, 20]]], + confidence=0.75, + format="polygon", + ) + ], + ) + ] +) @pytest.mark.parametrize( @@ -174,10 +190,17 @@ def test_from_sam( np.array([0.00257821], dtype=np.float32), np.array([0], dtype=int), ), + ( + OBJECT_SAM3_RESULT, + (100, 100), + np.array([[10.0, 10.0, 20.0, 20.0]], dtype=np.float32), + np.array([0.75], dtype=np.float32), + np.array([2], dtype=int), + ), ], ) def test_from_sam3( - sam3_result: dict, + sam3_result: dict | SimpleNamespace, resolution_wh: tuple[int, int], expected_xyxy: np.ndarray, expected_confidence: np.ndarray, diff --git a/tests/detection/test_line_counter.py b/tests/detection/test_line_counter.py index 75355a278c..a4bdee5efd 100644 --- a/tests/detection/test_line_counter.py +++ b/tests/detection/test_line_counter.py @@ -1,11 +1,12 @@ from __future__ import annotations from contextlib import ExitStack as DoesNotRaise +from types import SimpleNamespace import numpy as np import pytest -from supervision import LineZone, LineZoneAnnotatorMulticlass +from supervision import LineZone, LineZoneAnnotator, LineZoneAnnotatorMulticlass from supervision.geometry.core import Point, Position, Vector from tests.helpers import _create_detections @@ -882,16 +883,44 @@ def test_line_zone_tracker_id_reuse_with_different_classes( def test_line_zone_annotator_multiclass_supports_none_class_id() -> None: - line_zone = LineZone(start=Point(0, 0), end=Point(0, 10)) - for xyxy in [[4, 4, 6, 6], [-6, 4, -4, 6]]: - detections = _create_detections(xyxy=[xyxy], tracker_id=[0]) - line_zone.trigger(detections) + line_zone = SimpleNamespace( + class_id_to_name={}, + in_count_per_class={}, + out_count_per_class={None: 1}, + ) assert line_zone.out_count_per_class == {None: 1} frame = np.zeros((100, 100, 3), dtype=np.uint8) annotator = LineZoneAnnotatorMulticlass(force_draw_class_ids=False) + assert annotator.table_position == Position.TOP_RIGHT + annotator.table_margin = 12 + assert annotator.table_margin == 12 annotated_frame = annotator.annotate(frame=frame.copy(), line_zones=[line_zone]) assert annotated_frame.shape == frame.shape assert not np.array_equal(annotated_frame, frame) + + +def test_line_zone_annotator_uses_custom_text_configuration() -> None: + """Custom label settings should be preserved and used when annotating.""" + line_zone = SimpleNamespace( + vector=Vector(start=Point(0, 0), end=Point(0, 10)), + in_count=1, + out_count=1, + ) + + annotator = LineZoneAnnotator( + custom_in_text="entrada", + custom_out_text="saida", + display_text_box=False, + text_centered=False, + ) + + frame = np.zeros((100, 100, 3), dtype=np.uint8) + annotated_frame = annotator.annotate(frame=frame.copy(), line_counter=line_zone) + + assert annotated_frame.shape == frame.shape + assert not np.array_equal(annotated_frame, frame) + assert annotator._config.in_text == "entrada" + assert annotator._config.out_text == "saida" diff --git a/tests/detection/test_vlm.py b/tests/detection/test_vlm.py index 7b191d9dfd..7f5fa21d6b 100644 --- a/tests/detection/test_vlm.py +++ b/tests/detection/test_vlm.py @@ -1319,6 +1319,33 @@ def test_from_google_gemini_2_5_malformed_mask_keeps_confidence_aligned(): assert masks.shape == (2, 480, 640) +def test_from_google_gemini_2_5_filters_classes_and_keeps_arrays_aligned(): + """Class filtering must keep confidence and masks aligned with the kept items.""" + result = ( + '[{"box_2d": [10, 10, 100, 100], "label": "cat", ' + '"mask": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAAAAACoWZBhAAAADElEQVR4nGNgoCcAAABuAAFIXXpjAAAAAElFTkSuQmCC", ' + '"confidence": 0.8}, ' + '{"box_2d": [20, 20, 120, 120], "label": "dog", ' + '"mask": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAAAAACoWZBhAAAADElEQVR4nGNgoCcAAABuAAFIXXpjAAAAAElFTkSuQmCC", ' + '"confidence": 0.9}]' + ) + + xyxy, class_id, class_name, confidence, masks = from_google_gemini_2_5( + result=result, + resolution_wh=(640, 480), + classes=["dog"], + ) + + assert xyxy.shape == (1, 4) + assert np.allclose(xyxy, np.array([[12.8, 9.6, 76.8, 57.6]])) + assert np.array_equal(class_id, np.array([0])) + assert np.array_equal(class_name, np.array(["dog"])) + assert confidence is not None + assert np.allclose(confidence, np.array([0.9])) + assert masks is not None + assert masks.shape == (1, 480, 640) + + @pytest.mark.parametrize( ("parser", "result"), [ diff --git a/tests/detection/tools/test_inference_slicer.py b/tests/detection/tools/test_inference_slicer.py index e0b55393fc..d5c32df0f0 100644 --- a/tests/detection/tools/test_inference_slicer.py +++ b/tests/detection/tools/test_inference_slicer.py @@ -9,7 +9,7 @@ from supervision.config import ORIENTED_BOX_COORDINATES from supervision.detection.core import Detections from supervision.detection.tools.inference_slicer import InferenceSlicer -from supervision.detection.utils.iou_and_nms import OverlapFilter +from supervision.detection.utils.iou_and_nms import OverlapFilter, OverlapMetric from supervision.utils.internal import SupervisionWarnings @@ -23,6 +23,39 @@ def callback(_: np.ndarray) -> Detections: return callback +def test_inference_slicer_configuration_properties() -> None: + """Test that public configuration properties remain accessible and mutable.""" + + def callback(_: np.ndarray) -> Detections: + return Detections(xyxy=np.array([[0, 0, 10, 10]])) + + slicer = InferenceSlicer( + callback=callback, + slice_wh=64, + overlap_wh=0, + overlap_filter=OverlapFilter.NONE, + iou_threshold=0.25, + overlap_metric=OverlapMetric.IOU, + thread_workers=2, + compact_masks=True, + ) + + assert slicer.callback is callback + assert slicer.slice_wh == (64, 64) + assert slicer.overlap_wh == (0, 0) + assert slicer.overlap_filter == OverlapFilter.NONE + assert slicer.overlap_metric == OverlapMetric.IOU + assert slicer.iou_threshold == 0.25 + assert slicer.thread_workers == 2 + assert slicer.compact_masks is True + + slicer.thread_workers = 3 + slicer.overlap_filter = OverlapFilter.NON_MAX_MERGE + + assert slicer.thread_workers == 3 + assert slicer.overlap_filter == OverlapFilter.NON_MAX_MERGE + + @pytest.mark.parametrize( ("resolution_wh", "slice_wh", "overlap_wh", "expected_offsets"), [ diff --git a/tests/metrics/test_f1_score.py b/tests/metrics/test_f1_score.py index b6080664df..9cd98e4bdc 100644 --- a/tests/metrics/test_f1_score.py +++ b/tests/metrics/test_f1_score.py @@ -3,7 +3,7 @@ from supervision.detection.core import Detections from supervision.metrics.core import AveragingMethod, MetricTarget -from supervision.metrics.f1_score import F1Score +from supervision.metrics.f1_score import F1Score, F1ScoreResult from tests.helpers import assert_almost_equal @@ -53,6 +53,34 @@ def test_initialization_custom(self): assert metric._metric_target == MetricTarget.MASKS assert metric.averaging_method == AveragingMethod.MACRO + def test_size_specific_results_are_grouped_compatibly(self): + """Test that size-specific subresults stay accessible via properties.""" + nested_result = F1ScoreResult( + metric_target=MetricTarget.BOXES, + averaging_method=AveragingMethod.WEIGHTED, + f1_scores=np.zeros(10, dtype=np.float64), + f1_per_class=np.zeros((0, 10), dtype=np.float64), + iou_thresholds=np.linspace(0.5, 0.95, 10).astype(np.float32), + matched_classes=np.array([], dtype=np.int32), + ) + + result = F1ScoreResult( + metric_target=MetricTarget.BOXES, + averaging_method=AveragingMethod.WEIGHTED, + f1_scores=np.zeros(10, dtype=np.float64), + f1_per_class=np.zeros((0, 10), dtype=np.float64), + iou_thresholds=np.linspace(0.5, 0.95, 10).astype(np.float32), + matched_classes=np.array([], dtype=np.int32), + small_objects=nested_result, + ) + + assert result.small_objects is nested_result + assert result.medium_objects is None + + result.medium_objects = nested_result + assert result.medium_objects is nested_result + assert result.size_results is not None + def test_reset(self, dummy_prediction): """Test that reset() clears all stored data""" metric = F1Score() diff --git a/tests/metrics/test_mean_average_precision.py b/tests/metrics/test_mean_average_precision.py index 6b072de2bd..3565a8d420 100644 --- a/tests/metrics/test_mean_average_precision.py +++ b/tests/metrics/test_mean_average_precision.py @@ -3,10 +3,41 @@ from supervision.config import ORIENTED_BOX_COORDINATES from supervision.detection.core import Detections from supervision.metrics.core import MetricTarget -from supervision.metrics.mean_average_precision import MeanAveragePrecision +from supervision.metrics.mean_average_precision import ( + MeanAveragePrecision, + MeanAveragePrecisionResult, +) class TestMeanAveragePrecision: + def test_result_preserves_size_specific_accessors(self): + """Test that size-specific results remain accessible.""" + nested = MeanAveragePrecisionResult( + metric_target=MetricTarget.BOXES, + is_class_agnostic=False, + mAP_scores=np.array([0.1], dtype=np.float64), + ap_per_class=np.array([[0.1]], dtype=np.float64), + iou_thresholds=np.array([0.5], dtype=np.float64), + matched_classes=np.array([0], dtype=np.int32), + ) + result = MeanAveragePrecisionResult( + metric_target=MetricTarget.BOXES, + is_class_agnostic=False, + mAP_scores=np.array([0.2], dtype=np.float64), + ap_per_class=np.array([[0.2]], dtype=np.float64), + iou_thresholds=np.array([0.5], dtype=np.float64), + matched_classes=np.array([0], dtype=np.int32), + small_objects=nested, + ) + + assert result.small_objects is nested + assert result.medium_objects is None + assert result.large_objects is None + + result.medium_objects = nested + + assert result.medium_objects is nested + def test_single_perfect_detection(self, detections_50_50, targets_50_50): """Test that single perfect detection gets 1.0 mAP (not 0.0 due to ID=0 bug)""" metric = MeanAveragePrecision() diff --git a/tests/metrics/test_mean_average_recall.py b/tests/metrics/test_mean_average_recall.py index ab36e70b66..76028bbd15 100644 --- a/tests/metrics/test_mean_average_recall.py +++ b/tests/metrics/test_mean_average_recall.py @@ -3,6 +3,7 @@ from supervision.detection.core import Detections from supervision.metrics import MeanAverageRecall, MetricTarget +from supervision.metrics.mean_average_recall import MeanAverageRecallResult @pytest.fixture @@ -359,6 +360,34 @@ def three_class_single_image_detections(): return predictions, targets +def test_mean_average_recall_result_preserves_size_subresults() -> None: + """MeanAverageRecallResult exposes size subresults via properties.""" + nested_result = MeanAverageRecallResult( + metric_target=MetricTarget.BOXES, + recall_scores=np.zeros(3, dtype=np.float64), + recall_per_class=np.zeros((0, 10), dtype=np.float64), + max_detections=np.array([1, 10, 100], dtype=np.int32), + iou_thresholds=np.linspace(0.5, 0.95, 10, dtype=np.float32), + matched_classes=np.array([], dtype=np.int32), + ) + result = MeanAverageRecallResult( + metric_target=MetricTarget.BOXES, + recall_scores=np.array([0.1, 0.2, 0.3], dtype=np.float64), + recall_per_class=np.zeros((1, 10), dtype=np.float64), + max_detections=np.array([1, 10, 100], dtype=np.int32), + iou_thresholds=np.linspace(0.5, 0.95, 10, dtype=np.float32), + matched_classes=np.array([0], dtype=np.int32), + small_objects=nested_result, + ) + + assert result.small_objects is nested_result + assert result.medium_objects is None + assert result.large_objects is None + + result.medium_objects = nested_result + assert result.medium_objects is nested_result + + def test_single_perfect_detection(): """Test that a single perfect detection yields 1.0 recall.""" detections = Detections( diff --git a/tests/metrics/test_precision.py b/tests/metrics/test_precision.py index b835f49f8e..d8235010c2 100644 --- a/tests/metrics/test_precision.py +++ b/tests/metrics/test_precision.py @@ -3,10 +3,38 @@ from supervision.detection.core import Detections from supervision.metrics.core import AveragingMethod, MetricTarget -from supervision.metrics.precision import Precision +from supervision.metrics.precision import Precision, PrecisionResult class TestPrecision: + def test_result_preserves_size_specific_accessors(self): + """Test that size-specific precision results remain accessible.""" + nested = PrecisionResult( + metric_target=MetricTarget.BOXES, + averaging_method=AveragingMethod.WEIGHTED, + precision_scores=np.array([0.1], dtype=np.float64), + precision_per_class=np.array([[0.1]], dtype=np.float64), + iou_thresholds=np.array([0.5], dtype=np.float32), + matched_classes=np.array([0], dtype=np.int32), + ) + result = PrecisionResult( + metric_target=MetricTarget.BOXES, + averaging_method=AveragingMethod.WEIGHTED, + precision_scores=np.array([0.2], dtype=np.float64), + precision_per_class=np.array([[0.2]], dtype=np.float64), + iou_thresholds=np.array([0.5], dtype=np.float32), + matched_classes=np.array([0], dtype=np.int32), + small_objects=nested, + ) + + assert result.small_objects is nested + assert result.medium_objects is None + assert result.large_objects is None + + result.medium_objects = nested + + assert result.medium_objects is nested + @pytest.fixture def predictions_multiple_classes(self): return Detections( diff --git a/tests/metrics/test_recall.py b/tests/metrics/test_recall.py index 4772ee3aa0..6f9218eacd 100644 --- a/tests/metrics/test_recall.py +++ b/tests/metrics/test_recall.py @@ -3,11 +3,41 @@ from supervision.detection.core import Detections from supervision.metrics.core import AveragingMethod, MetricTarget -from supervision.metrics.recall import Recall +from supervision.metrics.recall import Recall, RecallResult from tests.helpers import assert_almost_equal class TestRecall: + def test_result_preserves_size_specific_accessors(self) -> None: + """RecallResult keeps size-specific subresults accessible.""" + nested = RecallResult( + metric_target=MetricTarget.BOXES, + averaging_method=AveragingMethod.WEIGHTED, + recall_scores=np.zeros(10, dtype=np.float64), + recall_per_class=np.zeros((0, 10), dtype=np.float64), + iou_thresholds=np.linspace(0.5, 0.95, 10, dtype=np.float32), + matched_classes=np.array([], dtype=np.int32), + ) + + result = RecallResult( + metric_target=MetricTarget.BOXES, + averaging_method=AveragingMethod.WEIGHTED, + recall_scores=np.zeros(10, dtype=np.float64), + recall_per_class=np.zeros((0, 10), dtype=np.float64), + iou_thresholds=np.linspace(0.5, 0.95, 10, dtype=np.float32), + matched_classes=np.array([], dtype=np.int32), + small_objects=nested, + ) + + assert result.small_objects is nested + assert result.medium_objects is None + assert result.large_objects is None + + result.medium_objects = nested + + assert result.medium_objects is nested + assert result.size_results is not None + @pytest.fixture def predictions_multiple_classes(self): return Detections(